[
https://issues.apache.org/jira/browse/HBASE-8318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13633192#comment-13633192
]
Jean-Daniel Cryans commented on HBASE-8318:
-------------------------------------------
bq. Data at v0 is correct, but for User2, other version are not more alligned
as expected.
Your use case is pretty edgy, and even then I think HBase still does the right
thing as long as you use the same timestamps for all your versions. In your
example, User2 will only have one version of t0 if both t0 are equal, meaning
that t6 will not get discarded (the older t0 would). If not, your use case
would be broken by any write to a RS that dies, if the write was committed but
the call failed to return properly (the client would then retry and write
elsewhere).
bq. Or do you have any other recommandation?
Not let people use ICVs in MR :)
But talking to the other boys here (mostly Jon, Elliott and Jimmy), they think
it would still be useful. We agreed that:
- We should accept both Append and Increment by default.
- We should print a fat WARN if speculative execution is turned on (map or
reduce), warning the user of what might happen for any operation (so not just
CAS operations).
We could still warn the user if spec exec is turned off when they use
Append/Increment but we would need to keep a boolean around and warn only after
the first use. What I'm thinking here is that people usually don't use multiple
versions as a default use case, but CAS operations will always have the
potential to be "broken" when tasks die and are retried.
What do you think JM?
> TableOutputFormat.TableRecordWriter should accept Increments
> ------------------------------------------------------------
>
> Key: HBASE-8318
> URL: https://issues.apache.org/jira/browse/HBASE-8318
> Project: HBase
> Issue Type: Bug
> Reporter: Jean-Marc Spaggiari
> Assignee: Jean-Marc Spaggiari
> Attachments: HBASE-8318-v0-trunk.patch, HBASE-8318-v1-trunk.patch,
> HBASE-8318-v2-trunk.patch
>
>
> TableOutputFormat.TableRecordWriter can take Puts and Deletes but it should
> also accept Increments.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira