Commit graph

25723 commits

Author SHA1 Message Date
Joey Hess
3b89d5a20c
implement lockContent for ssh remotes 2015-10-09 16:55:41 -04:00
Joey Hess
6d4f741d5f
cleanup changelog 2015-10-09 16:18:16 -04:00
Joey Hess
e392ec112f
also generate a drop safety proof for move --from remote 2015-10-09 16:16:03 -04:00
Joey Hess
b944da832b
tests and verified that the bug is fixed, in all the cases I identified 2015-10-09 15:59:42 -04:00
Joey Hess
6a72045707
fix local dropping to not require extra locking of copies, but only that the local copy be locked for removal 2015-10-09 15:48:02 -04:00
Joey Hess
1043880432
improve message when drop failed due to no locked copy 2015-10-09 15:14:25 -04:00
Joey Hess
b021321aae
rename constructor 2015-10-09 15:01:33 -04:00
Joey Hess
45e1a7c361
verify local copy of content with locking 2015-10-09 14:57:32 -04:00
wsha.code+ga@b38779424f41c5701bbe5937340be43ff1474b2d
a8106c69c3 2015-10-09 18:45:13 +00:00
Joey Hess
a5e74e9e64
display drop safety proofs in debug mode 2015-10-09 13:47:19 -04:00
wsha.code+ga@b38779424f41c5701bbe5937340be43ff1474b2d
923c5cdbf2 Added a comment: post-receive hook 2015-10-09 17:41:51 +00:00
Joey Hess
865dd11dbf
fix lockKey to run callback in original Annex monad, not local remote's 2015-10-09 13:35:28 -04:00
Joey Hess
4c6095b6f5
content locking during drop working for local git remotes
Only ssh remotes lack locking now
2015-10-09 13:12:58 -04:00
Joey Hess
ceb5819538
finish and use lockContent interface 2015-10-09 12:36:04 -04:00
Joey Hess
cf79dffa4c
improve drop proof code 2015-10-09 11:09:46 -04:00
Joey Hess
f57ac29be1
refactor 2015-10-09 10:30:22 -04:00
https://www.google.com/accounts/o8/id?id=AItOawnmF_9CAtfqdZkC4e-_dCX-rK5bqh4RWkw
405deb3d2f removed 2015-10-09 08:47:42 +00:00
https://www.google.com/accounts/o8/id?id=AItOawnmF_9CAtfqdZkC4e-_dCX-rK5bqh4RWkw
d67e11cca4 Added a comment 2015-10-09 08:45:45 +00:00
https://www.google.com/accounts/o8/id?id=AItOawnmF_9CAtfqdZkC4e-_dCX-rK5bqh4RWkw
12058979ee Added a comment 2015-10-09 08:45:25 +00:00
https://www.google.com/accounts/o8/id?id=AItOawnmF_9CAtfqdZkC4e-_dCX-rK5bqh4RWkw
def02b59e9 2015-10-09 08:35:31 +00:00
darkfeline
103a72745d Added a comment 2015-10-09 02:25:57 +00:00
darkfeline
7591861ffb 2015-10-09 02:19:40 +00:00
darkfeline
c3df43e92c Added a comment: Sharing S3 bucket between repos 2015-10-09 01:16:25 +00:00
Joey Hess
7f5958eec2
TrustedCopy is good enough to allow dropping
By definition, a trusted repository is trusted to always have its location
tracking log accurate. Thus, it should never be in a position where content
is being dropped from it concurrently, as that would result in the location
tracking log not being accurate.
2015-10-08 18:34:48 -04:00
Joey Hess
e4a33967a1
try harder to verify until at least one VerifiedCopyLock is obtained
This avoids a failure where eg, we start with RecentlyVerifiedCopies
for all remotes, and so didn't do any active verification, which is
required.

Also, dedup the list of VerifiedCopies when checking if we have enough,
in case 2 copies of a UUID slip in.
2015-10-08 18:20:36 -04:00
Joey Hess
b17f5da6c9
require 1 locked copy while dropping from local or a remote
See doc/bugs/concurrent_drop--from_presence_checking_failures.mdwn for
discussion about why 1 locked copy is all we can require, and how this
fixes concurrent dropping bugs.

Note that, since nothing yet generates a VerifiedCopyLock yet, this commit
breaks dropping temporarily.
2015-10-08 18:11:39 -04:00
Joey Hess
c75c79864d
support invalidating existing VerifiedCopys 2015-10-08 17:58:32 -04:00
Joey Hess
90f7c4b6a2
add VerifiedCopy data type
There should be no behavior changes in this commit, it just adds a more
expressive data type and adjusts code that had been passing around a [UUID]
or sometimes a Maybe Remote to instead use [VerifiedCopy].

Although, since some functions were taking two different [UUID] lists,
there's some potential for me to have gotten it horribly wrong.
2015-10-08 16:55:11 -04:00
Joey Hess
b1abe59193
add removeKey action to Remote
Not implemented for any remotes yet; probably the git remote is the only
one that will ever implement it.
2015-10-08 15:01:38 -04:00
Joey Hess
beedf1da25
unused import 2015-10-08 14:59:34 -04:00
Joey Hess
9cb9dab69b
I think this comment is stale/confusing; remove 2015-10-08 14:51:44 -04:00
Joey Hess
5240a9f315
git-annex-shell: Added lockcontent command, to prevent dropping of key's content. 2015-10-08 14:47:46 -04:00
Joey Hess
4d50958ed7
add lockContentShared
Also, rename lockContent to lockContentExclusive

inAnnexSafe should perhaps be eliminated, and instead use
`lockContentShared inAnnex`. However, I'm waiting on that, as there are
only 2 call sites for inAnnexSafe and it's fiddly.
2015-10-08 14:29:35 -04:00
Joey Hess
f52d4b684d
export FileMode type 2015-10-08 14:26:21 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
2d2200fac2 Added a comment: ah -- the 32bit build I guess 2015-10-08 17:50:50 +00:00
Joey Hess
c8fad345f2
add tryLockShared 2015-10-08 13:40:23 -04:00
Joey Hess
9461019e9a
open lock file ReadOnly when taking shared lock
It's only necessary to open a file for write when taking an exclusive lock.
2015-10-08 13:34:49 -04:00
https://me.yahoo.com/a/EbvxpTI_xP9Aod7Mg4cwGhgjrCrdM5s-#7c0f4
4b6656d883 Added a comment: standalone builds 2015-10-08 16:35:11 +00:00
jec@8edf298ac8f8152bffcd4fdc1a310949d3547fe4
a175f476ab Added a comment: Git Version 2015-10-07 20:24:05 +00:00
ovidiu@66ace8a8d99ce938b0538ffa0f26d30db02a9626
585af1165f Added a comment 2015-10-07 20:22:16 +00:00
ovidiu@66ace8a8d99ce938b0538ffa0f26d30db02a9626
aba4fe08f7 Added a comment 2015-10-07 20:12:20 +00:00
Joey Hess
cb4c950afd getting proof-y 2015-10-07 15:52:56 -04:00
Joey Hess
976110b992 Debian: Remove dependency on transformers library, as it is now included in ghc.
Backporters will need to revert this.
2015-10-07 12:26:48 -04:00
Joey Hess
c454b82c52 titles 2015-10-07 11:28:07 -04:00
Joey Hess
f37c2c6a73 indents 2015-10-07 11:25:55 -04:00
Joey Hess
23b8f6c1fe alternative solution 2015-10-07 11:23:27 -04:00
Joey Hess
4bfaaf184c analysis of some topologies, and idea to generate moves 2015-10-07 11:03:15 -04:00
Joey Hess
61c45072e6 Debian: Add torrent library to build-depends as it's packaged now, and stop recommending bittornado | bittorrent. 2015-10-07 09:08:37 -04:00
Joey Hess
3c6f314545 be verbose to debug problem with aws 2015-10-06 19:56:25 -04:00
Joey Hess
9c5edd2975 add test cases for copy --auto
(Only --from for now, should add --to sometime but I'm on low sleep so this
is the mininal test to catch the reversion just fixed, bad me for doing it
backwards and incompletely.)
2015-10-06 17:35:29 -04:00