| Issue 2977: | Push with Missing tree & download is NOT Incremental mode | |
| 2 people starred this issue and may be notified of changes. | Back to list |
Please release the gerrit with jgit 4.5 bug fix quickly. Thanks. Affected Version: All gerrit versions which are NOT used jgit 4.5(fix bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=422988) Because of this bug, we will get Missing tree bug and download is NOT Incremental mode. And the following is the steps which reproduce the problem: Please take case of the Missing tree problem and the objects count value. # Native C git version is 2.1.1 ± % git --version git version 2.1.1 ### Init a problem git to okserver(gerrit-master-3862ba2) and the errorserver(gerrit 2.9.1 Release) #Work directory base ± % mkdir testdir #Work directory base ± % cd testdir #Work directory base/testdir ± % mkdir initgit #Work directory base/testdir ± % cd initgit #Work directory base/testdir/initgit ± % git init Initialized empty Git repository in base/testdir/initgit/.git/ #Work directory base/testdir/initgit ± % git remote add errorserver ssh://user@errorserver:29418/sandbox #Work directory base/testdir/initgit ± % git remote add okserver ssh://user@okserver:29418/sandbox ## Create objects #Work directory base/testdir/initgit ± % echo 'Blob object content' | git hash-object -w --stdin 7f9cae7daa0dc95c52dcd3fb0df3ad0f154c7f73 #Work directory base/testdir/initgit ± % git update-index --add --cacheinfo 100644,7f9cae7daa0dc95c52dcd3fb0df3ad0f154c7f73,TestContent.txt #Work directory base/testdir/initgit ± % git write-tree 09fa8b7be3d771ca3ee5d6327fc7223bbef3abe6 #Work directory base/testdir/initgit ± % echo 'Commit message First' | git commit-tree 09fa8b7be3d771ca3ee5d6327fc7223bbef3abe6 7cc1d873671999517926808fdd39f09d592757bf #Work directory base/testdir/initgit ± % echo 'Commit message Second' | git commit-tree 09fa8b7be3d771ca3ee5d6327fc7223bbef3abe6 196b3e85efd89e2a081790009132d8529e076e25 ## Push to errorserver #Work directory base/testdir/initgit ± % git push errorserver 7cc1d873671999517926808fdd39f09d592757bf:refs/heads/FullBranch Counting objects: 3, done. Writing objects: 100% (3/3), 249 bytes | 0 bytes/s, done. Total 3 (delta 0), reused 0 (delta 0) remote: Processing changes: refs: 1, done To ssh://user@errorserver:29418/sandbox * [new branch] 7cc1d873671999517926808fdd39f09d592757bf -> FullBranch # !!!IMPORTANT!!! Missing tree because of the jgit bug #Work directory base/testdir/initgit ± % git push errorserver 196b3e85efd89e2a081790009132d8529e076e25:refs/heads/IncBranch Counting objects: 1, done. Writing objects: 100% (1/1), 167 bytes | 0 bytes/s, done. Total 1 (delta 0), reused 0 (delta 0) error: unpack failed: error Missing tree 09fa8b7be3d771ca3ee5d6327fc7223bbef3abe6 fatal: Unpack error, check server log To ssh://user@errorserver:29418/sandbox ! [remote rejected] 196b3e85efd89e2a081790009132d8529e076e25 -> IncBranch (n/a (unpacker error)) error: failed to push some refs to 'ssh://user@errorserver:29418/sandbox' #Work directory base/testdir/initgit #You should use no-thin mode to push ± % git push errorserver 196b3e85efd89e2a081790009132d8529e076e25:refs/heads/IncBranch --no-thin Counting objects: 3, done. Writing objects: 100% (3/3), 251 bytes | 0 bytes/s, done. Total 3 (delta 0), reused 0 (delta 0) remote: Processing changes: refs: 1, done To ssh://user@errorserver:29418/sandbox * [new branch] 196b3e85efd89e2a081790009132d8529e076e25 -> IncBranch #Work directory base/testdir/initgit ± % git push okserver 7cc1d873671999517926808fdd39f09d592757bf:refs/heads/FullBranch Counting objects: 3, done. Writing objects: 100% (3/3), 249 bytes | 0 bytes/s, done. Total 3 (delta 0), reused 0 (delta 0) remote: Processing changes: refs: 1, done To ssh://user@okserver:29418/sandbox * [new branch] 7cc1d873671999517926808fdd39f09d592757bf -> FullBranch #!!!IMPORTANT!!! okserver is PASS #Work directory base/testdir/initgit ± % git push okserver 196b3e85efd89e2a081790009132d8529e076e25:refs/heads/IncBranch Counting objects: 1, done. Writing objects: 100% (1/1), 167 bytes | 0 bytes/s, done. Total 1 (delta 0), reused 0 (delta 0) remote: Processing changes: refs: 1, done To ssh://user@okserver:29418/sandbox * [new branch] 196b3e85efd89e2a081790009132d8529e076e25 -> IncBranch ### Check for download with Incremental mode #Work directory base/testdir/initgit ± % cd .. #Work directory base/testdir ± % mkdir errorservergit #Work directory base/testdir ± % cd errorservergit #Work directory base/testdir/errorservergit ± % git init Initialized empty Git repository in /home/wpc/workspace/tvs/debug/testdir/errorservergit/.git/ #Work directory base/testdir/errorservergit ± % git remote add errorserver ssh://user@errorserver:29418/sandbox #Work directory base/testdir/errorservergit ± % git fetch errorserver FullBranch remote: Counting objects: 3, done remote: Finding sources: 100% (3/3) remote: Total 3 (delta 0), reused 3 (delta 0) Unpacking objects: 100% (3/3), done. From ssh://errorserver:29418/sandbox * branch FullBranch -> FETCH_HEAD * [new branch] FullBranch -> errorserver/FullBranch ###!!!IMPORTANT!!! fetch with Incremental mode failed, download 3 objects #Work directory base/testdir/errorservergit ± % git fetch errorserver IncBranch remote: Counting objects: 3, done remote: Finding sources: 100% (3/3) remote: Total 3 (delta 0), reused 3 (delta 0) Unpacking objects: 100% (3/3), done. From ssh://errorserver:29418/sandbox * branch IncBranch -> FETCH_HEAD * [new branch] IncBranch -> errorserver/IncBranch ### Okserver #Work directory base/testdir/errorservergit ± % cd .. #Work directory base/testdir ± % mkdir okservergit #Work directory base/testdir ± % cd okservergit #Work directory base/testdir/okservergit ± % git remote add okserver ssh://user@okserver:29418/sandbox #Work directory base/testdir/okservergit ± % git fetch okserver FullBranch warning: no common commits remote: Counting objects: 3, done remote: Finding sources: 100% (3/3) remote: Total 3 (delta 0), reused 3 (delta 0) Unpacking objects: 100% (3/3), done. From ssh://okserver:29418/sandbox * branch FullBranch -> FETCH_HEAD * [new branch] FullBranch -> okserver/FullBranch ###!!!IMPORTANT!!! fetch with Incremental mode pass, download only 1 objects #Work directory base/testdir/okservergit ± % git fetch okserver IncBranch remote: Counting objects: 1, done remote: Finding sources: 100% (1/1) remote: Total 1 (delta 0), reused 1 (delta 0) Unpacking objects: 100% (1/1), done. From ssh://okserver:29418/sandbox * branch IncBranch -> FETCH_HEAD * [new branch] IncBranch -> okserver/IncBranch
Oct 19, 2014
#1
qjgw...@gmail.com
Oct 19, 2014
It works like the Issue 2296 |
|
| ► Sign in to add a comment |