[OPNFLWPLUG-716] Miising flows in operational DS (and on switches as well) Created: 24/Jun/16  Updated: 27/Sep/21  Resolved: 20/Jul/16

Status: Resolved
Project: OpenFlowPlugin
Component/s: General
Affects Version/s: None
Fix Version/s: None

Type: Bug
Reporter: Tomas Cechvala 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


Attachments: Text File flows_config_ds_table6.txt     Text File karaflog.txt    
External issue ID: 6109
Priority: Highest

 Description   

Certain flows fail to be configured on OVS.

Please see the attachment.



 Comments   
Comment by Tomas Cechvala [ 24/Jun/16 ]

These flows are configured successfully, but fail to be written on OVS.

Comment by Tomas Cechvala [ 24/Jun/16 ]

Attachment flows_config_ds_table6.txt has been added with description: Flows configured in table6

Comment by Tomas Cechvala [ 24/Jun/16 ]

To filter out redundand logging

log:set ERROR org.opendaylight.groupbasedpolicy

Comment by Tomas Cechvala [ 24/Jun/16 ]

Attachment karaflog.txt has been added with description: karaf.log

Comment by Tomas Cechvala [ 24/Jun/16 ]

Missing flows can be seen directly in CSIT job:

ODL data (including inventory/nodes config/operational) and flows on OVS switches can be seen directly in groupbasedpolicy CSIT job:
https://jenkins.opendaylight.org/releng/view/groupbasedpolicy/job/groupbasedpolicy-csit-1node-3-node-only-boron/694/robot/report/log.html#s1-s2-s6

Please notice that flows for table6 are missing.
https://jenkins.opendaylight.org/releng/view/groupbasedpolicy/job/groupbasedpolicy-csit-1node-3-node-only-boron/694/robot/report/log.html#s1-s2-s6-t1-k3-k2

Comment by Shuva Jyoti Kar [ 24/Jun/16 ]

Hi Tomas,

I guess you are seeing the flows in the inventory config DS , but not in the switch . Am i correct ?

if yes:

given this in the log :

2016-06-24 12:01:56,979 | ERROR | on-dispatcher-77 | DataTreeChangeListenerActor | 185 - org.opendaylight.controller.sal-distributed-datastore - 1.4.0.SNAPSHOT | Error notifying listener org.opendaylight.controller.md.sal.binding.impl.BindingClusteredDOMDataTreeChangeListenerAdapter@38b0d026
java.lang.NullPointerException: Match value must not be null
at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:226)[65:com.google.guava:18.0.0]
at org.opendaylight.openflowplugin.impl.registry.flow.FlowRegistryKeyFactory$FlowRegistryKeyDto.<init>(FlowRegistryKeyFactory.java:43)[205:org.opendaylight.openflowplugin.impl:0.3.0.SNAPSHOT]
at org.opendaylight.openflowplugin.impl.registry.flow.FlowRegistryKeyFactory.create(FlowRegistryKeyFactory.java:29)[205:org.opendaylight.openflowplugin.impl:0.3.0.SNAPSHOT]
at org.opendaylight.openflowplugin.impl.services.SalFlowServiceImpl.addFlow(SalFlowServiceImpl.java:86)[205:org.opendaylight.openflowplugin.impl:0.3.0.SNAPSHOT]

It looks like having a non-null match s what is mandated by the inventory.

Can you please try with a non-null match and let us know if that works ?

Comment by Tomas Cechvala [ 24/Jun/16 ]

Hi Shuva, so i tried to add empty match instead of null one and it helped.

Thanks for pointing that out.

Fixed in GBP
https://git.opendaylight.org/gerrit/#/c/40812/

Comment by Shuva Jyoti Kar [ 24/Jun/16 ]

cool ....

Comment by Shuva Jyoti Kar [ 10/Jul/16 ]

Reviewing the openflow specifications and post discussions, i feel having no match in the request is entirely fine, because data store doesn't put any restriction, and hence we should handle it internally.

The gerrit patch for the same is
https://git.opendaylight.org/gerrit/#/c/41605/ .

Comment by Andrej Leitner [ 20/Jul/16 ]

closing bug since the patch was merged already in boron and beryllium

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