diff options
author | http://joeyh.name/ <joey@web> | 2013-04-04 19:47:50 +0000 |
---|---|---|
committer | admin <admin@branchable.com> | 2013-04-04 19:47:50 +0000 |
commit | 19f2c23abc2f1ff5ada78b9a29d0023e2d48baf6 (patch) | |
tree | 10e2f34ad19ccc296b74ac1fa2f815086550d346 | |
parent | 3f8776455b450b543fc310b178ce0388aca5a9b5 (diff) |
Added a comment
-rw-r--r-- | doc/bugs/git-annex_on_crippled_filesystem_can_still_failed_due_to_case_/comment_2_c2a2f801a3e18ad597ff0acf2f104557._comment | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/doc/bugs/git-annex_on_crippled_filesystem_can_still_failed_due_to_case_/comment_2_c2a2f801a3e18ad597ff0acf2f104557._comment b/doc/bugs/git-annex_on_crippled_filesystem_can_still_failed_due_to_case_/comment_2_c2a2f801a3e18ad597ff0acf2f104557._comment new file mode 100644 index 000000000..8ab32ede2 --- /dev/null +++ b/doc/bugs/git-annex_on_crippled_filesystem_can_still_failed_due_to_case_/comment_2_c2a2f801a3e18ad597ff0acf2f104557._comment @@ -0,0 +1,22 @@ +[[!comment format=mdwn + username="http://joeyh.name/" + nickname="joey" + subject="comment 2" + date="2013-04-04T19:47:50Z" + content=""" +Whups, this bug report was closed; I almost missed this new bug and test case. + +So, on these filesystems that are horribly confused about case, it's possible for `mkdir FOO` to fail with \"already exists\", because there is a directory named `foo` ... but then `mkdir FOO/bar` fails with \"no such file or directory\". + +That is an intractable problem. It follows that it's simply not safe to use mixed case files on such a filesystem. You will always shoot your later self in the foot. (I personally think it's outright foolish to use a filesystem with such horrible semantics at all, but whatever.) + +So.. I took a good look at this, and it turns out that + +* since this is a crippled filesystem anyway, git-annex doesn't use symlinks on it +* so there's no reason to use the mixed case hash directories that we're stuck using to avoid breaking everyone's symlinks to the content +* so we can do what is already done for all bare repos, and make non-bare repos on crippled filesystems use the all-lower case hash directories +* which are, happily, all 3 letters long, so they cannot conflict with mixed case hash directories +* so I was able to 100% fix this and even resuming `git annex add` in the test case will recover and it will all just work. + +Yay! +"""]] |