My android project is bigger and bigger.
I faced the OOM exception.
> Task :myproj:minifyStageReleaseWithR8
Exception in thread "Daemon client event forwarder" java.lang.OutOfMemoryError: Java heap space
at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.addConditionWaiter(AbstractQueuedSynchronizer.java:1896)
at java.base/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2114)
at java.base/java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:458)
at org.gradle.launcher.daemon.server.exec.DaemonConnectionBackedEventConsumer$ForwardEvents.getNextEvent(DaemonConnectionBackedEventConsumer.java:72)
at org.gradle.launcher.daemon.server.exec.DaemonConnectionBackedEventConsumer$ForwardEvents.run(DaemonConnectionBackedEventConsumer.java:59)
ERROR:R8: java.lang.OutOfMemoryError: Java heap space
> Task :myproj:minifyStageReleaseWithR8 FAILED
So I increased the heap size:
org.gradle.jvmargs=-Xmx4096m -XX:MaxPermSize=1024m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
But It failed with:
Container 'Build' exceeded memory limit.
My `.yml` file is:
image: androidsdk/android-30
pipelines:
custom:
QA:
- parallel:
- step:
name: Build APK
size: 2x
script:
- echo "$KEYSTORE_FILE_BASE64" | base64 -d > android-signing-keystore.jks
- ./gradlew clean assembleStageRelease
in case of
* low heap size -> OOM
* large heap size -> exceeded memory limit
What should I do?
Hi @Aaron_김윤호,
The maximum memory that can be configured for a Pipelines build in our own infrastructure is 8GB with the size: 2x option. We have a feature request for the ability to increase that limit:
You can add your vote and comment there if you're interested in this feature.
If the build cannot be configured to use less than 8GB of memory, you can look into using Runners in one of your servers and run this step on a runner:
Runners allow you to run builds in Pipelines on your own infrastructure, and you won’t be charged for the build minutes used by your self-hosted runners. With a runner, it is possible to configure up to 32GB (8x) of memory to run your builds,
Kind regards,
Theodora
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.