[
https://issues.apache.org/jira/browse/HBASE-8458?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17093373#comment-17093373
]
Toshihiro Suzuki commented on HBASE-8458:
-----------------------------------------
Ping [~zhangduo] [~stack]. Could you please review the PR when you get a chance?
https://github.com/apache/hbase/pull/1320
The review points of the change are as follows:
- The change has Protocol Buffers level changes. I moved
MultiRequest#condition to RegionAction and MultiResponse#processed to
RegionActionResult as mentioend in the follwoing comment.
https://issues.apache.org/jira/browse/HBASE-8458?focusedCommentId=17064155&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-17064155
- Introduce CheckAndMutate class that is instantiated by builder classes.
- Add new 2 checkAndMutate methods with a single CheckAndMutate object and
multiple CheckAndMutate objects.
- Deprecated the old checkAndMutate methods.
Thanks.
> Support for batch version of checkAndPut() and checkAndDelete()
> ---------------------------------------------------------------
>
> Key: HBASE-8458
> URL: https://issues.apache.org/jira/browse/HBASE-8458
> Project: HBase
> Issue Type: New Feature
> Components: Client, regionserver
> Reporter: Hari Mankude
> Assignee: Toshihiro Suzuki
> Priority: Major
> Fix For: 3.0.0, 2.4.0
>
>
> The use case is that the user has multiple threads loading hundreds of keys
> into a hbase table. Occasionally there are collisions in the keys being
> uploaded by different threads. So for correctness, it is required to do
> checkAndPut() instead of a put(). However, doing a checkAndPut() rpc for
> every key update is non optimal. It would be good to have a batch version of
> checkAndPut() similar to batch put(). The client can partition the keys on
> region boundaries.
> The jira is NOT looking for any type of cross-row locking or multi-row
> atomicity with checkAndPut()
> Batch version of checkAndDelete() is a similar requirement.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)