[Xorp-cvs] XORP cvs commit: xorp/fea
Pavlin Radoslavov
pavlin at icir.org
Fri Sep 8 08:32:02 PDT 2006
CVSROOT: /usr/local/share/doc/apache/cvs
Module name: xorp
Changes by: pavlin at xorpc.icir.org 2006-09-08 15:32:02 UTC
XORP CVS repository
Modified files:
fea ifmanager_transaction.hh xrl_ifmanager.cc
Log message:
* Pull in advance the current interface configuration in the beginning
of the transaction processing
(XrlInterfaceManager::commit_transaction()), in case it is needed by
some of the transaction operations.
* Use the already pulled interface configuration (instead of pulling
the configuration on-the-fly) inside the processing of the
ConfigureInterfaceFromSystem operation dispatch.
This fixes a performance issue when configuring a large number of
interfaces/VLANs (e.g, 100) each of them with "default-system-config"
configuration statement.
Note that after the above fix, the time to process an interface-based
transaction is still O(N), hence eventually the transaction processing
might still timeout for a (much) larger number of configured interfaces.
The solution for the O(N) processing time is to remove the
"start_commit/end_commit" %modinfo methods inside the
etc/templates/interfaces.tp rtrmgr template file, and use similar
transaction mechanism only inside the "interfaces/interface"
configuration node.
Bug found by: "Ramu k" <ramu.avula AT gmail.com>
Revision Changes Path
1.15 +2 -2; commitid: c64245018ac37ea6; xorp/fea/ifmanager_transaction.hh
1.21 +8 -2; commitid: c64245018ac37ea6; xorp/fea/xrl_ifmanager.cc
More information about the Xorp-cvs
mailing list