Merge branch 'master' of ssh://git-annex.branchable.com
This commit is contained in:
commit
a4e15a7cf2
3 changed files with 56 additions and 0 deletions
|
@ -0,0 +1,23 @@
|
|||
This is a follow-up to [this
|
||||
qbug](http://git-annex.branchable.com/bugs/WORM_keys_differ_depending_on_working_dir_during_add/).
|
||||
Thank you for your fix there! However, if I understood correctly, you
|
||||
indicated in your reply that the current fix completely removes the
|
||||
relative path component from WORM keys. I gave some thought to this
|
||||
and believe not having the relative path encoded inside WORM keys
|
||||
makes key collisions (and accordingly data-loss) a very dire problem,
|
||||
while they are not of practical concern if the relative path is
|
||||
encoded.
|
||||
|
||||
When relative paths are encoded within the key, a collision can only
|
||||
occur when a file in the same directory is annexed twice within the
|
||||
resolution of the mtime component inside the key (i.e., one second).
|
||||
As such, unless one adds files automatically with a period of < 1s,
|
||||
one can very much be certain that no collisions come up.
|
||||
|
||||
Without relative paths, however, one could never be certain that
|
||||
adding a file will not result in data-loss.
|
||||
|
||||
Instead of just using the basename, WORM keys could be kept stable by
|
||||
using the relative path and anchoring it to the root of the
|
||||
repository.
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
[[!comment format=mdwn
|
||||
username="http://svario.it/gioele"
|
||||
nickname="gioele"
|
||||
subject="comment 3"
|
||||
date="2014-08-13T06:36:52Z"
|
||||
content="""
|
||||
This is strange: I can replicate the problem on three different Ubuntu machines (12.04.5 32 and 64 bit, 14.04 64 bit) using that script.
|
||||
|
||||
I attached to the gist [the execution log in direct mode](https://gist.github.com/gioele/dde462df89edfe17c5e3#file-annex-direct-log) (where the bug is shown), the [log in indirect mode](https://gist.github.com/gioele/dde462df89edfe17c5e3#file-annex-indirect-log) (where the bug does not appear), and a [diff between the two](https://gist.github.com/gioele/dde462df89edfe17c5e3#file-log-diff). I hope this helps.
|
||||
"""]]
|
|
@ -0,0 +1,23 @@
|
|||
[[!comment format=mdwn
|
||||
username="http://svario.it/gioele"
|
||||
nickname="gioele"
|
||||
subject="comment 4"
|
||||
date="2014-08-13T06:40:12Z"
|
||||
content="""
|
||||
Talking about the three possible causes for this bug,
|
||||
|
||||
> 1) pc1 has not pushed git-annex branch to origin (or pushed it after pc2 pulled)
|
||||
|
||||
pc1 pushes using `git annex sync -c annex.alwayscommit=true origin`. This should be enough, isn't it?
|
||||
|
||||
> 2) pc2 has not fetched git-annex branch from origin
|
||||
|
||||
The pc2 repository is created with `git clone localhost:/tmp/annex/Docs.git`, so there branches should all be there. I tried adding a `git fetch --all` to the script but it makes no difference. This is the list of branches in pc2:
|
||||
|
||||
* master
|
||||
remotes/origin/HEAD -> origin/master
|
||||
remotes/origin/master
|
||||
remotes/origin/synced/git-annex
|
||||
remotes/origin/synced/master
|
||||
|
||||
"""]]
|
Loading…
Add table
Add a link
Reference in a new issue