summaryrefslogtreecommitdiff
path: root/src/common
AgeCommit message (Collapse)Author
2011-03-02change indentation in commit codeAn-Cheng Huang
2011-02-23remove compiler warningsAn-Cheng Huang
2011-02-22clean up dead code etc. etc. etc.An-Cheng Huang
2011-02-10Improve memory allocation (and freeing), so commit will support a ↵Michael Larson
configuration booting with 6000 vpn tunnels (w/ 2 gigs ram).
2010-11-181) Ordered evaluation of these scripts similar to what is found inMichael Larson
/etc/rc* system. An integer at the beginning of the script identifies the order in which the script is executed (i.e. 01test is run before 55monkey). 2) There is now a pre-commit hook that can be used. These scripts are located at: /etc/precommit and are invoked before commit has started processing actions. 3) A success/failure environment flag set before a process has run has been changed to a tri-state: SUCCESS = all priority groups succeeded FAILURE = all priority groups failed PARTIAL = mixed success/failed
2010-10-29change first, last, firstlast behavior to apply environment setting on each ↵Michael Larson
action applied. will be used to help resolve problems identified w/ fw synchronization of rules.
2010-08-27fix for bug 5982.Michael Larson
upped max_length_buffer length from 1024 to 4096. Should leave open and reassign to mendocino so that a proper string length check can be added to the commit. (cherry picked from commit df3c80575ea539e560afc3357eb322e3e9df64bf)
2010-08-26fix for bug 5960An-Cheng Huang
* change "commit" to use syscalls (instead of system("...") calls) for mount/umount. * this is a temporary fix, and such low-level details need to be moved into the backend library.
2010-08-23move "changed" status handling into libraryAn-Cheng Huang
* remove public status modifier as high-level operations no longer need it. * add more information to clarify changed status handling in library. * mark changed status at appropriate places in library.
2010-08-20handle "changed" status properlyAn-Cheng Huang
* original backend implementation uses unionfs-specific "changes only" dir to determine "changed" status. this breaks when it involves deactivated nodes. * new library design uses explicit per-node "changed" marker. however, since previously "commit" only handles a root "changed" marker, the new library could not implement this scheme and used a workaround instead. * now add API functions for "commit" to properly clean up "changed" markers. * modify "commit" to use these API functions and remove the workaround from the new library.
2010-06-24fix additional case for vyatta guard restarting under deletion of ↵Michael Larson
deactivated nodes.
2010-06-23partial fix for bug 5729 (comment #1).Michael Larson
2010-06-09cleanup and fix cases to handle activated deleted multinodes correctly. ↵Michael Larson
simplified deactivated nodes logic in commit.
2010-06-05add commit hook directory.Michael Larson
The entitlement bug can be fixed https://bugzilla.vyatta.com/show_bug.cgi?id=5354 by adding a hook into this directory.
2010-06-04fix for deactivated root node that is deleted and then committed.Michael Larson
Bug found my Mohit.
2010-06-01Remove unnecessary return statementsStephen Hemminger
Get rid of: return; }
2010-05-28Fix compiler warnings about overriding constStephen Hemminger
Change retrieve_data and srcDst to use const. This fixes compiler warnings about violating const rules.
2010-05-19modified tag limit == 1. Now when set this node will only allow a single ↵Michael Larson
instance. todo update the parsing structure to support a signed value to support embedded tag node value of 1 (current behavior)--will address this in the future (or when this behavior is requested).
2010-05-04initial working version of activate and deactivate: load,save,show,commit ↵Michael Larson
supported.
2010-04-22support for PARENT reference in priority statements. Example:Michael Larson
priority: PARENT Means that this priority group will adopt the priority value of the parent. And the behavior on deletion of this priority root node will be deleted before the parent. On all other operations this node will be scheduled after the parent. This should fix problems in scheduling creation/deletion orders for priority groups so long as they are located within the same hierarchy. priority.pl has been updated as well.
2010-04-13fix for bug 2176.Michael Larson
Embedded leaf nodes can now be supported in the cli structure. In additional an arbritrary limit can be set on the number of multinode values allowed. Format in the node.def is: tag: [u32] or multi: [u32] For the special case of a leaf node the value for u32 is 1. In this case the operation applied to the node is to replace the node with the set value. This generates a delete of the old tree structure from the embedded leaf and a set of the new tree structure from the embedded leaf.
2010-03-29changed double quotes to single quotes on in commit actions.Michael Larson
2010-03-26fix for bug 5300Michael Larson
2009-11-10preserve node.val order for term multinodes. fix for bug 5103Michael Larson
2009-11-02fix for missing priority value on embedded multinode. bug behavior was more ↵slioch
limited than this--at least tag node.def and multiple configuration on commit. tested fix with limited regression test. also slightly modified break on priority values where embedded multinodes with priority values are treated as discrete transactions (which isolates failures within the multinode and not the parent of the multinode).
2009-10-23dismantle old priority file parsing and node matching code. removedslioch
references to old values.
2009-10-22activate priority values from node.def. priority file is now no longer used ↵slioch
and should be considered depricated.
2009-10-21priorities should match up on all nodes now, except where the priority file ↵slioch
diverges from the node.defs commit behavior has not changed yet, but can be completely switched over to node.def priority system with simple change.
2009-10-21preserve priorities in hierarchy. old priority still active, but commit -s ↵slioch
will now display both priorities: interfaces (t: 0, p: 850,850) the first value is from the old priority file and is the active value, the second value is the value retrieved from the node.def and is not used (yet).
2009-10-21pull priority from file into data structureslioch
2009-10-12followup checkin for fast commit on success behavior. Addresses problem with ↵slioch
deleted leafs. Partial regression run on changes, results map to 10/10 build.
2009-10-10performance optimization on commit. On successful commits (i.e. no failures) ↵slioch
will improve performance by avoiding the piecewise priority based copy and just copy the complete configuration once. On specific test configuration performance improvement brought commit boot time down from >15 minutes to less than 10 minutes.
2009-10-09commit post-processing performance optimizationAn-Cheng Huang
* convert subshell invocations to library function calls. * reduce boot time by ~40 seconds for "certain configuration".
2009-10-05 escape value slash in leaf value--followon fix to suppression of leaf value ↵Michael Larson
with slash in jenner.
2009-10-02 fix for bug 4969. on leaf nodes scan for '/' and don't make these values ↵Michael Larson
available to the partial commit status api (bug fix 4919). this approach will be revised in next release.
2009-09-11add support for value tags on term multinodes. used in debugging output and ↵Michael Larson
accounting file.
2009-09-10 add leaf values to path data structures. will show in disgnostic output ↵Michael Larson
from commit and via .changes file used for commit active node set.
2009-09-04added data path to environment during commit. value key is "NODE_DATA_PATH". ↵slioch
nodes are delimited by "/" rather than spaces.
2009-07-06fix for bug 4669. Revert string back to value for terminating multinodes.slioch
2009-07-06updated perl api for new cli to support working node representation. not yet ↵slioch
functional without additional testing.
2009-06-26The SYNTAX and COMMIT tags will be executed before an actions (UPDATE,slioch
CREATE, DELETE, END, BEGIN) within a priority tree. That means that all work (include the commit-check pass) will be performed on a priority tree before proceeding to the next priority tree. If a priority tree generates a failure in the commit-check pass processing will halt on the priority tree and no further processing will be performed on the priority tree. The failed priority tree will NOT be copied to the active working directory. All nodes in the priority tree will execute SYNTAX and COMMIT actions except for nodes that have been deleted. Note this iteration is performed on the working tree, so all commit-check nodes will either be directly modified or have a node down the hierarchy that had been modified. The working directory and active directory will not be modified until after all priority trees have been processed.
2009-06-24Commit check now behaves like IslaVista.slioch
Note that commit check only applies in the following cases: 1) On nodes or ancestors of nodes that have been set or modified 2) Does not applied to deleted nodes Feature developers should: 1) locate commit checks at a common ancestor if checking across a hierarchy 2) expect that the commit check only enforces created behavior (therefore behaves more like a create check). An additional flag is provided "-f" to allow for full syntax and commit checks. This allows a complete single pass on all syntax and commit errors. The default behavior is to stop processing on the first error.
2009-06-09additional fix for bug 4212. root dirs needed to be reversed on del event. ↵slioch
passes regression
2009-06-03added support for first and last sibling environment variable: ↵slioch
"ENV_SIBLING_POSITION". This value will either be "FIRST" or "LAST" or undefined. "FIRST" means that the sibling is the first in the list of a common parent, provided that the sibling resides in the same priority group "LAST" means that the sibling is the last in the list of a common parent, provided that the sibling resides in the same priority group
2009-06-01fix for bug 4451. preserve empty values on leaf nodes.slioch
2009-05-28fix for bug 4212 and bug 4434.slioch
opaque directories are now handled corrected when a delete is followed by a set in a subsection of the deleted hierarchy.
2009-04-11wild cards are now supported on terminating nodes in the priority file:slioch
So, 100 load-balancing/wan/rule/node.tag/* applies the priority of "100" to all children of the multinode "rule:value" NEW TRANS + source (t: 0, p: 333) + address (t: 0, p: 1000) + 1.1.1.1/32 (t: 8, p: 1000) [VALUE] NEW TRANS + protocol (t: 0, p: 333) + all (t: 8, p: 1000) [VALUE] [SYNTAX] NEW TRANS + protocol (t: 0, p: 333) + all (t: 8, p: 1000) [VALUE] [SYNTAX] NEW TRANS + load-balancing (t: 0, p: 1000) + wan (t: 0, p: 1000) [DELETE] [COMMIT] + rule (t: 0, p: 1000) [MULTI] + 1 (t: 1, p: 1000) [VALUE] + 2 (t: 1, p: 1000) [VALUE] Where protocol is a child node of "rule:value" This should allow us to compress some of the entries given the current state of the priority file.
2009-04-08added syslog entries for debug statements.slioch
2009-04-01orphaned parent supportslioch
2009-03-31change noop to active for env variable--this is more consistent with the ↵slioch
action being applied.