From 3cf811ead0f1dcdcb4c8c6e7ea0c97f99220a38f Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sun, 30 Oct 2011 16:49:49 -0400 Subject: [PATCH] update; status is no longer slow --- doc/todo/cache_key_info.mdwn | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/doc/todo/cache_key_info.mdwn b/doc/todo/cache_key_info.mdwn index 791584836d..d4352ccf7f 100644 --- a/doc/todo/cache_key_info.mdwn +++ b/doc/todo/cache_key_info.mdwn @@ -7,13 +7,14 @@ but that's out of scope -- and recent git-annex versions use queuing to save git add from piling up too much in the index.) But currently two git-annex commands are quite slow when annexes become large -in quantity of files. These are unused and stats +in quantity of files. These are unused and status. (Both have --fast versions that don't do as much). +> (Update: status has become acceptably fast; most of its slowdown was due to using a bad data structure; scanning the tree is not particularly slow and it no longer looks at the git-annex branch.) -Both are slow because both need two pieces of information that are not +unused is slow because it needs two pieces of information that are not quick to look up, and require examining the whole repo, very seekily: -1. The keys present in the annex. Found by looking thru .git/annex/objects. +1. The keys present in the annex. Found by looking thru .git/annex/objects 2. The keys referenced by files in git. Found by finding every file in git, and looking at its symlink.