small git-annex get speedup

Remove an redundant inAnnex check. The checkContentPresent handles that,
and after the last commit also does in batch mode.
This commit is contained in:
Joey Hess 2020-07-22 14:29:30 -04:00
parent 1be92381ec
commit 4685612f43
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
3 changed files with 5 additions and 6 deletions

View file

@ -70,7 +70,7 @@ startKeys from (key, ai) = checkFailedTransferDirection ai Download $
start' :: Annex Bool -> Maybe Remote -> Key -> AssociatedFile -> ActionItem -> CommandStart
start' expensivecheck from key afile ai =
stopUnless (not <$> inAnnex key) $ stopUnless expensivecheck $
stopUnless expensivecheck $
case from of
Nothing -> go $ perform key afile
Just src ->

View file

@ -75,7 +75,10 @@ startKey o afile (key, ai) = case fromToOptions o of
haskey <- flip Remote.hasKey key =<< getParsed r
case haskey of
Left _ -> stop
Right True -> Command.Get.start' (return True) Nothing key afile ai
Right True -> ifM (inAnnex key)
( stop
, Command.Get.start' (return True) Nothing key afile ai
)
Right False -> ifM (inAnnex key)
( do
numcopies <- getnumcopies

View file

@ -37,10 +37,6 @@ and precache them.
> > > Still todo:
> > >
> > > * move, copy, drop, and mirror were left not using the location log caching yet
> > > * get is left with an unncessary inAnnex check so could be sped up
> > > a little bit more. Above improvements to batch mode would allow
> > > fixing this.
> > >
Another thing that the same cat-file --buffer approach could be used with
is to cat the annex links. Git.LsFiles.inRepoDetails provides the Sha