Bug 339869 - Unknown zlib error when cloning git repo via git+ssh
Summary: Unknown zlib error when cloning git repo via git+ssh
Status: RESOLVED INVALID
Alias: None
Product: EGit
Classification: Technology
Component: Core (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows 7
: P3 major (vote)
Target Milestone: ---   Edit
Assignee: Christian Halstrick CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-03-14 07:26 EDT by Vladimir Vukicevic CLA
Modified: 2014-04-26 08:16 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Vladimir Vukicevic CLA 2011-03-14 07:26:14 EDT
Build Identifier: Helios SR2 20110301-1815

Reproduced with both egit 0.11.3 and 03/14 nightly.

This looks similar to bug 329631, but this is under Windows with the official Sun/Oracle JDK 1.6.0_24.

The "Unknown zlib error." shows up during cloning from a remote repo via git+ssh, with the repo created using git 1.7.4.1.  pulling with mingw git 1.7.0.2 works fine from the same repo works fine.

Reproducible: Always
Comment 1 Vladimir Vukicevic CLA 2011-03-14 07:44:00 EDT
Stack:

org.eclipse.jgit.errors.TransportException: Packfile corruption detected: Unknown zlib error.
at org.eclipse.jgit.transport.BasePackFetchConnection.doFetch(BasePackFetchConnection.java:287)
at org.eclipse.jgit.transport.BasePackFetchConnection.fetch(BasePackFetchConnection.java:225)
at org.eclipse.jgit.transport.FetchProcess.fetchObjects(FetchProcess.java:214)
at org.eclipse.jgit.transport.FetchProcess.executeImp(FetchProcess.java:149)
at org.eclipse.jgit.transport.FetchProcess.execute(FetchProcess.java:111)
at org.eclipse.jgit.transport.Transport.fetch(Transport.java:903)
at org.eclipse.egit.core.op.CloneOperation.doFetch(CloneOperation.java:229)
at org.eclipse.egit.core.op.CloneOperation.run(CloneOperation.java:136)
at org.eclipse.egit.ui.internal.clone.GitCloneWizard.executeCloneOperation(GitCloneWizard.java:259)
at org.eclipse.egit.ui.internal.clone.GitCloneWizard.access$3(GitCloneWizard.java:252)
at org.eclipse.egit.ui.internal.clone.GitCloneWizard$3.run(GitCloneWizard.java:216)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)
Caused by: org.eclipse.jgit.errors.CorruptObjectException: Packfile corruption detected: Unknown zlib error.
at org.eclipse.jgit.transport.PackParser$InflaterStream.read(PackParser.java:1530)
at java.io.InputStream.read(Unknown Source)
at org.eclipse.jgit.transport.PackParser.whole(PackParser.java:882)
at org.eclipse.jgit.transport.PackParser.indexOneObject(PackParser.java:817)
at org.eclipse.jgit.transport.PackParser.parse(PackParser.java:448)
at org.eclipse.jgit.storage.file.ObjectDirectoryPackParser.parse(ObjectDirectoryPackParser.java:178)
at org.eclipse.jgit.transport.PackParser.parse(PackParser.java:410)
at org.eclipse.jgit.transport.BasePackFetchConnection.receivePack(BasePackFetchConnection.java:654)
at org.eclipse.jgit.transport.BasePackFetchConnection.doFetch(BasePackFetchConnection.java:280)
... 11 more
Comment 2 Vladimir Vukicevic CLA 2011-03-14 07:48:01 EDT

*** This bug has been marked as a duplicate of bug 330758 ***
Comment 3 Christian Halstrick CLA 2011-03-25 08:09:40 EDT
I don't think that this is a duplicate. The other bug 330758 is about to be closed but this problem stays open
Comment 4 Christian Halstrick CLA 2011-03-25 11:47:56 EDT
If I would have access to your repo then I would run a "git bisect" in order to
find out when the problem was introduced. Maybe you can do? In order to do that
you just must be able to compile jgit with maven from command line as described
in our Contributors guide[1].

Then I would
- cd <yourJGitDir>
- git bisect start origin/master v0.10.1 --
- git bisect run sh -c "rm -fr <aTempFolder>; mvn -Dmaven.test.skip=true
package || exit 125; java -Xmx512m -jar
org.eclipse.jgit.pgm/target/jgit-cli.jar clone <yourRepoURL> C:/tmp/a || exit
127; rm -fr <aTempFolder>"

This will do a binary search on the jgit states between v0.10.1 and
origin/master. Each inspected state is first build and then we try to clone the
repo with the just build jgit commandline tool.

In the end it should tell you that commit which broke the clone.

[1] http://wiki.eclipse.org/EGit/Contributor_Guide
Comment 5 Vladimir Vukicevic CLA 2011-03-26 02:42:14 EDT
Got a build, will work on bisecting -- unfortunately the original repo that I was using is gone (we're in the middle of migrating from svn to git, and are getting the initial repo set up... the person doing it changed some import options and recreated it); new one doesn't show the error.  I'm attempting to recreate.

Also, noticed that bug 340305 looks similar.
Comment 6 Christian Halstrick CLA 2011-03-28 08:44:18 EDT
thanks for pointing to that similiar bug. Too bad that we have a not-public repo also in that case.
Comment 7 Robin Rosenberg CLA 2014-04-26 08:16:04 EDT
No further information from reporter