summaryrefslogtreecommitdiff
path: root/src/cstore/unionfs/cstore-unionfs.cpp
AgeCommit message (Collapse)Author
2015-07-07vyatta-cfg: remove unused unionfs mounts following unclean config exitsAlex Harpin
If a configuration session is exited uncleanly, either as a result of a network disconnect / timeout or other forced quit from within config mode, the unionfs mount is left in place. These remain until the system is rebooted, giving an error when unmounting the config directory. This commit checks for old configuartion directories when a user enters config mode, removing any found that are owned by that user but not part of any active configuration seesion. Bug #564 http://bugzilla.vyos.net/show_bug.cgi?id=564
2015-06-26vyatta-cfg: correct UnionfsCstore::do_umount error messageAlex Harpin
2015-01-11vyatta-cfg: fix for "failed to generate commited config"Alex Harpin
When changes are made to the system by more than one user, only the first user after a reboot is able to commit successfully, the others fail with "Failed to generate committed config". This is caused as a result of the underlying unionfs-fuse mount used for the system configuration and the fact that a .unionfs directory if left in the active configuration with permissions set such that only the original committing user can change them. Bug #403 http://bugzilla.vyos.net/show_bug.cgi?id=403
2014-04-30Removed dirty workaround for fuse completely.Kim Hagen
Use Build-iso to create /etc/fuse.conf file. Use pipe(),fork(),execl() functions instead of system() function to call unionfs-fuse.
2014-03-10Add umount functions for unionfs-fuse.Daniil Baturin
2014-03-10Import and adapt Kim Hagen's changes for union-fs support.Daniil Baturin
2012-07-13Restore original lock file semanticsStephen Hemminger
Don't fail if lock file already exists
2012-07-11Don't leak file descriptors to actionStephen Hemminger
Bug 8204 Make sure we don't handle unnecessary file descriptors to child processes. This is done by marking file descriptors as close on exec, and closing pipe before exec.
2012-03-22Bugfix 7267: make inodes allocate dynamicallyJohn Southworth
2011-05-18correct comment file handling in copy and minor cleanup.An-Cheng Huang
2011-05-17reimplement commit lockingAn-Cheng Huang
2011-05-16tweak directory handling for unionfsAn-Cheng Huang
2011-05-13provide more info on failuresAn-Cheng Huang
2011-05-10preliminary implementation of new commitAn-Cheng Huang
(cherry picked from commit 1b2a0fd1ae1e6dfc18e4f75f73cd7befb47cf538)
2011-04-06minor refactoringAn-Cheng Huang
2011-03-31add missing initializationAn-Cheng Huang
2011-03-31fix for bug 6966An-Cheng Huang
* fix paths issue in edit mode.
2011-03-17add config path abstraction and high-level cachingAn-Cheng Huang
* part of the config backend cleanup/optimization work. * improves the performance of "load" (w/o commit) by ~55% and "show" by ~15%.
2011-03-09switch query functions to use lower-level API directly.An-Cheng Huang
2011-03-01tweak map iterator usageAn-Cheng Huang
2011-03-01add caching for parsed config templatesAn-Cheng Huang
* this improves backend performance by ~15% in, e.g., "load" (w/o commit) and "show". * this is only temporary and eventually caching should be done at higher level for better performance, and that will require config path abstraction.
2011-02-28add config template abstractionAn-Cheng Huang
2011-02-18namespace reorgAn-Cheng Huang
2011-01-27rework/simplify path handlingAn-Cheng Huang
2010-12-10fix for bug 6026An-Cheng Huang
* for unionfs cstore implementation, enforce file size limit on both read and write and raise limit to 256 KB.
2010-11-22fix for bug 6459An-Cheng Huang
* don't throw away "unsaved" state when doing "discard".
2010-09-14fix for bug 6195An-Cheng Huang
* fix ".*" filtering.
2010-08-26mark changed ancestors up to the rootAn-Cheng Huang
2010-08-25switch to unordered_mapAn-Cheng Huang
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-20don't remove the workaround yetAn-Cheng Huang
* need to move changed status handling into the library.
2010-08-20remove workaround for "changed" status handlingAn-Cheng Huang
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-08-13change all vector/string size to size_t just to be safe.An-Cheng Huang
* would have been a problem if template tree becomes more than 2^32 levels deep or if value strings longer than 2^32 characters are allowed.
2010-08-09provide default edit levelAn-Cheng Huang
2010-08-03remove "def" and "node.val" usage from high-level operations.An-Cheng Huang
2010-07-31handle potential exceptions from filesystem operations.An-Cheng Huang
2010-07-30add default status observersAn-Cheng Huang
2010-07-28add cstore-specific header fileAn-Cheng Huang
2010-07-28add new cstore libraryAn-Cheng Huang