diff options
author | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2012-03-26 20:00:02 +0200 |
---|---|---|
committer | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2012-03-26 20:00:02 +0200 |
commit | 8be1979f1ae4b85c36988f7b3cf8240c9682dc54 (patch) | |
tree | 80ec98cfb3ec5a86b72a9ee9f07d3ede4ee36b3c | |
parent | 19d9762ad5fc8d8db3e9a545a89309f08572cc9f (diff) |
Remove the --max-links GC option
We don't need this anymore now that current filesystems support more
than 32,000 files in a directory.
-rw-r--r-- | doc/manual/nix-store.xml | 11 | ||||
-rw-r--r-- | src/libstore/gc.cc | 12 | ||||
-rw-r--r-- | src/libstore/remote-store.cc | 2 | ||||
-rw-r--r-- | src/libstore/store-api.cc | 1 | ||||
-rw-r--r-- | src/libstore/store-api.hh | 4 | ||||
-rw-r--r-- | src/nix-store/nix-store.cc | 1 | ||||
-rw-r--r-- | src/nix-worker/nix-worker.cc | 2 |
7 files changed, 3 insertions, 30 deletions
diff --git a/doc/manual/nix-store.xml b/doc/manual/nix-store.xml index a32559c03..aaacb7cfb 100644 --- a/doc/manual/nix-store.xml +++ b/doc/manual/nix-store.xml @@ -212,7 +212,6 @@ linkend="sec-nix-build"><command>nix-build</command></link> does.</para> <arg choice='plain'><option>--delete</option></arg> </group> <arg><option>--max-freed</option> <replaceable>bytes</replaceable></arg> - <arg><option>--max-links</option> <replaceable>nrlinks</replaceable></arg> </cmdsynopsis> </refsection> @@ -280,16 +279,6 @@ options control what gets deleted and in what order: </varlistentry> - <varlistentry><term><option>--max-links</option> <replaceable>nrlinks</replaceable></term> - - <listitem><para>Keep deleting paths until the hard link count on - <filename>/nix/store</filename> is less than - <replaceable>nrlinks</replaceable>, then stop. This is useful for - very large Nix stores on filesystems with a 32000 subdirectories - limit (like <literal>ext3</literal>).</para></listitem> - - </varlistentry> - </variablelist> </para> diff --git a/src/libstore/gc.cc b/src/libstore/gc.cc index 95c715411..d81bf40c7 100644 --- a/src/libstore/gc.cc +++ b/src/libstore/gc.cc @@ -418,7 +418,7 @@ bool LocalStore::isActiveTempFile(const GCState & state, && state.tempRoots.find(string(path, 0, path.size() - suffix.size())) != state.tempRoots.end(); } - + bool LocalStore::tryToDelete(GCState & state, const Path & path) { checkInterrupt(); @@ -514,16 +514,6 @@ bool LocalStore::tryToDelete(GCState & state, const Path & path) throw GCLimitReached(); } - if (state.options.maxLinks) { - struct stat st; - if (stat(nixStore.c_str(), &st) == -1) - throw SysError(format("statting `%1%'") % nixStore); - if (st.st_nlink < state.options.maxLinks) { - printMsg(lvlInfo, format("link count on the store has dropped below %1%; stopping") % state.options.maxLinks); - throw GCLimitReached(); - } - } - } else printMsg(lvlTalkative, format("would delete `%1%'") % path); diff --git a/src/libstore/remote-store.cc b/src/libstore/remote-store.cc index c77a12870..0b8fa36f6 100644 --- a/src/libstore/remote-store.cc +++ b/src/libstore/remote-store.cc @@ -466,7 +466,7 @@ void RemoteStore::collectGarbage(const GCOptions & options, GCResults & results) writeStrings(options.pathsToDelete, to); writeInt(options.ignoreLiveness, to); writeLongLong(options.maxFreed, to); - writeInt(options.maxLinks, to); + writeInt(0, to); if (GET_PROTOCOL_MINOR(daemonVersion) >= 5) { /* removed options */ writeInt(0, to); diff --git a/src/libstore/store-api.cc b/src/libstore/store-api.cc index 36ade2170..19bc048ab 100644 --- a/src/libstore/store-api.cc +++ b/src/libstore/store-api.cc @@ -13,7 +13,6 @@ GCOptions::GCOptions() action = gcDeleteDead; ignoreLiveness = false; maxFreed = 0; - maxLinks = 0; } diff --git a/src/libstore/store-api.hh b/src/libstore/store-api.hh index 61bcaf505..a62a64816 100644 --- a/src/libstore/store-api.hh +++ b/src/libstore/store-api.hh @@ -53,10 +53,6 @@ struct GCOptions no limit. */ unsigned long long maxFreed; - /* Stop after the number of hard links to the Nix store directory - has dropped below `maxLinks'. */ - unsigned int maxLinks; - GCOptions(); }; diff --git a/src/nix-store/nix-store.cc b/src/nix-store/nix-store.cc index 404da2c51..fa96725b1 100644 --- a/src/nix-store/nix-store.cc +++ b/src/nix-store/nix-store.cc @@ -562,7 +562,6 @@ static void opGC(Strings opFlags, Strings opArgs) long long maxFreed = getIntArg<long long>(*i, i, opFlags.end()); options.maxFreed = maxFreed >= 1 ? maxFreed : 1; } - else if (*i == "--max-links") options.maxLinks = getIntArg<unsigned int>(*i, i, opFlags.end()); else throw UsageError(format("bad sub-operation `%1%' in GC") % *i); if (!opArgs.empty()) throw UsageError("no arguments expected"); diff --git a/src/nix-worker/nix-worker.cc b/src/nix-worker/nix-worker.cc index f5201ab6a..a95252350 100644 --- a/src/nix-worker/nix-worker.cc +++ b/src/nix-worker/nix-worker.cc @@ -477,7 +477,7 @@ static void performOp(unsigned int clientVersion, options.pathsToDelete = readStorePaths<PathSet>(from); options.ignoreLiveness = readInt(from); options.maxFreed = readLongLong(from); - options.maxLinks = readInt(from); + readInt(from); // obsolete field if (GET_PROTOCOL_MINOR(clientVersion) >= 5) { /* removed options */ readInt(from); |