jtl-reporter
jtl-reporter copied to clipboard
JavaScript heap out of memory during import
Describe the bug Whilst attempting to upload a large jtl file (1.1GB), the upload seems to work, but when the file is being processed (yellow icon in test report view), it never completes and an exception is thrown in the be to suggest we've run out of memory.
To Reproduce Attempt to upload 1.1GB jtl file.
Expected behavior The tesy results should eventually become visible in the jtlreporter fe
Screenshots We are running this in AWS ECS on a fargate task, you can see that from 17:12 onwards the kpi file is being processed:
February 01, 2024 at 17:12 (UTC) {"level":"info","message":"Starting KPI file streaming and saving to db, item_id: 76dc39fc-a417-48d9-8d78-8f8a47a1df3a"}
Almost 90minutes later, the following exception is thrown by the be container:
February 01, 2024 at 18:46 (UTC) FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
February 01, 2024 at 18:46 (UTC) <--- JS stacktrace --->
February 01, 2024 at 18:46 (UTC) [17:0x7fc901654300] 72456860 ms: Scavenge (reduce) 2045.4 (2080.5) -> 2044.5 (2080.5) MB, 1.9 / 0.0 ms (average mu = 0.086, current mu = 0.001) allocation failure;
February 01, 2024 at 18:46 (UTC) [17:0x7fc901654300] 72456856 ms: Scavenge (reduce) 2045.4 (2080.5) -> 2044.5 (2080.5) MB, 1.8 / 0.0 ms (average mu = 0.086, current mu = 0.001) allocation failure;
February 01, 2024 at 18:46 (UTC) [17:0x7fc901654300] 72456853 ms: Scavenge (reduce) 2045.4 (2080.5) -> 2044.5 (2080.5) MB, 2.0 / 0.0 ms (average mu = 0.086, current mu = 0.001) allocation failure;
February 01, 2024 at 18:46 (UTC) <--- Last few GCs --->
The container is then marked unhealthy and is replaced by a new container. From what I can see we are not running hot on either CPU/memory on the task itself:
So I assume we need to set the JVM in question to have a bigger slice of the memory. Do you know what or how to set this?