-
Notifications
You must be signed in to change notification settings - Fork 35
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DASH SAI record for remove fails if key specified #29
Comments
It looks like BMv2 does not return failure on the inbound routing entry creation. I verified and see that it returns the correct structure. I even tried to create the same working entry multiple times and saw that it returns each time the new OID. But t shows an error in the saithrift server console: "Match entry exists". But on the other hand, I found that for remove() it does return the status and it does not check it.
I will appreciate if you can test it. Especially if you have any other implementation except BMv2 that might return failure on create(). In this fix, I do not check the create() status. It works well for remove() only. FYI: do_assert=True by default, so it will be always verifying status in your case. @andriy-kokhan maybe you know what should return create() in case of failure? |
@anton7811 , as per initial design, the create() API returns:
It's expected that when create() is executed with |
Someone please explain this
Hi @anton7811 I believe you answered a different issue I reported to you directly in Slack. I've filed #30 so perhaps yo can move your answer there. Nobody has responded to the actual problem I'm reporting here (Issue 29) which is about what happens if in a remove operation, the user provides both a name and a key, the remove fails. It works if just name is provided. |
The following test case fails on the remove operation. I found experimentally if I delete the extraneous information after the "op" it passes. All I can see in the DUT switch trace (DASH bmv2) is "Match key not found." The sai-thrift -server trace shows a P4Runtime error:
I assume this is some kind of key, but I can't associate it with anything SAI Challenger is doing because I can't see any trace info.
I suppose there needs to be some clear rules regarding use of "name" vs "key" in a DASH sai record. Please document.
The text was updated successfully, but these errors were encountered: