Serge Huber created UNOMI-957:
---------------------------------

             Summary: Integration test runs lack clear memory and resource 
visibility
                 Key: UNOMI-957
                 URL: https://issues.apache.org/jira/browse/UNOMI-957
             Project: Apache Unomi
          Issue Type: Sub-task
          Components: unomi(-core)
    Affects Versions: unomi-3.1.0
            Reporter: Serge Huber
            Assignee: Serge Huber
             Fix For: unomi-3.1.0


When our full integration test suite runs, we cannot easily see how much memory 
the system is using or whether the run is running out of resources. That makes 
it hard to tell whether failures are caused by real bugs or by the machine 
being under too much strain—especially on shared CI servers.
h4. What is going wrong today

Running the full integration test suite is resource-heavy: the application 
server, search engine, and supporting services all run together for a long 
time. When a run fails—or behaves inconsistently—we often cannot tell whether 
memory or overall system load played a role.
h4. Impact
 * Hard to diagnose failures: A test failure may be a product bug, a timing 
issue, or the system running low on memory. Without recorded resource usage 
during the run, we guess instead of knowing.
 * No baseline for sizing: We set memory limits for key components, but we lack 
reliable measurements from real runs (local machines and CI) to know if those 
limits are too high, too low, or about right.
 * Weak run history: When we archive or compare runs, we capture test results 
and logs, but not a consistent picture of how stressed the system was during 
each run. That limits comparisons across machines, configurations, and over 
time.
 * CI is especially opaque: Shared GitHub runners have limited memory. When 
tests fail there, we rarely have evidence of whether the runner was under 
memory pressure.
 * Inconsistent local vs CI experience: Developers may see passes locally while 
CI fails (or the reverse), with no shared way to compare “how hard the system 
was working” in each case.

h4. Who is affected
 * Developers debugging flaky or failed integration test runs
 * Release and CI maintainers tuning runner capacity and JVM settings
 * Anyone reviewing archived runs to decide if a failure is environmental or a 
real regression

h4. What “good” would look like (needs, not implementation)
 * After a full integration test run, we can see how memory and system load 
behaved during that run.
 * That information is tied to the run (pass/fail, when, where it ran) and can 
be kept with other run artifacts.
 * The same kind of information is available on developer machines and on CI, 
so comparisons are fair.
 * Warnings or summaries highlight when a run likely ran under resource 
pressure, without crying wolf on normal conditions (e.g. routine swap use on a 
Mac with plenty of free RAM).

 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to