Avoid removing a VRF routing table when there are pending creation entries in gRouteBulker#3477
Conversation
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
5a7da1f to
727bb0e
Compare
|
/azp run |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
thanks @stephenxs |
3b84c79 to
5ffa1f3
Compare
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
Didn't find a failure but vstest returned non zero |
|
/azpw run |
|
/AzurePipelines run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
…ized bytes Signed-off-by: Stephen Sun <[email protected]>
Signed-off-by: Stephen Sun <[email protected]>
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
@abdosi , please check the cherry-pick labels. Looks like there is conflict and may have to raise separate PR |
|
Cherry-pick PR to 202405: #3493 |
|
Cherry-pick to 202405 since PR #3477 was in 202405 |
|
Hi @abdosi is there a separated PR for 202411 as it has conflict and can not be cherry-picked? |
@prsunny @abdosi @keboliu |
|
Cherry-pick PR to 202411: #3526 |
…tries in gRouteBulker (sonic-net#3477) * Set bytes to 0 before copying IPv4 addresses/masks to avoid uninitialized bytes * Avoid removing a VRF routing table when there are pending creation entries in gRouteBulker Remove a VRF routing table when a routing entry is removed only if there is no pending creation entry in gRouteBulker Avoid uninitialized value SAI IP address/prefix structure Why I did it Fix issue: out of range exception can be thrown in addRoutePost due to non exist VRF
…tries in gRouteBulker (sonic-net#3477) * Set bytes to 0 before copying IPv4 addresses/masks to avoid uninitialized bytes * Avoid removing a VRF routing table when there are pending creation entries in gRouteBulker Remove a VRF routing table when a routing entry is removed only if there is no pending creation entry in gRouteBulker Avoid uninitialized value SAI IP address/prefix structure Why I did it Fix issue: out of range exception can be thrown in addRoutePost due to non exist VRF Signed-off-by: Baorong Liu <[email protected]>
What I did
Avoid removing a VRF routing table when there are pending creation entries in gRouteBulker
Why I did it
Fix issue: out of range exception can be thrown in
addRoutePostdue to non exist VRFHow I verified it
Unit (mock) test
Details if related
Originally, it cleaned up a VRF routing table whenever a prefix of the VRF was removed if
The motivation is to remove a VRF routing table if there is no routing entry in the VRF and no routing entry pending creation for that VRF. However, condition 2 does not guarantee that.
The ideal way of the 2nd condition is to check pending creation entries of a certain VRF, which we can not do.
So, we are using strict conditions here as the following: