Merge branch 'master' of ssh://git-annex.branchable.com
This commit is contained in:
commit
f6050f92ad
15 changed files with 175 additions and 1 deletions
|
@ -0,0 +1,8 @@
|
|||
[[!comment format=mdwn
|
||||
username="https://www.google.com/accounts/o8/id?id=AItOawk3Wgg0XiqYFwM_Pw1RxZwlpNFi65g17sM"
|
||||
nickname="James"
|
||||
subject="comment 3"
|
||||
date="2013-06-12T01:12:24Z"
|
||||
content="""
|
||||
Ah, ok, I presumed there was an option in git to set a per-repository ssh command. I've looked at vcsh, but I'm not that confident with git remotes, so I don't use it (I use hg). If a per-repository ssh command added to git, would you consider adding this?
|
||||
"""]]
|
|
@ -0,0 +1,12 @@
|
|||
[[!comment format=mdwn
|
||||
username="https://www.google.com/accounts/o8/id?id=AItOawnXybLxkPMYpP3yw4b_I6IdC3cKTD-xEdU"
|
||||
nickname="Matt"
|
||||
subject="comment 10"
|
||||
date="2013-06-11T19:27:04Z"
|
||||
content="""
|
||||
First off, I really like git-annex :-)
|
||||
|
||||
Secondly, if I make the change as suggested, what are the consequences? When you add files to the annex back-end it may still be open and being written to? But then the next hash-function will reveal the differences of an incomplete upload and fix things.... But it may be too late as it's sent to other repositories...hmmmmm...I guess I want to know if I do this will my data be safe? I suspect not.
|
||||
|
||||
Perhaps the race condition could be mitigated against (not solved) by simply introducing a slight delay? If only 5 secs it will catch many of these cases. And longer would prevent git committing files that I save, realize I've slightly got wrong, tweak and save again.
|
||||
"""]]
|
|
@ -0,0 +1,10 @@
|
|||
[[!comment format=mdwn
|
||||
username="http://joeyh.name/"
|
||||
nickname="joey"
|
||||
subject="comment 11"
|
||||
date="2013-06-12T17:03:07Z"
|
||||
content="""
|
||||
There's an annex.delayadd git config setting you can use that makes it wait a specified number of seconds before committing. So it would indeed be a workaround to set: `git config annex.delayadd 2`
|
||||
|
||||
However, I'm pretty confident I can entirely avoid this problem, safely.
|
||||
"""]]
|
|
@ -0,0 +1,8 @@
|
|||
[[!comment format=mdwn
|
||||
username="http://joeyh.name/"
|
||||
nickname="joey"
|
||||
subject="comment 7"
|
||||
date="2013-06-11T15:14:44Z"
|
||||
content="""
|
||||
Re-reading, I see you're using Fedora and OSX.
|
||||
"""]]
|
|
@ -0,0 +1,8 @@
|
|||
[[!comment format=mdwn
|
||||
username="http://joeyh.name/"
|
||||
nickname="joey"
|
||||
subject="comment 8"
|
||||
date="2013-06-11T15:17:56Z"
|
||||
content="""
|
||||
I can reproduce the bug. Doesn't look likely to involve a race, since it happens every time.
|
||||
"""]]
|
|
@ -0,0 +1,16 @@
|
|||
[[!comment format=mdwn
|
||||
username="http://joeyh.name/"
|
||||
nickname="joey"
|
||||
subject="comment 9"
|
||||
date="2013-06-11T15:30:14Z"
|
||||
content="""
|
||||
My guess about the write bit seems to be spot on. Which does mean it's a race, just one that happens to be easy to reproduce. It does not happen every time, but 1 time out of 10 or more often.
|
||||
|
||||
You can try commenting out the `preventWrite` line in `Command/Add.hs` and rebuilding to see it fix it for you too. I will need to think long and hard about how to make files be ingested safely without turning off the write bit. But, I had been meaning to work on that at some point anyway, so good to have this bug to make it happen.
|
||||
|
||||
I instrumented latexmk's call to `$out_handle->open` to see how it's failing:
|
||||
|
||||
open failed: Permission denied 256
|
||||
|
||||
Which confirms the problem. It seems that it first creates the file, and then closes it, and then re-opens it to write to it some more. git-annex gets in between these two calls and messes up the permissions behind its back.
|
||||
"""]]
|
Loading…
Add table
Add a link
Reference in a new issue