diff options
author | Joey Hess <joey@kitenet.net> | 2012-03-11 18:04:58 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2012-03-11 18:04:58 -0400 |
commit | b3256946457ec8a2da056573bf49593b225adbd8 (patch) | |
tree | fb13abe0a14baefd0dbed5ccbc87052f4909d27a /debian | |
parent | ff3644ad38d210c5ce0ebfb5a2cf5e84bb3b47da (diff) |
getKeysPresent is now fully lazy
.. Allowing it to be used by things in constant space!
Random statistics: git annex status has gone from taking 239 mb
of memory and 26 seconds in a repo, to 8 mb and 13 seconds.
The trick here is the unsafeInterleaveIO, and the form of the function's
recursion, which I cribbed heavily from System.IO.HVFS.Utils.recurseDirStat.
The difference is, this one goes to a limited depth and avoids statting
everything.
Diffstat (limited to 'debian')
-rw-r--r-- | debian/changelog | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/debian/changelog b/debian/changelog index 6da54056c..120513806 100644 --- a/debian/changelog +++ b/debian/changelog @@ -6,7 +6,7 @@ git-annex (3.20120310) UNRELEASED; urgency=low * unused: Reduce memory usage significantly. Still not constant space, but now only needs to store the set of file contents that are present in the annex in memory. - * status: Fixed to run in nearly constant space. + * status: Fixed to run in constant space. -- Joey Hess <joeyh@debian.org> Sat, 10 Mar 2012 14:03:22 -0400 |