[CONTROLLER-1326] Exception 'IllegalArgumentException: Route Identifiers must be supplied' seen Created: 16/May/15  Updated: 01/Jun/15  Resolved: 01/Jun/15

Status: Resolved
Project: controller
Component/s: mdsal
Affects Version/s: 0.4.0
Fix Version/s: None

Type: Bug
Reporter: Jan Medved Assignee: Tony Tkacik
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: All
Platform: All


Attachments: Zip Archive log.zip    
External issue ID: 3234

 Description   

when executing a flow programming test with mininet with 64 nodes, the following exception is seen:

java.lang.IllegalArgumentException: Route Identifiers must be supplied
at com.google.common.base.Preconditions.checkArgument(Preconditions.java:122)
at org.opendaylight.controller.remote.rpc.registry.RpcRegistry$Messages$ContainsRoute.<init>(RpcRegistry.java:139)
at org.opendaylight.controller.remote.rpc.registry.RpcRegistry$Messages$AddOrUpdateRoutes.<init>(RpcRegistry.java:160)
at org.opendaylight.controller.remote.rpc.RpcListener.onRpcAvailable(RpcListener.java:46)
at org.opendaylight.controller.md.sal.dom.broker.impl.DOMRpcRouter$3.run(DOMRpcRouter.java:104)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)

To reproduce:
1. Start mininet with 64 nodes and connect it to the controller
2. Blast 20k flows into the controller using flow config blaster:
./flow_config_blaster.py --auth --fpr 250 --flows 1000 --threads 20 --no-delete
3. Look at the logs



 Comments   
Comment by Jan Medved [ 16/May/15 ]

Attachment log.zip has been added with description: Logs

Comment by Tony Tkacik [ 19/May/15 ]

There are two parts to this bug - one is DOMRpcRouter was sending out notification of RPC added even if no new RPC type was present.

In order to previous happen it means two implementations of add-flow Rpcs for same flow node were registered to MD-SAL at same time.

Patch https://git.opendaylight.org/gerrit/20708 fixes DOMRpcRouter sending empty updates to Rpc availability listeners, but core reason why there were two implementation present needs to be investigated in openflow plugin.

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