Commit graph

13971 commits

Author SHA1 Message Date
Joey Hess
4dc4a9a385 assistant: Clear the list of failed transfers when doing a full transfer scan. This prevents repeated retries to download files that are not available, or are not referenced by the current git tree.
This is motivated by a user report that the assistant was repeatedly
retrying transfers of files that had been deleted (in direct mode, so
removing the only copy).

Note that the glacier code retries failed transfers after a while to retry
downloads that have aged long enough to be available. This is ok; if we're
doing a full transfer scan we'll retry on every file that is still in the
git tree.

Also note that this makes the assistant less likely to get every file
referenced by old revs of the git tree. Not something the assistant tries
to ensure anyway, so I feel this is acceptable.
2013-09-25 11:46:17 -04:00
Joey Hess
b405295aee hlint
test suite still passes
2013-09-25 03:09:06 -04:00
Joey Hess
3192b059b5 add back lost check that git-annex-shell supports gcrypt 2013-09-24 17:51:12 -04:00
Joey Hess
b6b461992e Merge branch 'master' of ssh://git-annex.branchable.com 2013-09-24 17:28:33 -04:00
Joey Hess
9aa116b527 devblog 2013-09-24 17:28:21 -04:00
Joey Hess
4c954661a1 git-annex-shell: Added support for operating inside gcrypt repositories.
* Note that the layout of gcrypt repositories has changed, and
  if you created one you must manually upgrade it.
  See http://git-annex.branchable.com/upgrades/gcrypt/
2013-09-24 17:25:47 -04:00
http://id.clacke.se/
5cdb1e0d19 Added a comment: +1 F-Droid 2013-09-24 18:36:48 +00:00
Joey Hess
f9e438c1bc factor out more ssh stuff from git remote
This has the dual benefits of making Remote.Git shorter, and letting
Remote.GCrypt use these utilities.
2013-09-24 13:37:41 -04:00
https://www.google.com/accounts/o8/id?id=AItOawmegJFSUlkCanL5EButSxQcRGfo9hPbMEg
037fe31f9c 2013-09-24 08:58:18 +00:00
https://www.google.com/accounts/o8/id?id=AItOawnR6E5iUghMWdUGlbA9CCs8DKaoigMjJXw
d2ef935fbf Added a comment: not working on my nexus 4 either 2013-09-24 07:37:28 +00:00
https://www.google.com/accounts/o8/id?id=AItOawmkBwMWvNKZZCge_YqobCSILPMeK6xbFw8
2f40cf553b Added a comment 2013-09-24 07:11:32 +00:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
71fbcd4db1 2013-09-23 23:47:22 +00:00
https://www.google.com/accounts/o8/id?id=AItOawnSenxKyE_2Z6Wb-EBMO8FciyRywjx1ZiQ
ee35d20070 Added a comment 2013-09-23 21:58:42 +00:00
Joey Hess
c869005231 future work 2013-09-23 17:39:53 -04:00
https://www.google.com/accounts/o8/id?id=AItOawmW0kg4uiMIhSHeVuvJFyo2VYMl7Qoej0s
d66757f704 Added a comment 2013-09-23 20:58:45 +00:00
Joey Hess
d1f88fe603 Merge branch 'master' of ssh://git-annex.branchable.com 2013-09-23 16:32:11 -04:00
Joey Hess
1d40d75f40 devblog 2013-09-23 16:30:51 -04:00
http://joeyh.name/
99d36e12cc Added a comment 2013-09-23 20:18:39 +00:00
https://www.google.com/accounts/o8/id?id=AItOawknwkXgi8SnK4QT32ANl3GMKvFLyQGeHqo
f16f304d65 2013-09-23 18:26:40 +00:00
Joey Hess
5600aee90b move stuff into .android
This simplifies my schroot bind mounts
2013-09-23 14:20:13 -04:00
Joey Hess
a143ab4451 remove odd utf-8 whitespace
broke the EvilSplicer on C locale
2013-09-23 13:58:03 -04:00
Joey Hess
78e90130c3 Merge branch 'android-rebuild' 2013-09-23 13:46:03 -04:00
Joey Hess
ccf95fb2a2 java needs /proc mounted in the chroot? why am I surprised? 2013-09-23 13:35:49 -04:00
Joey Hess
ecd2ccb87c env sanitization 2013-09-23 13:15:34 -04:00
Joey Hess
5a99ae9511 fix cd 2013-09-23 10:25:21 -04:00
Joey Hess
688aa083de update 2013-09-22 23:01:08 -04:00
Joey Hess
420a2fc898 work around stupid licence prompt 2013-09-22 22:55:40 -04:00
Joey Hess
1f5750a1ec blog the last 3 days and nights 2013-09-22 22:48:16 -04:00
Joey Hess
9cc3510127 Merge branch 'master' of ssh://git-annex.branchable.com 2013-09-22 22:48:05 -04:00
Joey Hess
96b8224b63 pin term 2013-09-22 22:47:20 -04:00
Joey Hess
dcb9dead6f Merge branch 'master' into android-rebuild 2013-09-22 22:45:51 -04:00
Joey Hess
3b992c5b97 need gettext to build gnupg 2013-09-22 22:43:09 -04:00
Joey Hess
e1a0ae3bc6 pin rsync 2013-09-22 22:40:36 -04:00
Joey Hess
b9d5a3e9f3 grr 2013-09-22 22:39:29 -04:00
Joey Hess
9e0398e31d pin openssh 2013-09-22 22:36:00 -04:00
Joey Hess
5cce5b36f2 fix clones 2013-09-22 22:27:02 -04:00
Joey Hess
51cc760e06 working on getting make androidapp to work now 2013-09-22 22:23:08 -04:00
Joey Hess
d6c2fa5199 explicit cryptohash dep 2013-09-22 21:53:01 -04:00
Joey Hess
5ac0fcd12f oops 2013-09-22 21:47:24 -04:00
Joey Hess
929aa1452d fix cd 2013-09-22 21:36:45 -04:00
https://me.yahoo.com/a/FHnTlSBo1eCGJRwueeKeB6.RCaPbGMPr5jxx8A--#ce0d8
004178ee89 Added a comment 2013-09-23 00:34:28 +00:00
Joey Hess
746d3d5e1f one more EvilSplicer hack for the night 2013-09-22 20:34:20 -04:00
Joey Hess
bf95d773ea Merge branch 'master' of ssh://git-annex.branchable.com 2013-09-22 20:18:23 -04:00
Joey Hess
8375e5f06d Merge remote-tracking branch 'orca/android-rebuild' into android-rebuild 2013-09-22 20:17:49 -04:00
Joey Hess
b30437b57e Merge remote-tracking branch 'in/android-rebuild' into android-rebuild 2013-09-23 01:16:42 +01:00
Joey Hess
6515ea8dde Merge remote-tracking branch 'in/master' into android-rebuild 2013-09-23 01:16:21 +01:00
Joey Hess
31b5ef6463 fix unix-time 2013-09-23 00:14:48 +00:00
Joey Hess
7390f08ef9 Use cryptohash rather than SHA for hashing.
This is a massive win on OSX, which doesn't have a sha256sum normally.

Only use external hash commands when the file is > 1 mb,
since cryptohash is quite close to them in speed.

SHA is still used to calculate HMACs. I don't quite understand
cryptohash's API for those.

Used the following benchmark to arrive at the 1 mb number.

1 mb file:

benchmarking sha256/internal
mean: 13.86696 ms, lb 13.83010 ms, ub 13.93453 ms, ci 0.950
std dev: 249.3235 us, lb 162.0448 us, ub 458.1744 us, ci 0.950
found 5 outliers among 100 samples (5.0%)
  4 (4.0%) high mild
  1 (1.0%) high severe
variance introduced by outliers: 10.415%
variance is moderately inflated by outliers

benchmarking sha256/external
mean: 14.20670 ms, lb 14.17237 ms, ub 14.27004 ms, ci 0.950
std dev: 230.5448 us, lb 150.7310 us, ub 427.6068 us, ci 0.950
found 3 outliers among 100 samples (3.0%)
  2 (2.0%) high mild
  1 (1.0%) high severe

2 mb file:

benchmarking sha256/internal
mean: 26.44270 ms, lb 26.23701 ms, ub 26.63414 ms, ci 0.950
std dev: 1.012303 ms, lb 925.8921 us, ub 1.122267 ms, ci 0.950
variance introduced by outliers: 35.540%
variance is moderately inflated by outliers

benchmarking sha256/external
mean: 26.84521 ms, lb 26.77644 ms, ub 26.91433 ms, ci 0.950
std dev: 347.7867 us, lb 210.6283 us, ub 571.3351 us, ci 0.950
found 6 outliers among 100 samples (6.0%)

import Crypto.Hash
import Data.ByteString.Lazy as L
import Criterion.Main
import Common

testfile :: FilePath
testfile = "/run/shm/data" -- on ram disk

main = defaultMain
        [ bgroup "sha256"
                [ bench "internal" $ whnfIO internal
                , bench "external" $ whnfIO external
                ]
        ]

sha256 :: L.ByteString -> Digest SHA256
sha256 = hashlazy

internal :: IO String
internal = show . sha256 <$> L.readFile testfile

external :: IO String
external = do
	s <- readProcess "sha256sum" [testfile]
        return $ fst $ separate (== ' ') s
2013-09-22 20:06:02 -04:00
Joey Hess
5e8bac96f1 cabal install from local git-annex cabal file 2013-09-22 19:30:44 -04:00
John
a60fcd6aac Added a comment 2013-09-22 22:20:22 +00:00