I logged everything that I send to the transaction. When I print out the flow (which follows a yang model), I can see all the elements in there (see my previous mail in this thread). It is possible that the openflow southbound plugin which stuffs the datstore (?) does not like something and is silently stripping out data. Once the transaction is submitted and commit succeeds, the app should be able to release references to the data. Indeed I am making the whole commit synchronous to avoid shooting myself in the foot.
I will engage with the openflow plugin developers to see how I can track this down. I hope somebody will respond from the openflowplugin-dev list to let me know what debug I should turn on so I can produce some more diagnostics. So in summary, I am able to reproduce the following action in a flow via the JAVA API. https://wiki.opendaylight.org/view/Editing_OpenDaylight_OpenFlow_Plugin:End_to_End_Flows:Example_Flows#Push_VLAN I can mimic what the REST api does by direct JAVA calls and the flow does appear but what I want is to ALSO have a goto. This is my issue. If the GOTO is added to the flow, the VLAN push action is stripped off. Thanks for your tips and sorry for the number of mails on this. On Wed, Dec 6, 2017 at 11:16 AM, Tom Pantelis <[email protected]> wrote: > > > On Wed, Dec 6, 2017 at 10:46 AM, M. Ranganathan <[email protected]> wrote: > >> Hi Ryan, >> >> Thanks for forwarding but what is puzzling me is why the flow does not >> appear as it should in the Config Datastore. If the YANG model matches >> should it not appear in the config datastore? >> >> I could see it as an openflow problem if I saw an exception why trying to >> instantiate the flow. >> >> I was suspecting MDSAL for this reason. Perhaps I am mistaken. >> > > The MDSAL commits exactly what clients tell it to do, ie it doesn't > randomly omit or strip out data. I'm not that familiar with OFP and I'm not > really clear on exactly what you're doing but if something is missing in > the data then I suspect either it isn't getting written or it was deleted > or overwritten somewhere along the line in the app code. > > >> >> Thanks. >> >> Ranga >> > > -- M. Ranganathan “If debugging is the process of removing software bugs, then programming must be the process of putting them in.” – Edsger Dijkstra
_______________________________________________ openflowplugin-dev mailing list [email protected] https://lists.opendaylight.org/mailman/listinfo/openflowplugin-dev
