[Xorp-cvs] XORP cvs commit: xorp/libfeaclient

Pavlin Radoslavov pavlin@icir.org
Tue, 1 Nov 2005 23:33:16 GMT


CVSROOT:	/usr/local/share/doc/apache/cvs
Module name:	xorp
Changes by:	pavlin@xorpc.icir.org	2005-11-01 23:33:16 UTC

XORP CVS repository


Modified files:
	libfeaclient  ifmgr_xrl_replicator.cc ifmgr_xrl_replicator.hh 

Log message:
	Refactor the mechanism for sending the commands to the remote
	targets by introducing a centralized queue for all commands.
	
	We need this centralized mechanism to ensure that the commands
	are sent to the remote targets in the order the targets are
	listed. Otherwise, there could be a race condition if some of
	the targets try to communicate with each other immediately after
	they receive the updates.
	
	For example, if an IP address is moved from one interface to
	another, the static_routes target may receive the interface update
	and send a route update to RIB before the RIB has even received the
	interface update. The result of such race condition is unpredictable:
	e.g., routes with incorrect next-hop interface, or routes that
	are rejected by the RIB.
	
	This fixes the remaining issue in bugzilla entry #297
	
	Bugzilla URL:   http://www.xorp.org/bugzilla/show_bug.cgi?id=297

Revision  Changes                                 Path
1.12      +116 -7;  commitid: 13a694367fa157ea6;  xorp/libfeaclient/ifmgr_xrl_replicator.cc
1.9       +59 -2;  commitid: 13a694367fa157ea6;   xorp/libfeaclient/ifmgr_xrl_replicator.hh