Hi Shuva,

In other words: the version of openflowplugin from 06/12 did not fail when a 
flow without any match rule was written to the config datastore, but the 
current one does. So it's not the way on which the flow is written to the DS, 
but the way on which flows without matches are handled.

(Once the former has been established this is not relevant, but I debugged into 
the part where the flows are written into the datastore and the ones for which 
the exception is later raised always have empty (i.e. non-null) match rules, 
which end up as flow entries without <Match> leafs in the DS)

Br,
Diego

From: Shuva Jyoti Kar
Sent: jueves, 07 de julio de 2016 8:43
To: Diego Jesus Granados Lopez <[email protected]>; 
[email protected]
Subject: RE: [openflowplugin-dev] Problems writing MatchAny flows

Hi Diego,

As I mentioned in my earlier email, in the ofplugin we react to the DTCL of a 
flow being added to the config DS and then call the rpc,  lets debug the part 
writing to the config DS then and find out where the empty match is converted 
to a null one.

If the match is null in the config-DS(absent ) , then we will get that 
exception,  since on the ofplugin we check for match being not-null prior to 
provisioning on the switch.

Thanks
Shuva

From: 
[email protected]<mailto:[email protected]>
 [mailto:[email protected]] On Behalf Of Diego 
Jesus Granados Lopez
Sent: Wednesday, July 06, 2016 11:00 PM
To: 
[email protected]<mailto:[email protected]>
Subject: Re: [openflowplugin-dev] Problems writing MatchAny flows

Hi guys,

Following up on Yi Yang's message (I don't think I'll be able to attach this 
mail to the thread correctly since I wasn't subscribed to the list)

https://lists.opendaylight.org/pipermail/openflowplugin-dev/2016-July/005451.html


I've confirmed that this issue is introduced because of some change in 
Openflowplugin project in the last ~3 weeks. What I did: reproduced the error 
(compiling latest version for SFC + snapshot version from openflowplugin). 
Then, I cloned openflowplugin repo, then checked out a version from ~3 weeks 
ago ( hash 1061cc9d6929e8bb2052f4562bedd7fdce5034ac; chosed that version for no 
particular reason, only that I commited a bugfix on SFC on that date and I 
checked the same chain config I'm rendering now was working then). Compiled 
openflowplugin version, then rebuild SFC on top of it, and the flows are 
rendered successfully (i.e. the "Match value must not be null" error 
disappears). So it must be some change in the openflowplugin since Jun 12th and 
now what is causing this error. Had a look at the openflowplugin changes since 
that date, but there has been a lot of merge activity and I saw nothing that is 
evident to me which could trigger this.



In case it helps, on this test of mine (latest SFC, OpenflowPlugin from Jun 
12th), flows in the config datastore do not contain any match rule, yet they're 
written successfully to the ovs switch. E.g:



<flow><id>107</id><cookie_mask>20</cookie_mask><table_id>2</table_id><priority>5</priority><strict>false</strict><flags/><flow-name>MatchAny</flow-name><idle-timeout>0</idle-timeout><hard-timeout>0</hard-timeout><cookie>20</cookie><barrier>false</barrier><instructions><instruction><order>0</order><go-to-table><table_id>3</table_id></go-to-table></instruction></instructions></flow>



BR,

Diego












_______________________________________________
openflowplugin-dev mailing list
[email protected]
https://lists.opendaylight.org/mailman/listinfo/openflowplugin-dev

Reply via email to