diff options
author | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2012-05-30T02·59-0400 |
---|---|---|
committer | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2012-05-30T02·59-0400 |
commit | 4bc4da331aae13be8a39e768524a854597addd8a (patch) | |
tree | 5fccb805c1d27bd82c935f87a97f1a6cd3b29176 /src/libstore/store-api.cc | |
parent | 2c26985835cf82ed5d2979c3a400f72f6aeba32f (diff) |
Reserve some disk space for the garbage collector
We can't open a SQLite database if the disk is full. Since this prevents the garbage collector from running when it's most needed, we reserve some dummy space that we can free just before doing a garbage collection. This actually revives some old code from the Berkeley DB days. Fixes #27.
Diffstat (limited to 'src/libstore/store-api.cc')
-rw-r--r-- | src/libstore/store-api.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/libstore/store-api.cc b/src/libstore/store-api.cc index 19bc048abd02..b64988268cdb 100644 --- a/src/libstore/store-api.cc +++ b/src/libstore/store-api.cc @@ -322,10 +322,10 @@ namespace nix { boost::shared_ptr<StoreAPI> store; -boost::shared_ptr<StoreAPI> openStore() +boost::shared_ptr<StoreAPI> openStore(bool reserveSpace) { if (getEnv("NIX_REMOTE") == "") - return boost::shared_ptr<StoreAPI>(new LocalStore()); + return boost::shared_ptr<StoreAPI>(new LocalStore(reserveSpace)); else return boost::shared_ptr<StoreAPI>(new RemoteStore()); } |