[CONTROLLER-1291] Clustering : NPE in doTrimLog Created: 05/May/15  Updated: 02/Jun/15  Resolved: 02/Jun/15

Status: Resolved
Project: controller
Component/s: mdsal
Affects Version/s: Post-Helium
Fix Version/s: None

Type: Bug
Reporter: Moiz Raja Assignee: Kamal Rameshan
Resolution: Cannot Reproduce Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Text File karaf.log    
External issue ID: 3127

 Description   

2015-05-05 10:55:35,299 | WARN | lt-dispatcher-44 | ShardManager | 182 - org.opendaylight.controller.sal-distributed-datastore - 1.2.0.SNAPSHOT | Supervisor Strategy caught unexpected exception - resuming
java.lang.NullPointerException
at org.opendaylight.controller.cluster.raft.SnapshotManager$AbstractSnapshotState.doTrimLog(SnapshotManager.java:154)[175:org.opendaylight.controller.sal-akka-raft:1.2.0.SNAPSHOT]
at org.opendaylight.controller.cluster.raft.SnapshotManager$Idle.trimLog(SnapshotManager.java:234)[175:org.opendaylight.controller.sal-akka-raft:1.2.0.SNAPSHOT]
at org.opendaylight.controller.cluster.raft.SnapshotManager.trimLog(SnapshotManager.java:78)[175:org.opendaylight.controller.sal-akka-raft:1.2.0.SNAPSHOT]
at org.opendaylight.controller.cluster.raft.RaftActor$1.apply(RaftActor.java:361)[175:org.opendaylight.controller.sal-akka-raft:1.2.0.SNAPSHOT]
at org.opendaylight.controller.cluster.raft.RaftActor$1.apply(RaftActor.java:346)[175:org.opendaylight.controller.sal-akka-raft:1.2.0.SNAPSHOT]
at org.opendaylight.controller.cluster.raft.ReplicatedLogImpl$2.apply(ReplicatedLogImpl.java:120)[175:org.opendaylight.controller.sal-akka-raft:1.2.0.SNAPSHOT]
at org.opendaylight.controller.cluster.raft.ReplicatedLogImpl$2.apply(ReplicatedLogImpl.java:81)[175:org.opendaylight.controller.sal-akka-raft:1.2.0.SNAPSHOT]
at akka.persistence.UntypedPersistentActor$$anonfun$persist$2.apply(Eventsourced.scala:462)[172:com.typesafe.akka.persistence.experimental:2.3.10]
at akka.persistence.UntypedPersistentActor$$anonfun$persist$2.apply(Eventsourced.scala:462)[172:com.typesafe.akka.persistence.experimental:2.3.10]
at akka.persistence.Eventsourced$$anon$3$$anonfun$aroundReceive$3.apply(Eventsourced.scala:122)[172:com.typesafe.akka.persistence.experimental:2.3.10]
at akka.persistence.Eventsourced$$anon$3$$anonfun$aroundReceive$3.apply(Eventsourced.scala:122)[172:com.typesafe.akka.persistence.experimental:2.3.10]
at akka.persistence.Recovery$class.withCurrentPersistent(Recovery.scala:185)[172:com.typesafe.akka.persistence.experimental:2.3.10]
at akka.persistence.UntypedPersistentActor.withCurrentPersistent(Eventsourced.scala:428)[172:com.typesafe.akka.persistence.experimental:2.3.10]
at akka.persistence.Eventsourced$$anon$3.aroundReceive(Eventsourced.scala:122)[172:com.typesafe.akka.persistence.experimental:2.3.10]
at akka.persistence.Eventsourced$class.aroundReceive(Eventsourced.scala:369)[172:com.typesafe.akka.persistence.experimental:2.3.10]
at akka.persistence.UntypedPersistentActor.aroundReceive(Eventsourced.scala:428)[172:com.typesafe.akka.persistence.experimental:2.3.10]
at akka.actor.ActorCell.receiveMessage(ActorCell.scala:516)[167:com.typesafe.akka.actor:2.3.10]
at akka.actor.ActorCell.invoke(ActorCell.scala:487)[167:com.typesafe.akka.actor:2.3.10]
at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:254)[167:com.typesafe.akka.actor:2.3.10]
at akka.dispatch.Mailbox.run(Mailbox.scala:221)[167:com.typesafe.akka.actor:2.3.10]
at akka.dispatch.Mailbox.exec(Mailbox.scala:231)[167:com.typesafe.akka.actor:2.3.10]
at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)[164:org.scala-lang.scala-library:2.10.4.v20140209-180020-VFINAL-b66a39653b]
at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.pollAndExecAll(ForkJoinPool.java:1253)[164:org.scala-lang.scala-library:2.10.4.v20140209-180020-VFINAL-b66a39653b]
at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1346)[164:org.scala-lang.scala-library:2.10.4.v20140209-180020-VFINAL-b66a39653b]
at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)[164:org.scala-lang.scala-library:2.10.4.v20140209-180020-VFINAL-b66a39653b]
at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)[164:org.scala-lang.scala-library:2.10.4.v20140209-180020-VFINAL-b66a39653b]

Steps to reproduce
1. Create an OFP distribution on master
2. Start the controller install odl-openflowplugin-all
3. Connect mininet - sudo mn --controller=remote,ip=<host> --topo tree,3
4. Run config flow blaster a couple of times
./flow_config_blaster.py --auth --threads 5 --flows 5000 --no-delete
5. Stop controller (non-graceful Ctrl+C)
6. Stop mininet
7. Start the controller
8. Connect mininet



 Comments   
Comment by Moiz Raja [ 05/May/15 ]

Attachment karaf.log has been added with description: Log File

Comment by Tom Pantelis [ 05/May/15 ]

The log you attached only has a bunch of AskTimeoutExceptions that I can see. I don;t see the NPE.

Did you notice in the log if a snapshot occurred before the NPE?

Comment by Moiz Raja [ 07/May/15 ]

Tom, looks like I attached the wrong log and I'm missing the right log. I'll try to reproduce this again.

Comment by Moiz Raja [ 02/Jun/15 ]

Not reproducible.

Generated at Wed Feb 07 19:55:09 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.