checkout out failed when doing partial clone in gerrit

310 views
Skip to first unread message

Longping Tang

unread,
Aug 2, 2022, 6:28:49 PM8/2/22
to Repo and Gerrit Discussion
1.  In gerrit 3.0.1, set uploadpack.allowFilter = true and uploadpack.allowAnySHA1InWant = true in the system level .gitconfig

2. clone with command: git clone --filter=blob:none ssh://GERRIT_SERVER/a/test

3. clone works fine, but checkout gives an error:
error: Server does not allow request for unadvertised object 040ee0a2fbdbc63fc4eb04563cad44496de2f2ca
error: Server does not allow request for unadvertised object 3b18e512dba79e4c8300dd08aeb37f8e728b8dad
error: Server does not allow request for unadvertised object 3b18e512dba79e4c8300dd08aeb37f8e728b8dad
error: Server does not allow request for unadvertised object 3b18e512dba79e4c8300dd08aeb37f8e728b8dad
error: unable to read sha1 file of hello.txt (3b18e512dba79e4c8300dd08aeb37f8e728b8dad)
error: Server does not allow request for unadvertised object 040ee0a2fbdbc63fc4eb04563cad44496de2f2ca
error: Server does not allow request for unadvertised object 040ee0a2fbdbc63fc4eb04563cad44496de2f2ca
error: unable to read sha1 file of src/hello.go (040ee0a2fbdbc63fc4eb04563cad44496de2f2ca)
fatal: unable to checkout working tree
warning: Clone succeeded, but checkout failed.

How can I solve this issue? 

Longping Tang

unread,
Aug 8, 2022, 10:06:44 PM8/8/22
to Repo and Gerrit Discussion
Am I missing some other configuration?

Longping Tang

unread,
Sep 1, 2022, 9:25:10 PM9/1/22
to Repo and Gerrit Discussion

I tried to configure as below
[uploadpack]
    allowTipSHA1InWant = true
    allowReachableSHA1InWant = true
    allowfilter = true

Do partial clone with command "git clone --filter=blob:none ssh://GERRIT_SERVER/a/test." and get another error:

fatal: remote error: want 040ee0a2fbdbc63fc4eb04563cad44496de2f2ca not valid
fatal: internal server error
fatal: remote error: want 3b18e512dba79e4c8300dd08aeb37f8e728b8dad not valid
fatal: internal server error
fatal: remote error: want 3b18e512dba79e4c8300dd08aeb37f8e728b8dad not valid

error: unable to read sha1 file of hello.txt (3b18e512dba79e4c8300dd08aeb37f8e728b8dad)
fatal: internal server error
fatal: remote error: want 040ee0a2fbdbc63fc4eb04563cad44496de2f2ca not valid
fatal: internal server error
fatal: remote error: want 040ee0a2fbdbc63fc4eb04563cad44496de2f2ca not valid

error: unable to read sha1 file of src/hello.go (040ee0a2fbdbc63fc4eb04563cad44496de2f2ca)
fatal: internal server error

fatal: unable to checkout working tree
warning: Clone succeeded, but checkout failed

Then I checked $GERRIT_SITE/logs/error_log, It shows:

org.eclipse.jgit.transport.UploadPackInternalServerErrorException
        at org.eclipse.jgit.transport.UploadPack.service(UploadPack.java:1035)
        at org.eclipse.jgit.transport.UploadPack.upload(UploadPack.java:780)
        at com.google.gerrit.sshd.commands.Upload.runImpl(Upload.java:77)
        at com.google.gerrit.sshd.AbstractGitCommand.service(AbstractGitCommand.java:98)
        at com.google.gerrit.sshd.AbstractGitCommand.access$000(AbstractGitCommand.java:31)
        at com.google.gerrit.sshd.AbstractGitCommand$1.run(AbstractGitCommand.java:63)
        at com.google.gerrit.sshd.BaseCommand$TaskThunk.run(BaseCommand.java:463)
        at com.google.gerrit.server.logging.LoggingContextAwareRunnable.run(LoggingContextAwareRunnable.java:83)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
        at com.google.gerrit.server.git.WorkQueue$Task.run(WorkQueue.java:610)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
Caused by: org.eclipse.jgit.transport.WantNotValidException: want 040ee0a2fbdbc63fc4eb04563cad44496de2f2ca not valid
        at org.eclipse.jgit.transport.UploadPack.checkNotAdvertisedWants(UploadPack.java:1884)
        at org.eclipse.jgit.transport.UploadPack.access$1(UploadPack.java:1855)
        at org.eclipse.jgit.transport.UploadPack$ReachableCommitTipRequestValidator.checkWants(UploadPack.java:1825)
        at org.eclipse.jgit.transport.UploadPack.parseWants(UploadPack.java:1730)
        at org.eclipse.jgit.transport.UploadPack.processHaveLines(UploadPack.java:1623)
        at org.eclipse.jgit.transport.UploadPack.negotiate(UploadPack.java:1603)
        at org.eclipse.jgit.transport.UploadPack.service(UploadPack.java:998)
Reply all
Reply to author
Forward
0 new messages