Details
-
Bug
-
Status: Resolved
-
Resolution: Cannot Reproduce
-
Helium
-
None
-
None
-
Operating System: All
Platform: All
-
1940
Description
The following java.lang.IllegalStateException exceptions are being observed while flows are being added to the controller via the REST API:
Exception in thread "CommitFutures-181" java.lang.IllegalStateException: Illegal state - listener for org.opendaylight.controller.md.sal.dom.broker.impl.DOMDataBrokerTransactionChainImpl@5d89004d was invoked for incorrect chain org.opendaylight.controller.md.sal.binding.impl.BindingTranslatedTransactionChain@4d72ef34.
at com.google.common.base.Preconditions.checkState(Preconditions.java:176)
at org.opendaylight.controller.md.sal.binding.impl.BindingTranslatedTransactionChain$DelegateChainListener.onTransactionChainFailed(BindingTranslatedTransactionChain.java:126)
at org.opendaylight.controller.md.sal.binding.impl.BindingTranslatedTransactionChain.failTransactionChain(BindingTranslatedTransactionChain.java:113)
at org.opendaylight.controller.md.sal.binding.impl.BindingTranslatedTransactionChain.access$200(BindingTranslatedTransactionChain.java:31)
at org.opendaylight.controller.md.sal.binding.impl.BindingTranslatedTransactionChain$3.onFailure(BindingTranslatedTransactionChain.java:94)
at com.google.common.util.concurrent.Futures$4.run(Futures.java:1140)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
To reproduce, start mininet with:
sudo mn --controller=remote,ip=192.168.162.1:6653 --topo tree,3 --switch ovsk,protocols=OpenFlow13
Then use the attached script with the following command line:
python flow_config_perf.py --nflows 1000 --nthreads=5 --ncycles 10 --delay=60
The script will first add then delete 50k flows into the controller.