-
Notifications
You must be signed in to change notification settings - Fork 296
Add support for fdb_event MOVE and check fdb event oids #420
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
Conversation
continue; | ||
|
||
if (!check_rid_exists(attr.value.oid)) | ||
SWSS_LOG_WARN("RID 0x%lx on %s is not present on local ASIC DB", attr.value.oid, meta->attridname); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why line 268 and 271 are error level, but this one is warning level? shouldn't them be same level?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
because if received switch id in fdb notification is not existing in db already then this is a bug same for bridge vlan/id
and here is warning since user could not query yet all the bridge ports, or - thats depending on our discussion, depends how we want to handle ports, whether should we allow SAI to generate new ports on the fly
* valid object type for OID, but this does not guarantee that this OID is | ||
* valid, for example one of existing bridge ports that orch agent didn't | ||
* query yet. | ||
*/ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this PR add visibility to this issue, in such case you can print out warning message. but it does not solve the issue.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes, that was intention of this PR
I have some minor comments, but ideally this should be separated into three PR. fdb move, check fdb evnt oid, and add sleep for saiplayer. |
Made to 201811 branch on 2/21/2019 |
* Add support for fdb_event MOVE and check fdb event oids * bring back ntf_queue constructor * Log also entire fdb_entry
/* | ||
* Because we could receive fdb event's before orch agent will query or | ||
* create bridge/vlan/bridge port we should snoop here new OIDs and put | ||
* them in local DB. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comment is a little confusing.
In what scenario fdb event may be received before orch agent "create" bridge/vlan/bridge port? If that does happen, the VID that comes with FDB will be different from VID assigned to the object during "create" operation. The integrity of meta reference will be messed up.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
there are bridge ports creted by default on the switch and between create switch and removing them it may happen that fdb_event arrive
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, I thought you were talking about FDB event for the non-default bridge/vlan/bridge port object.
If it does happen that fdb_event arrive before removing default bridge ports, will it cause validation error since the bridge ports has non-zero reference count? Orchagent initialization fails at this case?
* Add support for fdb_event MOVE and check fdb event oids * bring back ntf_queue constructor * Log also entire fdb_entry
…upto 5 times for swss docker warm upgrade. (sonic-net#420) Signed-off-by: Jipan Yang <[email protected]>
No description provided.