Comment 12 for bug 1697243

Revision history for this message
Thomas Morin (tmmorin-orange) wrote :

I've had only a quick look for now.

First thing, some information that is currently missing from the bug, but that would help would be:
- version used
- full logs (the one provided seems to give logs long after)

Looking at the logs, it seems that 0x838540493f7eb89d is a cookie of a current bridge (not from a previous run), because "9477051674213136541" (the int for 0x838540493f7eb89d) is present in multiple lines such as:

2017-06-23 06:19:00.617 7 DEBUG neutron.plugins.ml2.drivers.openvswitch.agent.openflow.native.ofswitch [req-9a0971d8-f9fc-49c7-b640-013efa97dfd4 - - - - -] ofctl request version=0x4,msg_type=0xe,msg_len=0x50,xid=0xe427dd6f,OFPFlowMod(buffer_id=4294967295,command=0,cookie=9477051674213136541L,cookie_mask=0,flags=0,hard_timeout=0,idle_timeout=0,instructions=[OFPInstructionActions(actions=[OFPActionOutput(len=16,max_len=0,port=4294967290,type=0)],len=24,type=4)],match=OFPMatch(oxm_fields={}),out_group=0,out_port=0,priority=0,table_id=0) result None _send_msg /usr/lib/python2.7/site-packages/neutron/plugins/ml2/drivers/openvswitch/agent/openflow/native/ofswitch.py:93

The behavior for stale flow deletion is "delete things for all cookies except cookies that we know about", so believe that the error may lie in failing to identify that 0x838540493f7eb89d is a cookie we know about (ie having the cookie of our bridge in .reserved_cookies of the master bridge). In fact I suspect that if we derive a cookie bridge from another cookie bridge itself derived from the master, reserving is possibly not propagating to the master bridge as it should.