Heap space error

932 views
Skip to first unread message

Daniel Dabrowski

unread,
Oct 8, 2012, 3:26:46 AM10/8/12
to scmma...@googlegroups.com
Hi

I've got such error on git client when trying to push large repo to the scm.

Counting objects: 73547, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (13587/13587), done.
Writing objects: 100% (73547/73547), 309.60 MiB | 3.13 MiB/s, done.
Total 73547 (delta 59571), reused 73540 (delta 59567)
error: unpack failed: error Java heap space   
To https://x...@xxx.xxx.xx:8181/scm/git/test
 ! [remote rejected] master -> master (n/a (unpacker error))
error: failed to push some refs to 'https://x...@xxx.xxx.xx:8181/scm/git/test'

Erorr on server side looks like this

2012-10-08 09:17:09.390:WARN:/scm:Internal error during receive-pack
java.lang.OutOfMemoryError: Java heap space
        at org.eclipse.jgit.storage.pack.BinaryDelta.apply(BinaryDelta.java:163)

        at org.eclipse.jgit.storage.pack.BinaryDelta.apply(BinaryDelta.java:118)

        at org.eclipse.jgit.transport.PackParser.resolveDeltas(PackParser.java:6
09)
        at org.eclipse.jgit.transport.PackParser.resolveDeltas(PackParser.java:5
86)
        at org.eclipse.jgit.transport.PackParser.resolveDeltas(PackParser.java:5
49)
        at org.eclipse.jgit.transport.PackParser.parse(PackParser.java:506)
        at org.eclipse.jgit.storage.file.ObjectDirectoryPackParser.parse(ObjectD
irectoryPackParser.java:179)
        at org.eclipse.jgit.transport.BaseReceivePack.receivePack(BaseReceivePac
k.java:914)
        at org.eclipse.jgit.transport.BaseReceivePack.receivePackAndCheckConnect
ivity(BaseReceivePack.java:753)
        at org.eclipse.jgit.transport.ReceivePack.service(ReceivePack.java:167)
        at org.eclipse.jgit.transport.ReceivePack.receive(ReceivePack.java:142)
        at org.eclipse.jgit.http.server.ReceivePackServlet.doPost(ReceivePackSer
vlet.java:174)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
        at org.eclipse.jgit.http.server.glue.UrlPipeline$Chain.doFilter(UrlPipel
ine.java:237)
        at org.eclipse.jgit.http.server.ReceivePackServlet$Factory.doFilter(Rece
ivePackServlet.java:139)
        at org.eclipse.jgit.http.server.glue.UrlPipeline$Chain.doFilter(UrlPipel
ine.java:235)
        at org.eclipse.jgit.http.server.RepositoryFilter.doFilter(RepositoryFilt
er.java:151)
        at org.eclipse.jgit.http.server.glue.UrlPipeline$Chain.doFilter(UrlPipel
ine.java:235)
        at org.eclipse.jgit.http.server.NoCacheFilter.doFilter(NoCacheFilter.jav
a:80)
        at org.eclipse.jgit.http.server.glue.UrlPipeline$Chain.doFilter(UrlPipel
ine.java:235)
        at org.eclipse.jgit.http.server.glue.UrlPipeline.service(UrlPipeline.jav
a:215)
        at org.eclipse.jgit.http.server.glue.SuffixPipeline.service(SuffixPipeli
ne.java:101)
        at org.eclipse.jgit.http.server.glue.MetaFilter.doFilter(MetaFilter.java
:163)
        at org.eclipse.jgit.http.server.glue.MetaServlet.service(MetaServlet.jav
a:133)
        at sonia.scm.web.ScmGitServlet.service(ScmGitServlet.java:134)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
        at com.google.inject.servlet.ServletDefinition.doService(ServletDefiniti
on.java:263)
        at com.google.inject.servlet.ServletDefinition.service(ServletDefinition
.java:178)
        at com.google.inject.servlet.ManagedServletPipeline.service(ManagedServl
etPipeline.java:91)
        at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainI
nvocation.java:62)
        at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.
java:168)

I've tried to run scm server from command line like this

C:\Projects\tools\scm-server\bin>scm-server.bat -Xmx=1024m -Xms=1024m

... but this didn't help. Is there any workaround for this ?

Greets

Sebastian Sdorra

unread,
Oct 8, 2012, 3:30:58 AM10/8/12
to scmma...@googlegroups.com
Hi,
You have to edit the scm-server.bat. Search the line

set EXTRA_JVM_ARGUMENTS=-Djava.awt.headless=true
-Dlogback.configurationFile=logging.xml

and append your memory parameter, such as

set EXTRA_JVM_ARGUMENTS=-Djava.awt.headless=true
-Dlogback.configurationFile=logging.xml -Xmx=1024m -Xms=1024m

Sebastian

2012/10/8 Daniel Dabrowski <dabrowsk...@42n.pl>:

Greg Woods

unread,
Mar 11, 2016, 6:40:01 AM3/11/16
to scmmanager
I know this post is over 3 year old, but additional help would be appreciated.
I've modified the scm-server.bat, and the values are not accepted

C:\scm-server\bin>scm-server.bat
Invalid maximum heap size: -Xmx=1024m
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

Java version is 1.8.0_73

Regards

Greg

Sebastian Sdorra

unread,
Mar 17, 2016, 5:34:35 AM3/17/16
to scmma...@googlegroups.com
Hi,
The parameter is "-Xmx1024m" not "-Xmx=1024m".

Sebastian

--
You received this message because you are subscribed to the Google Groups "scmmanager" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scmmanager+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Greg Woods

unread,
Mar 17, 2016, 10:01:11 AM3/17/16
to scmmanager
Thanks.
I did figure it out eventually.
Also, the Xms option causes an error. Leaving it out and just using Xmx worked fine for me.

Thanks

Greg
Reply all
Reply to author
Forward
0 new messages