benchmarked numcopies .gitattributes in preferred content

Checking .gitattributes adds a full minute to a git annex find looking for
files that don't have enough copies. 2:25 increasts to 3:27. I feel this is
too much of a slowdown to justify making it the default. So, exposed two
versions of the preferred content expression, a slow one and a fast but
approximate one.

I'm using the approximate one in the default preferred content expressions
to avoid slowing down the assistant.
This commit is contained in:
Joey Hess 2014-01-21 18:46:39 -04:00
parent f7cdc40f7b
commit f2713a3bb9
8 changed files with 41 additions and 35 deletions

View file

@ -93,6 +93,8 @@ notArchived :: String
notArchived = "not (copies=archive:1 or copies=smallarchive:1)"
{- Most repositories want any content that is only on untrusted
- or dead repositories, or that otherwise does not have enough copies. -}
- or dead repositories, or that otherwise does not have enough copies.
- Does not look at .gitattributes since that is quite a lot slower.
-}
lastResort :: String -> PreferredContentExpression
lastResort s = "(" ++ s ++ ") or numcopiesneeded=1"
lastResort s = "(" ++ s ++ ") or approxlackingcopies=1"