Skip to content

Commit

Permalink
[orchagent] Postpone SRv6 SID installation when nexthop is not ready
Browse files Browse the repository at this point in the history
If SID installation fails due to nexthop not available, add the SID to
the pending SIDs list and retry when the nexthop becomes available

Signed-off-by: Carmine Scarpitta <[email protected]>
  • Loading branch information
cscarpitta committed Oct 26, 2023
1 parent 48f5e56 commit b4c557f
Showing 1 changed file with 4 additions and 1 deletion.
5 changes: 4 additions & 1 deletion orchagent/srv6orch.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -738,7 +738,10 @@ bool Srv6Orch::createUpdateMysidEntry(string my_sid_string, const string dt_vrf,
next_hop_id = m_neighOrch->getNextHopId(nexthop);
if(next_hop_id == SAI_NULL_OBJECT_ID)
{
SWSS_LOG_ERROR("Failed to get nexthop for adjacency %s", adj.c_str());
SWSS_LOG_INFO("Failed to get nexthop for adjacency %s", adj.c_str());
SWSS_LOG_INFO("Nexthop for adjacency %s doesn't exist in DB yet", adj.c_str());
auto pending_mysid_entry = make_tuple(key_string, dt_vrf, adj, end_action);
m_pendingSRv6MySIDEntries[nexthop].insert(pending_mysid_entry);
return false;
}
}
Expand Down

0 comments on commit b4c557f

Please sign in to comment.