Resubmit actions are changed to drop after rebooting the control node.

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.

Environment

Operating System: All
Platform: All

Attachments

5
  • 11 Sep 2017, 08:46 AM
  • 11 Sep 2017, 08:45 AM
  • 11 Sep 2017, 08:43 AM
  • 11 Sep 2017, 08:43 AM
  • 11 Sep 2017, 08:38 AM

Activity

Show:

Arunprakash D March 12, 2018 at 7:06 AM

, 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.

Somashekhar Javalagi March 6, 2018 at 5:58 AM

Hi ,

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? 

Arunprakash D November 7, 2017 at 12:14 PM
Edited

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.

Arunprakash D October 27, 2017 at 1:50 PM

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.

Bertrand Low October 23, 2017 at 11:58 PM

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

Won't Do

Details

Assignee

Reporter

External issue ID

Components

Priority

Created September 11, 2017 at 8:38 AM
Updated September 27, 2021 at 9:02 AM
Resolved March 12, 2018 at 7:06 AM