[OPNFLWPLUG-942] Resubmit actions are changed to drop after rebooting the control node. Created: 11/Sep/17  Updated: 27/Sep/21  Resolved: 12/Mar/18

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

Type: Bug
Reporter: Arthi Bhattacharjee Assignee: Somashekhar Javalagi
Resolution: Won't Do 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 DS_and_cont_node.zip     Zip Archive log_after_reboot.zip     Zip Archive openvswitch_after_reboot.zip     Zip Archive openvswitch_b4_reboot.zip     Zip Archive tcpdump.zip    
Issue Links:
Duplicate
duplicates OPNFLWPLUG-936 table 213 has high priority drop rule Resolved
is duplicated by OPNFLWPLUG-917 PacketIn match message deserializatio... Resolved
External issue ID: 9137

 Description   

Distro Version: Carbon (distribution-karaf-0.6.2-20170821.001151-442.tar.gz)

Setup:

  • Control node with ODL

Features to be installed:

  • odl-openflowplugin-flow-services
  • odl-openflowplugin-nxm-extensions
  • odl-mdsal-apidocs

Steps:

  • Push a resubmit flow using RESTAPI
  • Reboot the control node with ODL.

Observation:

  • The flow with action resubmit had been changed to action drop after reboot.
  • In config datastore, the action is not been changed to drop. But in device the action has been changed to drop.


 Comments   
Comment by Arthi Bhattacharjee [ 11/Sep/17 ]

Attachment log_after_reboot.zip has been added with description: Karaf logs after reboot.

Comment by Arthi Bhattacharjee [ 11/Sep/17 ]

Attachment openvswitch_after_reboot.zip has been added with description: Openvswitch_log_after_reboot

Comment by Arthi Bhattacharjee [ 11/Sep/17 ]

Attachment openvswitch_b4_reboot.zip has been added with description: Openvswitch_log_before_reboot

Comment by Arthi Bhattacharjee [ 11/Sep/17 ]

Attachment tcpdump.zip has been added with description: tcpdump

Comment by Arthi Bhattacharjee [ 11/Sep/17 ]

Attachment DS_and_cont_node.zip has been added with description: DataStore_and_control_node_info

Comment by Sunil Kumar M S [ 12/Sep/17 ]

Please check this mail chain:
https://lists.opendaylight.org/pipermail/netvirt-dev/2017-June/004802.html

Comment by Sunil Kumar M S [ 12/Sep/17 ]

(In reply to Sunil Kumar M S from comment #5)
> Please check this mail chain:
> https://lists.opendaylight.org/pipermail/netvirt-dev/2017-June/004802.html

From the logs, we observe
2017-09-11 16:11:11,772 | WARN | entLoopGroup-5-1 | ActionUtil | 193 - org.opendaylight.openflowplugin.impl - 0.4.2.SNAPSHOT | Serializer for action interface org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.action.rev140714.nodes.node.table.flow.instructions.instruction.instruction.apply.actions._case.apply.actions.action.action.NxActionResubmitNodesNodeTableFlowApplyActionsCase for version 4 not found.

Mail chain also seems to have discussion on the same context. Let us know if it is different issue.

Comment by Arthi Bhattacharjee [ 12/Sep/17 ]

Refereed Bug#8718, where resubmit actions are changed to drop and observed same log in the Karaf log. The issued seemed to be the same.
Have noticed a patch has been pushed for the above mentioned bug (https://git.opendaylight.org/gerrit/#/c/59214/) in master branch. i.e., Nitrogen distro
But, the patch is not cherry picked to carbon.

Comment by Sunil Kumar M S [ 15/Sep/17 ]

(In reply to Arthi Bhattacharjee from comment #7)
> Refereed Bug#8718, where resubmit actions are changed to drop and observed
> same log in the Karaf log. The issued seemed to be the same.
> Have noticed a patch has been pushed for the above mentioned bug
> (https://git.opendaylight.org/gerrit/#/c/59214/) in master branch. i.e.,
> Nitrogen distro
> But, the patch is not cherry picked to carbon.

that patch seems to be for karaf4, we may not need it.
In your environment or from the logs provided it is difficult to synchronise between controller time and switch time since there is a difference.
In ovs switch logs there are multiple traces of connection/disconnection
Check OVS logs in these time zone:
2017-09-11T20:08:15.273Z
2017-09-11T20:11:09.902Z
2017-09-11T20:11:13.814Z
As per my knowledge, between these time zone itself action is changed from resubmit to drop.
In the provided logs, config DS still has the resubmit action but operational DS doesn't.

Comment by Sunil Kumar M S [ 06/Oct/17 ]

Is this bug still valid or can be closed?

Comment by Bertrand Low [ 23/Oct/17 ]

This bug is still valid in stable/carbon (last tested using distribution-karaf-0.6.3-20171023.085758-46.tar.gz), but is not reproducible in stable/nitrogen or master branches.

Below is a more simplified setup to reproduce the bug, and only requires restarting ODL.

setup:

  • using ovs_version: "2.6.1"
  • create a bridge (e.g. br-int) and set its controller to be ODL
  • start ODL and install features: odl-openflowplugin-flow-services odl-openflowplugin-nxm-extensions odl-mdsal-apidocs
  • create a flow with action=resubmit using ODL and confirm that the flow is pushed successfully to the node

steps:
1. stop ODL
2. start ODL
3. notice that flow is pushed to the node but the resubmit action is now a drop action. Also, other attributes of the flow (e.g. ct_mark) are also missing.

  • this is the case regardless of the OVS fail_mode setting of the bridge, which determines whether the original flow is cleared by OVS between step 1. and 2. (i.e. after ODL disconnects).

workaround: if you restart openvswitch on the node after step 3., the correct flow is pushed down to the node.

e.g.
[odl@odl32 ~]$ sudo ovs-ofctl dump-flows -Oopenflow13 br-int
OFPST_FLOW reply (OF1.3) (xid=0x2):
cookie=0x6900000, duration=21.207s, table=2, n_packets=0, n_bytes=0, priority=62020 actions=drop
[odl@odl32 ~]$ sudo systemctl restart openvswitch
[odl@odl32 ~]$ sudo ovs-ofctl dump-flows -Oopenflow13 br-int
OFPST_FLOW reply (OF1.3) (xid=0x2):
cookie=0x6900000, duration=2.392s, table=2, n_packets=0, n_bytes=0, priority=62020,ct_mark=0x24/0x37 actions=resubmit(,17)

stable/carbon:
reproducible most of the time. Occasionally, the correct flow is pushed successfully.

stable/nitrogen:
fixed

master:
fixed

Comment by Arunprakash D [ 27/Oct/17 ]

Cherry-pick to stable/carbon is yet to be merged.

https://git.opendaylight.org/gerrit/#/c/62471/

Will merge as soon as the conflicts gets resolved.

Comment by Arunprakash D [ 07/Nov/17 ]

After controller restart, nicira extensions serializer registration is taking some amount of time as it is still in config subsystem.

Before openflowplugin-extension-nicira bundles comes up, reconciliation is pushing the flow which is not having resubmit serializer and fails.

We need to convert the extension bundle to blueprint.

Comment by Somashekhar Javalagi [ 06/Mar/18 ]

Hi arthi.b@hcl.com,

This issue is not there in nitrogen and oxygen, as they are already having latest blueprint changes. Do we need to fix it to the carbon as well? 

Comment by Arunprakash D [ 12/Mar/18 ]

arthi.b@hcl.com, openflowjava should be converted to blueprint and we don't have plan to convert the same for carbon branch.

Openflowplugin and Openflowjava are converted to blueprint from stable nitrogen. Please check from nitrogen onwards and open the bug if exits.

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