[stratum-dev] Table entry from stratum_bmv2 different from ONOS store

Maximilian Pudelko max at opennetworking.org
Tue May 18 21:22:41 UTC 2021

The linked ONOS CL has been merged today. ONOS now supports canonical byte
You might have to update your ONOS apps, depending on how you interact with
For now there is nothing to be fixed in Stratum.


On Tue, May 18, 2021 at 1:11 PM A Sydney <asydney007 at gmail.com> wrote:

> Please let me know when a fix is pushed (or if you can provide a tkt/issue
> #, I can track it from the stratum repo). I'll then rebuild the debian
> package, create a new image and test out the change.
> Thanks!
> -Syd
> On Tue, May 18, 2021 at 2:20 PM Maximilian Pudelko <max at opennetworking.org>
> wrote:
>> Hi Syd,
>> I think this could be related to the recent PI update we did for
>> Stratum-bmv2: https://github.com/stratum/stratum/pull/660
>> It now returns canonical byte strings in all P4Runtime messages, which
>> confuses ONOS. We're working on fixing it:
>> https://gerrit.onosproject.org/c/onos/+/24616
>> Max
>> On Tue, May 18, 2021 at 7:59 AM A Sydney via stratum-dev <
>> stratum-dev at lists.stratumproject.org> wrote:
>>> Hi Stratum folks,
>>>                           I've used the debugger in Intellij to narrow
>>> down the issue (@P4RuntimeFlowRuleProgrammable.java line 233). As shown in
>>> the attached debugger gui, It appears that
>>> "tableAction->runtimeParams->value->value->value->hb" has different values
>>> for "translatedEntitity.get().translated()" and "entry". Hence, these flow
>>> rules are in a "PENDING ADD" state. Can you kindly provide feedback on this
>>> issue? Is this stratum specific, ONOS, or perhaps java?
>>> Thanks,
>>> -Syd
>>> [image: onos_debug_gui.png]
>>> On Wed, May 12, 2021 at 11:06 PM A Sydney <asydney007 at gmail.com> wrote:
>>>> Hi Stratum folks,
>>>> # Context: I'm running standalone stratum_bmv2 instances on Debian 10
>>>> connected to ONOS where I've got a custom pipeconfig and app.
>>>> # Problem:
>>>> When I install flows, ONOS logs an error that table entries in
>>>> "l2_exact_table" on the switch are different from what's recorded in the
>>>> ONOS store. However, if you take a look at the rules, they are identical as
>>>> shown here: https://pastebin.com/i4Jkt26i
>>>> I activated the debugger and set a breakpoint near "if
>>>> (!translatedEntity.get().translated().equals(entry))" (i.e. in
>>>> P4RuntimeFlowRuleProgrammable.java) and both "translated" and "entry" have
>>>> the same values.
>>>> Have you come across this one? If not, perhaps I should take this up
>>>> with ONOS folks?
>>>> PS. I don't see this issue for other tables.
>>>> Thanks,
>>>> -Syd
>>> _______________________________________________
>>> stratum-dev mailing list
>>> stratum-dev at lists.stratumproject.org
>>> https://lists.stratumproject.org/listinfo/stratum-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.stratumproject.org/archives/stratum-dev/attachments/20210518/5bf738ff/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: onos_debug_gui.png
Type: image/png
Size: 1574961 bytes
Desc: not available
URL: <https://lists.stratumproject.org/archives/stratum-dev/attachments/20210518/5bf738ff/attachment-0001.png>

More information about the stratum-dev mailing list