[OPNFLWPLUG-381] flow ID is unknown value in operational store. (e.g. "id": "#UF$TABLE*200-3") Created: 18/Mar/15 Updated: 27/Sep/21 Resolved: 05/Jun/15 |
|
| Status: | Resolved |
| Project: | OpenFlowPlugin |
| Component/s: | General |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | ||
| Reporter: | Jamo Luhrsen | Assignee: | Jozef Gloncak |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Environment: |
Operating System: All |
||
| Issue Links: |
|
||||||||
| External issue ID: | 2862 | ||||||||
| Description |
|
To recreate, PUT the flow XML below once and verify it exists properly in operational store. { , , , } } , ], } |
| Comments |
| Comment by Jamo Luhrsen [ 18/Mar/15 ] |
|
XML for flow to PUT: <flow xmlns="urn:opendaylight:flow:inventory"><instructions><instruction><order>0</order><apply-actions><action><order>0</order><output-action><output-node-connector>FLOOD</output-node-connector></output-action></action></apply-actions></instruction></instructions><match><ethernet-match><ethernet-type><type>0x800</type></ethernet-type><ethernet-source><address>00:ab:cd:ef:01:23</address></ethernet-source><ethernet-destination><address>ff:ff:ff:ff:ff:ff</address></ethernet-destination></ethernet-match><ipv4-source>11.3.0.0/16</ipv4-source><ipv4-destination>99.0.0.0/8</ipv4-destination></match><table_id>200</table_id><id>1</id></flow> |
| Comment by Luis Gomez [ 24/Apr/15 ] |
|
This is the ONE TC failure we see in the OpenFlow system test. |
| Comment by subhash kumar singh [ 20/May/15 ] |
|
I am not able to reproduce this bug. First I tried to install the flow with dst_ip 99.0.0.0/8 then with 98.0.0.0/8 and the flow ID does not change. Please let me know if I am missing ant step for reproducing the bug. |
| Comment by Luis Gomez [ 20/May/15 ] |
|
Hi Subhash, a few checkings here: 1) Are you using helium plugin (odl-openflowplugin-flow-services-* feature) for this test? 2) Are you adding the 2nd flow without deleting the 1st? I am sking because this issue is still very apparent in the test automation. BR/Luis |
| Comment by subhash kumar singh [ 21/May/15 ] |
|
Hi Luis, 1) Are you using helium plugin (odl-openflowplugin-flow-services-* feature) for this test? 2) Are you adding the 2nd flow without deleting the 1st? |
| Comment by Jamo Luhrsen [ 26/May/15 ] |
|
I was checking in on this bug and am using this build: I tried with both plugin codebases' features: At this point I was seeing this unknown value in the flow id inside operational |
| Comment by Luis Gomez [ 27/May/15 ] |
|
I already answered in the list, this issue is bigger than we thought as flow ID is always unknown in Lithium distribution. |
| Comment by Jozef Gloncak [ 29/May/15 ] |
|
I tested in Lithium and found out (thank to Michal Rehak), that if input contains MAC addresses in upper case. Then it is all right. The mail was sent to Anton Tkacik (should be able to fix it - probably wrong equals method implemenation in lazy generated code). |
| Comment by Luis Gomez [ 29/May/15 ] |
|
If I remember correctly the flows we push in integration are L3, they only match IP address. |
| Comment by Jozef Gloncak [ 01/Jun/15 ] |
|
Response from Anton Tkacik regarding suspicion on problem in equal() method will not be fixed in Lithium – since YANG does not provide information that mac-addresses should That was hugelly discussed few weeks ago with OF community. Will be probably fixed in Berrylium. |
| Comment by Abhijit Kumbhare [ 01/Jun/15 ] |
|
Elevated to blocker in OpenFlow plugin meeting. Anil will look into this for the old design. On the new design this still needs to be looked at by Jozef |
| Comment by Jozef Gloncak [ 02/Jun/15 ] |
|
My conclusion:
|
| Comment by Jozef Gloncak [ 03/Jun/15 ] |
|
It looks like in Li plugin is problem with aliens still present. Investigating. |
| Comment by Luis Gomez [ 03/Jun/15 ] |
|
I do not see this issue with Lithium redesign code. |
| Comment by Jozef Gloncak [ 03/Jun/15 ] |
|
ok, so if you are using upper case for MAC address it works fine (Li plugin) |
| Comment by Luis Gomez [ 03/Jun/15 ] |
|
Just to be clear this issue is nothing to do with data format. This issue is ANY flow pushed using Helium code generates alien flow-ID. This behavior is only observed with Helium code. |
| Comment by Jamo Luhrsen [ 03/Jun/15 ] |
|
just to be more concrete, I have tested this with a single flow config (not an update to an for helium SR3 the flow id is fine. For both helium codebase and lithium redesign codebase, using mininet with a single switch topo. here is the flow xml: <flow xmlns="urn:opendaylight:flow:inventory"> |
| Comment by Luis Gomez [ 03/Jun/15 ] |
|
Ok, this is new to me because with the flows we push in CI, the Li redesign is doing good. |
| Comment by Jozef Gloncak [ 04/Jun/15 ] |
|
With input from Jamo I was able to find that problem is in missing priority element. This patch should solve it in Li OF plugin Quotation from commit message:
Solution:
|
| Comment by Luis Gomez [ 04/Jun/15 ] |
|
We use priority in the flows we are pushing in CI and still fail, so I am not sure the root cause is missing priority. |
| Comment by Jamo Luhrsen [ 04/Jun/15 ] |
|
another update. The flow I'm using is in a previous comment (no priority and no MAC addresses). there are several combinations here: A) flow without priority
flow with priority
B) flow without priority
flow with priority
C) flow without priority
flow with priority
I'm not sure if the patch [2] is the difference between A) and B), but I came to learn [1] distribution-karaf-0.3.0-20150604.163741-2284.zip |
| Comment by Anil Vishnoi [ 05/Jun/15 ] |
|
Looks like this issue happen when user don't specify the cookie value while flow installation, which is perfectly alright. Following patch fixes the issue in Helium code base of stable/lithium branch. stable/lithium : https://git.opendaylight.org/gerrit/#/c/21981/ |
| Comment by Anil Vishnoi [ 05/Jun/15 ] |
|
Jamo, Above patch should fix (A). Can you please verify the above patch. Thanks |
| Comment by Anil Vishnoi [ 05/Jun/15 ] |
| Comment by Abhijit Kumbhare [ 05/Jun/15 ] |
|
Since this is now fixed for Helium portion of stable/lithium - can you (Jozef/Michal) check if the issue is still present Lithium design? |
| Comment by Jamo Luhrsen [ 05/Jun/15 ] |
|
CI is now passing: I've also verified my previous comments steps (A, B, C). There is still a problem where Li-plugin is not allowing a flow if it doesn't have the |