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: I2348d8aaeb8e4caa277b69864f0a4516739e2f47
closes-bug: 1542681
  • Loading branch information
haripk committed Feb 6, 2016
1 parent 1da98c4 commit 99a334d
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 99a334d

Please sign in to comment.