Uploaded image for project: 'genius'
  1. genius
  2. GENIUS-236

Excessive toString in OvsdbNodeListener.getOvsdbTepInfo()

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Medium Medium
    • Oxygen-SR4
    • Oxygen-SR3
    • ITM
    • None

      I'm looking at a Java Flight Recording obtained from (internal) scale lab testing, and see extensive "TLAB Allocations" due to what appears to be a clear mistake causing excessive toString() usage in ITM's OvsdbNodeListener.getOvsdbTepInfo():

      char[] java.util.Arrays.copyOf(char[], int)	321
      void java.lang.AbstractStringBuilder.ensureCapacityInternal(int)	321
      AbstractStringBuilder java.lang.AbstractStringBuilder.append(boolean)	243
      StringBuilder java.lang.StringBuilder.append(boolean)	243
      String org.opendaylight.genius.itm.commons.OvsdbTepInfo.toString()	243
      OvsdbTepInfo org.opendaylight.genius.itm.listeners.OvsdbNodeListener.getOvsdbTepInfo(OvsdbNodeAugmentation)	243
      void org.opendaylight.genius.itm.listeners.OvsdbNodeListener.update(Node, Node)	243
      void org.opendaylight.genius.itm.listeners.OvsdbNodeListener.update(DataObject, DataObject)	243
      void org.opendaylight.serviceutils.tools.mdsal.listener.DataTreeChangeListenerActions.update(InstanceIdentifier, DataObject, DataObject)	243
      void org.opendaylight.serviceutils.tools.mdsal.listener.DataTreeChangeListenerActions.onDataTreeChanged(Collection, DataStoreMetrics)	243
      void org.opendaylight.serviceutils.tools.mdsal.listener.AbstractSyncDataTreeChangeListener.onDataTreeChanged(Collection)	243
      void org.opendaylight.controller.md.sal.binding.impl.BindingDOMDataTreeChangeListenerAdapter.onDataTreeChanged(Collection)	243
      void org.opendaylight.controller.cluster.datastore.DataTreeChangeListenerActor.dataChanged(DataTreeChanged)	243
      void org.opendaylight.controller.cluster.datastore.DataTreeChangeListenerActor.handleReceive(Object)	243
      void org.opendaylight.controller.cluster.common.actor.AbstractUntypedActor.onReceive(Object)	243
      Object akka.actor.UntypedActor$$anonfun$receive$1.applyOrElse(Object, Function1)	243
      void akka.actor.Actor.aroundReceive(PartialFunction, Object)	243
      void akka.actor.Actor.aroundReceive$(Actor, PartialFunction, Object)	243
      void akka.actor.UntypedActor.aroundReceive(PartialFunction, Object)	243
      void akka.actor.ActorCell.receiveMessage(Object)	243
      void akka.actor.ActorCell.invoke(Envelope)	243
      void akka.dispatch.Mailbox.processMailbox(int, long)	243
      void akka.dispatch.Mailbox.run()	243
      boolean akka.dispatch.Mailbox.exec()	243
      int akka.dispatch.forkjoin.ForkJoinTask.doExec()	243
      void akka.dispatch.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinTask)	243
      void akka.dispatch.forkjoin.ForkJoinPool.runWorker(ForkJoinPool$WorkQueue)	243
      void akka.dispatch.forkjoin.ForkJoinWorkerThread.run()	243

            tarun.t@altencalsoftlabs.com TARUN THAKUR
            vorburger Michael Vorburger
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: