summaryrefslogtreecommitdiff
path: root/doc/bugs/committing_an_edited_file_fails_with___34__hGetBuf__58___Invalid_argument__34__
diff options
context:
space:
mode:
Diffstat (limited to 'doc/bugs/committing_an_edited_file_fails_with___34__hGetBuf__58___Invalid_argument__34__')
-rw-r--r--doc/bugs/committing_an_edited_file_fails_with___34__hGetBuf__58___Invalid_argument__34__/comment_1_e2bc83fc04641c3547aeb1830da0d947._comment27
-rw-r--r--doc/bugs/committing_an_edited_file_fails_with___34__hGetBuf__58___Invalid_argument__34__/comment_2_b436936c502a40c01f82e64d97f1875e._comment42
-rw-r--r--doc/bugs/committing_an_edited_file_fails_with___34__hGetBuf__58___Invalid_argument__34__/comment_3_f7630c2ede7f4a42e9ccf06025c5f18a._comment7
3 files changed, 0 insertions, 76 deletions
diff --git a/doc/bugs/committing_an_edited_file_fails_with___34__hGetBuf__58___Invalid_argument__34__/comment_1_e2bc83fc04641c3547aeb1830da0d947._comment b/doc/bugs/committing_an_edited_file_fails_with___34__hGetBuf__58___Invalid_argument__34__/comment_1_e2bc83fc04641c3547aeb1830da0d947._comment
deleted file mode 100644
index 4046ad7bb..000000000
--- a/doc/bugs/committing_an_edited_file_fails_with___34__hGetBuf__58___Invalid_argument__34__/comment_1_e2bc83fc04641c3547aeb1830da0d947._comment
+++ /dev/null
@@ -1,27 +0,0 @@
-[[!comment format=mdwn
- username="joey"
- subject="""comment 1"""
- date="2016-10-05T17:02:12Z"
- content="""
-By using git commit -a to commit changes to a large annexed file, you
-are causing git to first add the file to the git repository, and then
-git-annex has to go fix up and convert it back to an annexed file.
-
-So, you probably don't want to be doing that, irrespective of this bug.
-Storing the file content in the git repository will waste disk space until
-git gc gets around to cleaning it up.
-
-Instead, use `git annex add` on the file after editing it, and then commit
-the result. As well as not cluttering up git with large unused objects,
-that will be generally faster, and will probably avoid this bug.
-
-----
-
-I've reproduced on linux a behavior that probably has the same root cause.
-It looks like git-annex pre-commit is reading the whole content of the
-large file from git cat-file, and buffering it in memory. Of course
-this uses a lot of memory and will fail for some size files, and it
-should definitely not be doing this.
-
-Suspect this is a reversion caused by the changes to support v6 mode.
-"""]]
diff --git a/doc/bugs/committing_an_edited_file_fails_with___34__hGetBuf__58___Invalid_argument__34__/comment_2_b436936c502a40c01f82e64d97f1875e._comment b/doc/bugs/committing_an_edited_file_fails_with___34__hGetBuf__58___Invalid_argument__34__/comment_2_b436936c502a40c01f82e64d97f1875e._comment
deleted file mode 100644
index 8fe955913..000000000
--- a/doc/bugs/committing_an_edited_file_fails_with___34__hGetBuf__58___Invalid_argument__34__/comment_2_b436936c502a40c01f82e64d97f1875e._comment
+++ /dev/null
@@ -1,42 +0,0 @@
-[[!comment format=mdwn
- username="joey"
- subject="""comment 2"""
- date="2016-10-05T18:04:21Z"
- content="""
-Nothing to do with v6 actually.
-[[!commit 412dcb8017d9d42bc1fb2b5a7ae5418410cde539]] and a subsequent
-commit caused this behavior.
-
-In order to tell if a file is unlocked, the type needs to have changed
-from a symlink to a regular file, and the symlink needs to have been
-an annexed link (and not some other symlink). That commit made it check
-catKeyFileHEAD, which necessarily reads the whole content of the last
-committed version of the file from git cat-file.
-
-A later commit added a check to catKeyFile, which reads the version of the
-file that is staged. Due to the git commit -a, the whole file content has
-been staged, and so that is where the large file content is read from git
-cat-file in git annex pre-commit.
-
-For pre-commit's purposes, the catKeyFile check is never going to find an
-annexed link, since the whole file content has been staged by git commit.
-
-But, rather than such a specific fix, I think that the core problem to fix
-is that catKey reads the whole content of a large object from git. That's
-just too expensive for git repos that contain large objects, for whatever
-reason.
-
-For example, grepping for catKey, I quickly found another place where
-a large file is read from git cat-file, in the adjusted branch code.
-
-So, let's make catKey check the object size before reading it; if it's
-> 8192 bytes it's certianly not a symlink. This wil need a separate
-`git cat-file --batch-check` process, and a little extra work. It which will
-probably not be very expensive due to disk caching, but if it does cause
-a slowdown, the main thing will be to handling of unlocked files in v6
-mode, which needs to use catKey.
-
-I've done this, and it fixes the problem I saw. I am not 100% sure if
-that's the same problem that occurred on OSX. (Which I was also able to
-reproduce). Probably is. Need to verify. Update: Verified fix.
-"""]]
diff --git a/doc/bugs/committing_an_edited_file_fails_with___34__hGetBuf__58___Invalid_argument__34__/comment_3_f7630c2ede7f4a42e9ccf06025c5f18a._comment b/doc/bugs/committing_an_edited_file_fails_with___34__hGetBuf__58___Invalid_argument__34__/comment_3_f7630c2ede7f4a42e9ccf06025c5f18a._comment
deleted file mode 100644
index 673d0f335..000000000
--- a/doc/bugs/committing_an_edited_file_fails_with___34__hGetBuf__58___Invalid_argument__34__/comment_3_f7630c2ede7f4a42e9ccf06025c5f18a._comment
+++ /dev/null
@@ -1,7 +0,0 @@
-[[!comment format=mdwn
- username="ddenis"
- subject="comment 3"
- date="2016-10-06T16:59:03Z"
- content="""
-Ah I didn't think that \"git commit -a\" would add it to git's index. I should've used \"git annex add\" indeed. But thank you for looking into this issue and fixing it so quickly!
-"""]]