Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [egit-dev] Missing Tree

I meant to apply the patch on the server side.

3.6.2 has another patch
which fixes one more source of MissingObjectExceptions and the following patch further improves on this

Does restarting the Gerrit server (at least temporarily) fix the problem ?

-Matthias

On Tue, Jan 27, 2015 at 8:35 AM, Duft Markus <Markus.Duft@xxxxxxxxxxxxxxxx> wrote:

Hey,

 

Today we were able to reproduce the problem again, and we tried also with the log patch applied to JGit (client side). Sadly this does not help – not a line of log output. It seems the problem happens purely on the server side, and only if the client is JGit. Pusing with CGit from the command line worked.

 

Any more ideas?

 

Thanks

Markus

 

Von: Matthias Sohn [mailto:matthias.sohn@xxxxxxxxx]
Gesendet: Do
nnerstag, 15. Januar 2015 09:38
An: Duft Markus
Cc: EGit developer discussion (egit-dev@xxxxxxxxxxx)
Betreff: Re: [egit-dev] Missing Tree

 

On Thu, Jan 15, 2015 at 8:40 AM, Duft Markus <Markus.Duft@xxxxxxxxxxxxxxxx> wrote:

Hey all,

 

We have a problem with missing tree again :|

 

A co-worker reported this:

 

 

Having a look at the Gerrit (2.9.1) log:

 

[2015-01-14 15:37:56,974] ERROR com.google.gerrit.sshd.BaseCommand : Internal server error (user rlechne account 1000200) during git-receive-pack '/xxxx.git'

com.google.gerrit.sshd.BaseCommand$Failure: fatal: Unpack error, check server log

        at com.google.gerrit.sshd.commands.Receive.runImpl(Receive.java:176)

        at com.google.gerrit.sshd.AbstractGitCommand.service(AbstractGitCommand.java:101)

        at com.google.gerrit.sshd.AbstractGitCommand.access$000(AbstractGitCommand.java:32)

        at com.google.gerrit.sshd.AbstractGitCommand$1.run(AbstractGitCommand.java:70)

        at com.google.gerrit.sshd.BaseCommand$TaskThunk.run(BaseCommand.java:442)

        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:364)

        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:744)

Caused by: java.io.IOException: Unpack error on project "xxxx":

  AdvertiseRefsHook: org.eclipse.jgit.transport.AdvertiseRefsHookChain@2ee05c22class org.eclipse.jgit.transport.AdvertiseRefsHookChain

 

        at com.google.gerrit.sshd.commands.Receive.runImpl(Receive.java:175)

        ... 12 more

Caused by: org.eclipse.jgit.errors.UnpackException: Exception while parsing pack stream

        at org.eclipse.jgit.transport.ReceivePack.service(ReceivePack.java:239)

        at org.eclipse.jgit.transport.ReceivePack.receive(ReceivePack.java:160)

        at com.google.gerrit.sshd.commands.Receive.runImpl(Receive.java:115)

        ... 12 more

Caused by: org.eclipse.jgit.errors.MissingObjectException: Missing tree 5805e5d3179118c5e2aa45b3c8aa8a52d95e05da

        at org.eclipse.jgit.transport.BaseReceivePack.checkConnectivity(BaseReceivePack.java:1100)

        at org.eclipse.jgit.transport.BaseReceivePack.receivePackAndCheckConnectivity(BaseReceivePack.java:850)

        at org.eclipse.jgit.transport.ReceivePack.service(ReceivePack.java:191)

        ... 14 more

 

I checked on both the local and the remote repository on the command line:

 

Server: [git@salxsource03 wamasgo.git]$ git cat-file -p 5805e5d3179118c5e2aa45b3c8aa8a52d95e05da

100644 blob 098194ca4b7d8f45177f94e735506ae3a26b5c94       .classpath

100644 blob 52725b46b2188f9e95bdea16e2f67dc6741e59a1      .project

040000 tree 16be11d424ec18cbef844ff790c7941c9a9c1297         .settings

040000 tree 320a079ce9e9281703927bdf494678e43147d169      META-INF

100644 blob e9863e281eaccc5123e82ed75713bab3e8b87bbe    build.properties

040000 tree 09a6849fb377a1d530c56d4b7ef115caac488b26        module-doc

100644 blob b35264a050f1d97041b4363ab16fedd01876f58c       plugin.xml

040000 tree 8c802e523b779432b6c7b3c1f73d6ae9808feded      src

 

Client: [rlechne@fril0004 ~/wamas-5.4/bremermann/wamas5]

$ git cat-file -p 5805e5d3179118c5e2aa45b3c8aa8a52d95e05da

100644 blob 098194ca4b7d8f45177f94e735506ae3a26b5c94          .classpath

100644 blob 52725b46b2188f9e95bdea16e2f67dc6741e59a1        .project

040000 tree 16be11d424ec18cbef844ff790c7941c9a9c1297            .settings

040000 tree 320a079ce9e9281703927bdf494678e43147d169         META-INF

100644 blob e9863e281eaccc5123e82ed75713bab3e8b87bbe      build.properties

040000 tree 09a6849fb377a1d530c56d4b7ef115caac488b26          module-doc

100644 blob b35264a050f1d97041b4363ab16fedd01876f58c          plugin.xml

040000 tree 8c802e523b779432b6c7b3c1f73d6ae9808feded         src

 

So both know the tree very well...

 

The interesting thing is, that this seems to happen always on this repository, as soon as somebody pushes a second patchset for any change – i have at least one windows and one linux user that have the very same problem. Pushing on the command line using cgit (git push origin HEAD:refs/for/xxxx) works.

 

The client used EGit Release 3.6.0.

 

Any Ideas?

 

has the user facing this problem read permissions on all branches in Gerrit ?

 

Maybe this is related to [1]. Could you apply the jgit patch attached to this mail thread to

help catching the underlying exception in JGit which is currently not logged ?

 

 

-Matthias 

Salomon Automation GmbH | Friesachstrasse 15 | 8114 Friesach bei Graz | Austria
Registered Office: Friesach bei Graz | Commercial Register: 49324 K | VAT no. ATU28654300
Commercial Court: Landesgericht für Zivilrechtssachen Graz


Back to the top