Andrew Kyle Purtell created PHOENIX-7825:
--------------------------------------------

             Summary: ConcurrentMutationsIT make MyClock.shouldAdvance volatile
                 Key: PHOENIX-7825
                 URL: https://issues.apache.org/jira/browse/PHOENIX-7825
             Project: Phoenix
          Issue Type: Sub-task
          Components: test
            Reporter: Andrew Kyle Purtell
            Assignee: Andrew Kyle Purtell
             Fix For: 5.4.0, 5.3.1


{{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.



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

Reply via email to