Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 340128 - An internal error occurred during: "GitDecoratorJob"
Summary: An internal error occurred during: "GitDecoratorJob"
Status: RESOLVED FIXED
Alias: None
Product: EGit
Classification: Technology
Component: Core (show other bugs)
Version: 0.11   Edit
Hardware: PC Windows 7
: P3 blocker with 2 votes (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-03-16 05:33 EDT by Marc Mising name CLA
Modified: 2011-05-15 16:57 EDT (History)
3 users (show)

See Also:


Attachments
log file (4.52 KB, application/octet-stream)
2011-03-16 05:33 EDT, Marc Mising name CLA
no flags Details
little picture of the error (326.21 KB, image/bmp)
2011-03-16 05:33 EDT, Marc Mising name CLA
no flags Details
java_pid3380_Leak_Suspects (79.59 KB, application/zip)
2011-03-21 05:09 EDT, Marc Mising name CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Marc Mising name CLA 2011-03-16 05:33:24 EDT
Created attachment 191287 [details]
log file

Hi,

I have a remote Rep from which I want to fetch, the first time it works. Everytime I try it again I get:

An internal error occurred during: "Fetch from file:///I:/repository.git".
Java heap space

or

An internal error occurred during: "GitDecoratorJob[D:/Zend Server/Apache2/htdocs/project/.git]".
Java heap space

The Heap Space goes through the roof with >700mb and it crashes.

Version 0.11.3 on Zend Studio 8.0

The project size is about ~30mb and 3000 files. It includes Zend Framework, but I tried it without the library too.

Same errors with 500kb and ~100 files.

And we just tried the nightly with same results.
Comment 1 Marc Mising name CLA 2011-03-16 05:33:57 EDT
Created attachment 191288 [details]
little picture of the error
Comment 2 Matthias Sohn CLA 2011-03-20 19:48:10 EDT
Can you share the repository or is this a private one ?
Could you create a heap dump to check where the memory is consumed ? If you are using Sun/Oracle JVM you may configure that by using the VM parameter 
-XX:+HeapDumpOnOutOfMemoryError
Comment 3 Marc Mising name CLA 2011-03-21 03:18:25 EDT
hi, its a private one, i´ll look into the heap thing on zend studio :)
Comment 4 Marc Mising name CLA 2011-03-21 04:58:59 EDT
Here we go:

Problem Suspect 1

The thread org.eclipse.core.internal.jobs.Worker @ 0xfd44410 Worker-5 keeps local variables with total size 433.302.656 (83,30%) bytes.

 Thread Stack

Worker-5
  at org.eclipse.jgit.lib.ObjectId.fromRaw([BI)Lorg/eclipse/jgit/lib/ObjectId; (ObjectId.java:180)
  at org.eclipse.jgit.lib.ObjectId.fromRaw([B)Lorg/eclipse/jgit/lib/ObjectId; (ObjectId.java:161)
  at org.eclipse.jgit.storage.file.PackFile.load(Lorg/eclipse/jgit/storage/file/WindowCursor;J)Lorg/eclipse/jgit/lib/ObjectLoader; (PackFile.java:710)
  at org.eclipse.jgit.storage.file.PackFile.get(Lorg/eclipse/jgit/storage/file/WindowCursor;Lorg/eclipse/jgit/lib/AnyObjectId;)Lorg/eclipse/jgit/lib/ObjectLoader; (PackFile.java:221)
  at org.eclipse.jgit.storage.file.ObjectDirectory.openObject1(Lorg/eclipse/jgit/storage/file/WindowCursor;Lorg/eclipse/jgit/lib/AnyObjectId;)Lorg/eclipse/jgit/lib/ObjectLoader; (ObjectDirectory.java:439)
  at org.eclipse.jgit.storage.file.CachedObjectDirectory.openObject1(Lorg/eclipse/jgit/storage/file/WindowCursor;Lorg/eclipse/jgit/lib/AnyObjectId;)Lorg/eclipse/jgit/lib/ObjectLoader; (CachedObjectDirectory.java:199)
  at org.eclipse.jgit.storage.file.FileObjectDatabase.openObjectImpl1(Lorg/eclipse/jgit/storage/file/WindowCursor;Lorg/eclipse/jgit/lib/AnyObjectId;)Lorg/eclipse/jgit/lib/ObjectLoader; (FileObjectDatabase.java:172)
  at org.eclipse.jgit.storage.file.CachedObjectDirectory.openObject(Lorg/eclipse/jgit/storage/file/WindowCursor;Lorg/eclipse/jgit/lib/AnyObjectId;)Lorg/eclipse/jgit/lib/ObjectLoader; (CachedObjectDirectory.java:191)
  at org.eclipse.jgit.storage.file.WindowCursor.open(Lorg/eclipse/jgit/lib/AnyObjectId;I)Lorg/eclipse/jgit/lib/ObjectLoader; (WindowCursor.java:110)
  at org.eclipse.jgit.transport.PackParser.verifySafeObject(Lorg/eclipse/jgit/lib/AnyObjectId;I[B)V (PackParser.java:922)
  at org.eclipse.jgit.transport.PackParser.whole(JIJ)V (PackParser.java:897)
  at org.eclipse.jgit.transport.PackParser.indexOneObject()V (PackParser.java:817)
  at org.eclipse.jgit.transport.PackParser.parse(Lorg/eclipse/jgit/lib/ProgressMonitor;Lorg/eclipse/jgit/lib/ProgressMonitor;)Lorg/eclipse/jgit/storage/file/PackLock; (PackParser.java:448)
  at org.eclipse.jgit.storage.file.ObjectDirectoryPackParser.parse(Lorg/eclipse/jgit/lib/ProgressMonitor;Lorg/eclipse/jgit/lib/ProgressMonitor;)Lorg/eclipse/jgit/storage/file/PackLock; (ObjectDirectoryPackParser.java:178)
  at org.eclipse.jgit.transport.PackParser.parse(Lorg/eclipse/jgit/lib/ProgressMonitor;)Lorg/eclipse/jgit/storage/file/PackLock; (PackParser.java:410)
  at org.eclipse.jgit.transport.BasePackFetchConnection.receivePack(Lorg/eclipse/jgit/lib/ProgressMonitor;)V (BasePackFetchConnection.java:649)
  at org.eclipse.jgit.transport.BasePackFetchConnection.doFetch(Lorg/eclipse/jgit/lib/ProgressMonitor;Ljava/util/Collection;Ljava/util/Set;)V (BasePackFetchConnection.java:280)
  at org.eclipse.jgit.transport.BasePackFetchConnection.fetch(Lorg/eclipse/jgit/lib/ProgressMonitor;Ljava/util/Collection;Ljava/util/Set;)V (BasePackFetchConnection.java:225)
  at org.eclipse.jgit.transport.FetchProcess.fetchObjects(Lorg/eclipse/jgit/lib/ProgressMonitor;)V (FetchProcess.java:214)
  at org.eclipse.jgit.transport.FetchProcess.executeImp(Lorg/eclipse/jgit/lib/ProgressMonitor;Lorg/eclipse/jgit/transport/FetchResult;)V (FetchProcess.java:149)
  at org.eclipse.jgit.transport.FetchProcess.execute(Lorg/eclipse/jgit/lib/ProgressMonitor;Lorg/eclipse/jgit/transport/FetchResult;)V (FetchProcess.java:111)
  at org.eclipse.jgit.transport.Transport.fetch(Lorg/eclipse/jgit/lib/ProgressMonitor;Ljava/util/Collection;)Lorg/eclipse/jgit/transport/FetchResult; (Transport.java:903)
  at org.eclipse.jgit.api.FetchCommand.call()Lorg/eclipse/jgit/transport/FetchResult; (FetchCommand.java:134)
  at org.eclipse.egit.core.op.FetchOperation.run(Lorg/eclipse/core/runtime/IProgressMonitor;)V (FetchOperation.java:128)
  at org.eclipse.egit.ui.internal.fetch.FetchOperationUI.execute(Lorg/eclipse/core/runtime/IProgressMonitor;)Lorg/eclipse/jgit/transport/FetchResult; (FetchOperationUI.java:99)
  at org.eclipse.egit.ui.internal.fetch.FetchOperationUI$1.run(Lorg/eclipse/core/runtime/IProgressMonitor;)Lorg/eclipse/core/runtime/IStatus; (FetchOperationUI.java:117)
  at org.eclipse.core.internal.jobs.Worker.run()V (Worker.java:54)
Comment 5 Marc Mising name CLA 2011-03-21 05:09:17 EDT
Created attachment 191599 [details]
java_pid3380_Leak_Suspects

Sorry, found the zip too late
Comment 6 Robin Rosenberg CLA 2011-04-10 07:11:45 EDT
Have you tried the nightly build? 

There have been changes to fix other bugs in the JGit core, your problem just might have been fixed since the last build.
Comment 7 Chris Aniszczyk CLA 2011-04-10 23:21:26 EDT
You can grab a nightly build from here...

http://download.eclipse.org/egit/updates-nightly
Comment 8 Marc Mising name CLA 2011-04-13 08:03:40 EDT
I tried the nightly and it works on my system.
But my co-worker still got the error. 
He tried it with my version on his system and still got the error too.
I thought maybe his Workspace is corrupt. So I copied his Workspace on my system, but it worked.

So, maybe its a problem with his repository?
Comment 9 Robin Rosenberg CLA 2011-04-18 18:17:40 EDT
(In reply to comment #8)
> I tried the nightly and it works on my system.
> But my co-worker still got the error. 
> He tried it with my version on his system and still got the error too.
> I thought maybe his Workspace is corrupt. So I copied his Workspace on my
> system, but it worked.
> 
> So, maybe its a problem with his repository?

Be careful to verify that what your mate sees is actually the same error.

It may also be a problem with a lot of plugins. Especially the JEE edition
of a Eclipse plus a ton of extra plugins may require more memory than
you have, triggering an out-of-memory in any plugin.
Comment 10 Marc Mising name CLA 2011-04-19 03:20:01 EDT
It is the same error, but it came from an old rep of an older egit version. We created a new one with a ner nightly build, seems to fix it. But we will give it another try the next few days.
Comment 11 Marc Mising name CLA 2011-05-10 04:18:07 EDT
seems to be fixed now, everything works fine! :)
Comment 12 Matthias Sohn CLA 2011-05-15 16:57:27 EDT
closing this message as Marc reported that the problem is fixed