Skip to content

PHOENIX-7825 ConcurrentMutationsIT make MyClock.shouldAdvance volatile#2442

Open
apurtell wants to merge 1 commit intoapache:masterfrom
apurtell:PHOENIX-7825
Open

PHOENIX-7825 ConcurrentMutationsIT make MyClock.shouldAdvance volatile#2442
apurtell wants to merge 1 commit intoapache:masterfrom
apurtell:PHOENIX-7825

Conversation

@apurtell
Copy link
Copy Markdown
Contributor

@apurtell apurtell commented May 1, 2026

ConcurrentMutationsIT installs a custom EnvironmentEdge, and the test thread calls setAdvance(false) to freeze time so two mutations share a timestamp. However, MyClock.shouldAdvance is not volatile, so the JMM does not require regionserver handler threads in the same JVM to observe the freeze, and in practice they keep advancing time, causing mutations expected to share a timestamp to diverge and producing non-deterministic index-scrutiny results, with the shared ParallelStatsDisabled mini-cluster amplifying the race.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant