Uploaded image for project: 'controller'
  1. controller
  2. CONTROLLER-852

IllegalStateExceptions observed when flows are being added to the controller

    XMLWordPrintable

Details

    • Bug
    • Status: Resolved
    • Resolution: Cannot Reproduce
    • Helium
    • None
    • mdsal
    • 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.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            Unassigned Unassigned
            jmedved@cisco.com Jan Medved
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: