[INTTEST-22] Use a different prefix for new producer in scenarios when the previos producer is not certainly aborted Created: 29/May/17  Updated: 19/Oct/17  Resolved: 07/Jun/17

Status: Resolved
Project: integration-test
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug
Reporter: Vratko Polak Assignee: Unassigned
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All



 Description   

We have a scenario with 3 producers, we isolate one of them for a long time (expecting it to abort on RequestTimeout) and then creating another producer to prove mdsal still works.

But recently (in a Sandbox run which failed to archive logs) I have seen [0] the error below. If the isolated producer is still alive, the suite would detect that anyway. Using different prefix will avoid having to parse the new error.

h3>Caused by:</h3><pre>java.lang.IllegalArgumentException: Subtree DOMDataTreeIdentifier{datastore=CONFIGURATION, root=/(tag:opendaylight.org,2017:controller:yang:lowlevel:target?revision=2017-02-15)id-ints/id-int/id-int[

{(tag:opendaylight.org,2017:controller:yang:lowlevel:target?revision=2017-02-15)id=prefix-1}

]} is attached to producer org.opendaylight.mdsal.dom.broker.ShardedDOMDataTreeProducer@945995f at com.google.common.base.Preconditions.checkArgument(Preconditions.java:145) at org.opendaylight.mdsal.dom.broker.ShardedDOMDataTree.createProducer(ShardedDOMDataTree.java:144) at org.opendaylight.controller.cluster.sharding.DistributedShardedDOMDataTree.localCreateProducer(DistributedShardedDOMDataTree.java:473) at org.opendaylight.controller.cluster.sharding.ShardedDataTreeActor.onNotifyProducerCreated(ShardedDataTreeActor.java:264) at org.opendaylight.controller.cluster.sharding.ShardedDataTreeActor.handleCommand(ShardedDataTreeActor.java:151) at org.opendaylight.controller.cluster.common.actor.AbstractUntypedPersistentActor.onReceiveCommand(AbstractUntypedPersistentActor.java:31) at akka.persistence.UntypedPersistentActor.onReceive(PersistentActor.scala:170) at akka.actor.UntypedActor$$anonfun$receive$1.applyOrElse(UntypedActor.scala:165) at akka.actor.Actor$class.aroundReceive(Actor.scala:497) at akka.persistence.UntypedPersistentActor.akka$persistence$Eventsourced$$super$aroundReceive(PersistentActor.scala:168) at akka.persistence.Eventsourced$$anon$1.stateReceive(Eventsourced.scala:664) at akka.persistence.Eventsourced$class.aroundReceive(Eventsourced.scala:183) at akka.persistence.UntypedPersistentActor.aroundReceive(PersistentActor.scala:168) at akka.actor.ActorCell.receiveMessage(ActorCell.scala:526) at akka.actor.ActorCell.invoke(ActorCell.scala:495) at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:257) at akka.dispatch.Mailbox.run(Mailbox.scala:224) at akka.dispatch.Mailbox.exec(Mailbox.scala:234) at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260) at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339) at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979) at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)

[0] https://jenkins.opendaylight.org/sandbox/job/controller-csit-3node-clustering-only-carbon/6/robot/report/log.html#s1-s12-t3-k2-k25-k1-k8



 Comments   
Comment by Vratko Polak [ 05/Jun/17 ]

To be clear, by "different prefix" I mean different id, which means changing suites both for module-based shards and suite-based shards.

Comment by Peter Gubka [ 05/Jun/17 ]

https://git.opendaylight.org/gerrit/58244

Generated at Wed Feb 07 20:04:21 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.