[
https://issues.apache.org/jira/browse/HBASE-4583?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13142914#comment-13142914
]
Lars Hofhansl commented on HBASE-4583:
--------------------------------------
I have a new patch that does the above.
I wrote a multithreaded stress test and I found the following:
1. I get incorrect behavior if I remove duplicates after the rowlock is
released. (doing that with the rowlock held solved the problem).
2. Even though the end result is correct, if I have the threads do GET
operations I see that they do not always get all columns for a row. More
interestingly I find sometimes that even KVs with a different timestamps and
different memstoreTS show up in the same Get. (note that no flushing happens
during the tests, so this has nothing to do with store files not carrying a
memstoreTS).
I thought at the least the Memstore was consistent (i.e. scanners only see
columns when rwcc is rolled forward, but then they would see all columns
affected by that writepoint).
> Integrate RWCC with Append and Increment operations
> ---------------------------------------------------
>
> Key: HBASE-4583
> URL: https://issues.apache.org/jira/browse/HBASE-4583
> Project: HBase
> Issue Type: Bug
> Reporter: Lars Hofhansl
> Assignee: Lars Hofhansl
> Fix For: 0.94.0
>
> Attachments: 4583-v2.txt, 4583-v3.txt, 4583-v4.txt, 4583.txt
>
>
> Currently Increment and Append operations do not work with RWCC and hence a
> client could see the results of multiple such operation mixed in the same
> Get/Scan.
> The semantics might be a bit more interesting here as upsert adds and removes
> to and from the memstore.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira