adamsaghy opened a new pull request, #6413: URL: https://github.com/apache/fineract/pull/6413
<head></head><h3 style="font-style: normal; font-variant-caps: normal; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-line: none; text-decoration-thickness: auto; text-decoration-style: solid; caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);">Changes</h3><p style="font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-line: none; text-decoration-thickness: auto; text-decoration-style: solid; caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);"><strong>Test JVM cap → 4g</strong><span class="Apple-converted-space"> </span>(build.gradle:747).<span class="Apple-converted-space"> </span><tt>:fineract-provider</tt><span class="Apple-converted- space"> </span>keeps its own explicit 2g — its suite is the largest and I'd already confirmed it passes there, so there was no reason to loosen it.</p><p style="font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-line: none; text-decoration-thickness: auto; text-decoration-style: solid; caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);"><strong>Cargo Tomcat capped at 2g</strong><span class="Apple-converted-space"> </span>in integration-tests, oauth2-tests and twofactor-tests. This was the genuinely unbounded one:<span class="Apple-converted-space"> </span><tt>-Xmx2G</tt><span class="Apple-converted-space"> </span>previously only appeared on the<span class="Apple-converted-space"> </span><tt>localDebug</tt><span class="Apple-converted-space"> </span>path in<span class="Apple -converted-space"> </span><tt>integration-tests</tt>, and not at all in the other two, so in CI the server inherited ~4g. I also dropped the now-duplicate<span class="Apple-converted-space"> </span><tt>-Xmx2G</tt><span class="Apple-converted-space"> </span>from the<span class="Apple-converted-space"> </span><tt>localDebug</tt><span class="Apple-converted-space"> </span>branch — local debug behaviour is unchanged, the value just comes from the shared line.</p><h3 style="font-style: normal; font-variant-caps: normal; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-line: none; text-decoration-thickness: auto; text-decoration-style: solid; caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);">Confirmed by evaluating the build</h3><p style="font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; te xt-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-line: none; text-decoration-thickness: auto; text-decoration-style: solid; caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);">:fineract-provider test.maxHeapSize=2g :integration-tests test.maxHeapSize=4g cargo -Xmx2G :oauth2-tests test.maxHeapSize=4g cargo -Xmx2G :twofactor-tests test.maxHeapSize=4g cargo -Xmx2G :fineract-core test.maxHeapSize=4g<br> <br>Exactly one<span class="Apple-converted-space"> </span><tt>-Xmx</tt><span class="Apple-converted-space"> </span>per cargo args string, and<span class="Apple-converted-space"> </span><tt>rat spotlessCheck</tt><span class="Apple-converted-space"> </span>passes.</p><h3 style="font-style: normal; font-variant-caps: normal; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-s troke-width: 0px; text-decoration-line: none; text-decoration-thickness: auto; text-decoration-style: solid; caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);">Resulting budget</h3><div class="table-wrap" style="font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-line: none; text-decoration-thickness: auto; text-decoration-style: solid; caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);"> Component | Cap | Set in -- | -- | -- Gradle build JVM — local | 8g | gradle.properties Gradle build JVM — CI | 4g (6g sonar, 2g the three devRun jobs) | gradle-memory-budget org.gradle.workers.max — CI | 2 | gradle-memory-budget Forked javac | 2g each | build.gradle SpotBugs worker | 2g | build.gradle Forked test JVM | 4g (provider 2g) | build.gradle Cargo Tomcat | 2g | the three cargo modules Dockerised backend | 1g | fineract-common.env (pre-existing) devRun/bootRun backend | 3g | per-step JAVA_TOOL_OPTIONS E2E cucumber JVM | 2g | per-step JAVA_TOOL_OPTIONS </div><p style="font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-line: none; text-decoration-thickness: auto; text-decoration-style: solid; caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);">Peaks on a 16 GB runner:<span class="Apple-converted-space"> </span><tt>run-integration-test-sequentially</tt><span class="Apple-converted-space"> </span><strong>14g</strong><span class="Apple-converted-space"> </span>(4 + 2×4 + 2, down from a 20g ceiling with nothing capped), the DB/Docker test jobs ~11g,<span class="Apple-converted-space"> </span><tt>regression-safety</tt><span class="Apple-converted-space"> </span>~11g, quality checks 8g.</p><p style="font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent : 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-line: none; text-decoration-thickness: auto; text-decoration-style: solid; caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);">That 14g job is the only one without comfortable headroom. If it ever gets OOM-killed, the fix is<span class="Apple-converted-space"> </span><tt>workers-max: '1'</tt><span class="Apple-converted-space"> </span>in its budget step → 10g; I left it at 2 rather than fully serialize the longest suite in the pipeline.</p> -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
