Skip to content

Commit

Permalink
Always enqueue route DB table operations on fabric route table.
Browse files Browse the repository at this point in the history
As fabric tables will never be deleted, table deletion before the
enqueued entry is processes cannot happen.

Change-Id: I9a01b3b864fdc73c8b8295a000eec2dceb9949b5
closes-bug: 1542681
  • Loading branch information
haripk committed Feb 6, 2016
1 parent beb5f97 commit 72cf2ae
Show file tree
Hide file tree
Showing 3 changed files with 4 additions and 3 deletions.
3 changes: 2 additions & 1 deletion src/vnsw/agent/oper/agent_route.cc
Expand Up @@ -680,7 +680,8 @@ void AgentRoute::EnqueueRouteResync(void) const {
DBRequest req(DBRequest::DB_ENTRY_ADD_CHANGE);
req.key = GetDBRequestKey();
(static_cast<AgentKey *>(req.key.get()))->sub_op_ = AgentKey::RESYNC;
get_table()->Enqueue(&req);
Agent *agent = (static_cast<AgentRouteTable *>(get_table()))->agent();
agent->fabric_inet4_unicast_table()->Enqueue(&req);
}

//If a direct route get modified invariably trigger change
Expand Down
2 changes: 1 addition & 1 deletion src/vnsw/agent/oper/bridge_route.cc
Expand Up @@ -104,7 +104,7 @@ void BridgeAgentRouteTable::AddBridgeReceiveRouteReq(const Peer *peer,
DBRequest req(DBRequest::DB_ENTRY_ADD_CHANGE);
req.key.reset(new BridgeRouteKey(peer, vrf_name, mac, vxlan_id));
req.data.reset(new L2ReceiveRoute(vn_name, vxlan_id, 0));
Enqueue(&req);
agent()->fabric_l2_unicast_table()->Enqueue(&req);
}

void BridgeAgentRouteTable::AddBridgeReceiveRoute(const Peer *peer,
Expand Down
2 changes: 1 addition & 1 deletion src/vnsw/agent/oper/evpn_route.cc
Expand Up @@ -113,7 +113,7 @@ void EvpnAgentRouteTable::AddReceiveRouteReq(const Peer *peer,
req.key.reset(new EvpnRouteKey(peer, vrf_name, mac, ip_addr,
ethernet_tag));
req.data.reset(new L2ReceiveRoute(vn_name, ethernet_tag, label));
Enqueue(&req);
agent()->fabric_evpn_table()->Enqueue(&req);
}

void EvpnAgentRouteTable::AddReceiveRoute(const Peer *peer,
Expand Down

0 comments on commit 72cf2ae

Please sign in to comment.