You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Test flakiness: MeterReadingControllerTest.shouldReturn200WhenExists (Spring context bootstrap) #132
MeterReadingControllerTest.shouldReturn200WhenExists exhibits Spring-context-bootstrap flakiness: it failed once in CI on PR #116 and passed on retry with no code change.
Distinct from #78 (cross-platform timestamp-resolution flakiness) — this one is context-bootstrap timing, not timestamp precision.
Action
Reproduce (run the test repeatedly, e.g. mvn test -pl openespi-datacustodian -Dtest=MeterReadingControllerTest#shouldReturn200WhenExists -Dsurefire.rerunFailingTestsCount=0 in a loop).
Identify the bootstrap race — likely shared mutable context state, @MockBean re-init, or an ordering dependency between tests in the class.
Fix the root cause (proper test isolation / @DirtiesContext only if unavoidable), not by adding blanket retries.
Acceptance criteria
Root cause identified and documented
Test passes deterministically across repeated runs
Closing as resolved. The flakiness root cause was the StreamingResponseBody × Spring Security OnCommittedResponseWrapperConcurrentModificationException (see #119 Phase 1). De-streaming is now complete on main — there are 0StreamingResponseBody references left in the DataCustodian controllers, so the race that caused MeterReadingControllerTest.shouldReturn200WhenExists to fail no longer exists. The test has been green across every recent CI run (#163/#164/#165). Reopen if it recurs.
Activity
dfcoffin commentedon Jun 5, 2026
Closing as resolved. The flakiness root cause was the
StreamingResponseBody× Spring SecurityOnCommittedResponseWrapperConcurrentModificationException(see #119 Phase 1). De-streaming is now complete onmain— there are 0StreamingResponseBodyreferences left in the DataCustodian controllers, so the race that causedMeterReadingControllerTest.shouldReturn200WhenExiststo fail no longer exists. The test has been green across every recent CI run (#163/#164/#165). Reopen if it recurs.