Date |
|
Authors | |
Status | Done |
Summary | The deployment of some components to our preprod environment was failing due to apparent memory constraints |
Impact | No new versions of these components could be deployed for a short period of time (~1 day) |
Table of Contents |
---|
Non-technical Description
...
Deployments to preprod environment failing for some components (though not for others, e.g. tis-trainee-sync)
Logs for the failing components include lines such as:
6/13/2023, 4:51:44 PM GMT+1 [31;1mERROR: [0mfailed to launch: exec.d: failed to execute exec.d file at path '/layers/paketo-buildpacks_bellsoft-liberica/helper/exec.d/memory-calculator': exit status 1
6/13/2023, 4:51:44 PM GMT+1 Calculating JVM memory based on 616300K available memory
6/13/2023, 4:51:44 PM GMT+1 For more information on this calculation, see https://paketo.io/docs/reference/java-reference/#memory-calculator
6/13/2023, 4:51:44 PM GMT+1 unable to calculate memory configuration
6/13/2023, 4:51:44 PM GMT+1 fixed memory regions require 632382K which is greater than 616300K available for allocation: -XX:MaxDirectMemorySize=10M, -XX:MaxMetaspaceSize=120382K, -XX:ReservedCodeCacheSize=240M, -Xss1M * 250 threads
Some buildpack versions have changed:
(ndw exporter)
Pass:
paketo-buildpacks/ca-certificates 3.6.2
paketo-buildpacks/bellsoft-liberica 10.2.3
paketo-buildpacks/syft 1.30.1
paketo-buildpacks/executable-jar 6.7.3
paketo-buildpacks/dist-zip 5.6.2
paketo-buildpacks/spring-boot 5.25.1
Fail:
paketo-buildpacks/ca-certificates 3.6.2
paketo-buildpacks/bellsoft-liberica 10.2.4
paketo-buildpacks/syft 1.31.0
paketo-buildpacks/executable-jar 6.7.3
paketo-buildpacks/dist-zip 5.6.3
paketo-buildpacks/spring-boot 5.25.2
Further investigation needed to determine if these version changes affected memory requirements or calculation.
...
Action Items
Action Items | Owner | |||||||||
---|---|---|---|---|---|---|---|---|---|---|
Write-up investigation ticket for managing buildpack versioning |
| |||||||||
PRs for increased memory allocation for affected components (at least 3, but note that all small containers might throw errors when we attempt to deploy updates without bumping up the memory allocation) | DONE |
...
Lessons Learned
There may be underlying changes to the way in which components are built, even if the code has not changed.