qa(load-test): Provide load-test module#2782
Conversation
Co-authored-by: Renatto Machado <renatto.machado@outlook.com>
|
The load test reveils the memory leak when executed |
There was a problem hiding this comment.
Pull request overview
Adds a new opt-in QA load-test module (qa/load-test) to reproduce and monitor the memory leak behavior described in #2761 under concurrent REST-driven process starts.
Changes:
- Register new
qa/load-testMaven module under theqaaggregator. - Introduce a Spring Boot + WireMock based load-test (failsafe-run) that samples heap usage during sustained concurrent load.
- Add BPMN/DMN resources and test configuration used by the load test.
Reviewed changes
Copilot reviewed 13 out of 13 changed files in this pull request and generated 12 comments.
Show a summary per file
| File | Description |
|---|---|
| qa/pom.xml | Adds load-test to the QA reactor modules. |
| qa/load-test/pom.xml | New load-test module POM with failsafe profile and test-only dependencies. |
| qa/load-test/README.md | Documentation for running/configuring the load test and interpreting results. |
| qa/load-test/src/test/java/org/operaton/bpm/qa/loadtest/LoadTestApplication.java | Minimal Spring Boot app used as the embedded test runtime. |
| qa/load-test/src/test/java/org/operaton/bpm/qa/loadtest/MemoryLeakLoadTest.java | Integration load test that drives REST starts concurrently and checks heap stability. |
| qa/load-test/src/test/resources/application.yml | Spring/Operaton test configuration (H2, plugins, tomcat threads). |
| qa/load-test/src/test/resources/processes/simple-process.bpmn | Minimal BPMN process for a lightweight scenario. |
| qa/load-test/src/test/resources/processes/script-only-process.bpmn | Script-only BPMN process variant for scripting-focused load. |
| qa/load-test/src/test/resources/processes/pure-js-process.bpmn | Pure JavaScript BPMN process variant for GraalJS load. |
| qa/load-test/src/test/resources/processes/http-only-process.bpmn | HTTP-connector focused BPMN process variant. |
| qa/load-test/src/test/resources/processes/credit-eligibility.bpmn | Main BPMN scenario combining HTTP connectors, DMN, and Spin usage. |
| qa/load-test/src/test/resources/processes/dmn-policy-age.dmn | DMN decision table used by the credit eligibility process. |
| qa/load-test/src/test/resources/processes/dmn-policy-tenure.dmn | DMN decision table used by the credit eligibility process. |
|
@copilot Fix the findings and the new Sonar issues |
…rness Agent-Logs-Url: https://github.com/operaton/operaton/sessions/a103f49b-466b-4b82-ac1d-9b6671f9d9fa Co-authored-by: kthoms <265597+kthoms@users.noreply.github.com>
Agent-Logs-Url: https://github.com/operaton/operaton/sessions/a103f49b-466b-4b82-ac1d-9b6671f9d9fa Co-authored-by: kthoms <265597+kthoms@users.noreply.github.com>
... Updated in b87bc0d: I fixed the load-test findings that could skew/stall execution (sampling interval handling, thread-local jitter, executor termination handling, and config/doc/model consistency). The test is still expected to fail when the underlying leak reproduces, as in your log.
Done in b87bc0d (plus 4a00e0e): I fixed the review findings and Sonar-related issues in Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
|



This PR adds a new test module
qa/load-testwhich is based on the issue #2761 . The examples given are based on the work of @renattomachado provided by the issue attachments.