Issue 3224: Gerrit replication: error occurred during unpacking on the remote end: unpack-objects abnormal exit
Status:  New
Owner: ----
Reported by dean.whe...@gmail.com, Mar 3, 2015
Hi,

I'm running Gerrit 2.10 and replicating the gits (AOSP based repositories) to a mirror running git 2.3.0 .

During replication, from cold start, I will always see a TransportException error, something like below:

[2015-03-04 10:28:06,811] [52261008] Cannot replicate to gerrit2@10.123.1.123:/home/gerrit2/crux_replication/git/aosp/platform/frameworks/rs.git
org.eclipse.jgit.errors.TransportException: gerrit2@10.123.1.123:/home/gerrit2/crux_replication/git/aosp/platform/frameworks/rs.git: error occurred during unpacking on the remote end: unpack-objects abnormal exit
        at org.eclipse.jgit.transport.BasePackPushConnection.readStatusReport(BasePackPushConnection.java:319)
        at org.eclipse.jgit.transport.BasePackPushConnection.doPush(BasePackPushConnection.java:200)
        at org.eclipse.jgit.transport.BasePackPushConnection.push(BasePackPushConnection.java:152)
        at org.eclipse.jgit.transport.PushProcess.execute(PushProcess.java:165)
        at org.eclipse.jgit.transport.Transport.push(Transport.java:1200)
        at org.eclipse.jgit.transport.Transport.push(Transport.java:1246)
        at com.googlesource.gerrit.plugins.replication.PushOne.pushVia(PushOne.java:407)
        at com.googlesource.gerrit.plugins.replication.PushOne.runImpl(PushOne.java:379)
        at com.googlesource.gerrit.plugins.replication.PushOne.runPushOperation(PushOne.java:287)
        at com.googlesource.gerrit.plugins.replication.PushOne.access$000(PushOne.java:82)
        at com.googlesource.gerrit.plugins.replication.PushOne$1.call(PushOne.java:257)
        at com.googlesource.gerrit.plugins.replication.PushOne$1.call(PushOne.java:254)
        at com.google.gerrit.server.util.RequestScopePropagator$5.call(RequestScopePropagator.java:222)
        at com.google.gerrit.server.util.RequestScopePropagator$4.call(RequestScopePropagator.java:201)
        at com.google.gerrit.server.git.PerThreadRequestScope$Propagator$1.call(PerThreadRequestScope.java:75)
        at com.googlesource.gerrit.plugins.replication.PushOne.run(PushOne.java:254)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        at java.util.concurrent.FutureTask.run(FutureTask.java:262)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:178)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:292)
        at com.google.gerrit.server.git.WorkQueue$Task.run(WorkQueue.java:368)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)


Most of the gits will succeed but a few won't.

gerrit show-queue shows a couple failed:

$ ssh -p 29418 <SERVER> gerrit show-queue -w
Task     State        StartTime         Command
------------------------------------------------------------------------------
341d9145 13:16:55.533 13:15:55.531      (retry 104) [52261008] push gerrit2@10.123.1.123:/home/gerrit2/crux_replication/git/aosp/platform/frameworks/rs.git
d4dd15a1 13:17:09.736 13:16:09.734      (retry 104) [9cc6df33] push gerrit2@10.123.1.123:/home/gerrit2/crux_replication/git/aosp/platform/tools/buildSrc.git
98a266d4 13:18:47.984 09:28:32.657      Reload Submit Queue
58b14e1f 10:28:31.284 09:28:31.283      Log File Compressor
------------------------------------------------------------------------------
  4 tasks


To fix this issue, I currently delete the *.git on the replication mirror. Gerrit detects this automatically and pushes the whole repository. This will always succeed.


Are there any other recommendations to fix these replication errors?
I recently upgraded the replication mirror from git 1.7.9 to 2.3.0 and that has seemingly reduced the number of gits showing replication error, but I'd like to get the number down to zero.

Thanks,

Dean
Mar 26, 2015
#1 dean.whe...@gmail.com
This was an issue with user and group ownership of some files on the replication mirror. Setting the owner correctly resolved the issue. Please close the ticket. Thanks.