diff options
| author | Charlie Root <root@dangofactory.local> | 2026-10-05 23:14:07 +0900 |
|---|---|---|
| committer | Charlie Root <root@dangofactory.local> | 2026-10-05 23:14:07 +0900 |
| commit | d4c6c11df0cf60dd956fe0d84f2edc97ffc8381d (patch) | |
| tree | 089ffc0b2d3d5406b4f7de8f2ddaf2edf1ad1123 /modules | |
| parent | 8b197b25293024be3df541ea292164558505e783 (diff) | |
| download | kukuri-d4c6c11df0cf60dd956fe0d84f2edc97ffc8381d.tar.gz kukuri-d4c6c11df0cf60dd956fe0d84f2edc97ffc8381d.tar.bz2 kukuri-d4c6c11df0cf60dd956fe0d84f2edc97ffc8381d.zip | |
build: metaspace was the limit, not heap or wasm-opt's -Oz
build 84 died in bundle-web with "Gradle build daemon disappeared unexpectedly",
same as builds 76 and 77. The daemon log is what finally settled it:
Starting 8th build in daemon [uptime: 3m45s, performance: 99%, GC rate: 0.00/s,
heap usage: 0% of 2 GiB, non-heap usage: 28% of 512 MiB]
...
ValidateIrAfterLowering
Heap usage was zero. The host was 91% idle. wasm-opt was still at -Oz. None of
those were the cause: the daemon had served eight builds and by the eighth its
class metadata had filled a 512 MiB metaspace, and it died while wasm-opt's Kotlin
lowering loaded more IR classes. So this is non-heap exhaustion, and the fix is
non-heap capacity.
-XX:MaxMetaspaceSize 512m -> 1g
org.gradle.daemon=false one JVM per build, so metadata cannot pile up
Verified by reproducing the CI sequence -- clean the wasm outputs, the build
cache and the configuration cache exactly as clean-wasm-output does, then run
bundleWeb: BUILD SUCCESSFUL in 12m, no signal 9. That is the same sequence that
just failed in CI.
Diffstat (limited to 'modules')
0 files changed, 0 insertions, 0 deletions
