[ 
https://issues.apache.org/jira/browse/HBASE-17887?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16008412#comment-16008412
 ] 

Ted Yu commented on HBASE-17887:
--------------------------------

https://builds.apache.org/job/HBASE-Flaky-Tests/16032/testReport/junit/org.apache.hadoop.hbase/TestAcidGuarantees/testMixedAtomicity_1_/
 :
{code}
java.lang.RuntimeException: Deferred
        at 
org.apache.hadoop.hbase.MultithreadedTestUtil$TestContext.checkException(MultithreadedTestUtil.java:79)
        at 
org.apache.hadoop.hbase.MultithreadedTestUtil$TestContext.waitFor(MultithreadedTestUtil.java:72)
        at 
org.apache.hadoop.hbase.TestAcidGuarantees.runTestAtomicity(TestAcidGuarantees.java:421)
        at 
org.apache.hadoop.hbase.TestAcidGuarantees.runTestAtomicity(TestAcidGuarantees.java:357)
        at 
org.apache.hadoop.hbase.TestAcidGuarantees.runTestAtomicity(TestAcidGuarantees.java:348)
        at 
org.apache.hadoop.hbase.TestAcidGuarantees.testMixedAtomicity(TestAcidGuarantees.java:461)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 7609
        at org.apache.hadoop.hbase.KeyValue.keyToString(KeyValue.java:1208)
        at org.apache.hadoop.hbase.KeyValue.toString(KeyValue.java:1153)
        at 
org.apache.hadoop.hbase.TestAcidGuarantees$AtomicScanReader.gotFailure(TestAcidGuarantees.java:334)
        at 
org.apache.hadoop.hbase.TestAcidGuarantees$AtomicScanReader.doAnAction(TestAcidGuarantees.java:309)
        at 
org.apache.hadoop.hbase.MultithreadedTestUtil$RepeatingTestThread.doWork(MultithreadedTestUtil.java:149)
        at 
org.apache.hadoop.hbase.MultithreadedTestUtil$TestThread.run(MultithreadedTestUtil.java:124)
{code}
The above failure was with commit b34ab5980ea7a21fd750537476027f9a8665eacc

> Row-level consistency is broken for read
> ----------------------------------------
>
>                 Key: HBASE-17887
>                 URL: https://issues.apache.org/jira/browse/HBASE-17887
>             Project: HBase
>          Issue Type: Bug
>          Components: regionserver
>    Affects Versions: 2.0.0, 1.3.0
>            Reporter: Umesh Agashe
>            Assignee: Chia-Ping Tsai
>            Priority: Blocker
>             Fix For: 2.0.0, 1.4.0, 1.3.2
>
>         Attachments: HBASE-17887.branch-1.v0.patch, 
> HBASE-17887.branch-1.v1.patch, HBASE-17887.branch-1.v1.patch, 
> HBASE-17887.branch-1.v2.patch, HBASE-17887.branch-1.v2.patch, 
> HBASE-17887.branch-1.v3.patch, HBASE-17887.branch-1.v4.patch, 
> HBASE-17887.branch-1.v4.patch, HBASE-17887.branch-1.v4.patch, 
> HBASE-17887.branch-1.v5.patch, HBASE-17887.branch-1.v6.patch, 
> HBASE-17887.ut.patch, HBASE-17887.v0.patch, HBASE-17887.v1.patch, 
> HBASE-17887.v2.patch, HBASE-17887.v3.patch, HBASE-17887.v4.patch, 
> HBASE-17887.v5.patch, HBASE-17887.v5.patch
>
>
> The scanner of latest memstore may be lost if we make quick flushes. The 
> following step may help explain this issue.
> # put data_A (seq id = 10, active store data_A and snapshots is empty)
> # snapshot of 1st flush (active is empty and snapshot stores data_A)
> # put data_B (seq id = 11, active store data_B and snapshot store data_A)
> # create user scanner (read point = 11, so It should see the data_B)
> # commit of 1st flush
> #* clear snapshot ((hfile_A has data_A, active store data_B, and snapshot is 
> empty)
> #* update the reader (the user scanner receives the hfile_A)
> # snapshot of 2st flush (active is empty and snapshot store data_B)
> # commit of 2st flush
> #* clear snapshot (hfile_A has data_A, hfile_B has data_B, active is empty, 
> and snapshot is empty) – this is critical piece.
> #* -update the reader- (haven't happen)
> # user scanner update the kv scanners (it creates scanner of hfile_A but 
> nothing of memstore)
> # user see the older data A – wrong result



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to