[ 
https://issues.apache.org/jira/browse/HBASE-9612?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

stack updated HBASE-9612:
-------------------------

      Resolution: Fixed
    Release Note: Restores being able to send many regions's worth of edits to 
a regionserver when running the multi call (previous it was doing a single 
region's worth at a time).  Required redo of the multi proto model.  Removed 
multiGet since it had same problem in that it only did a region's worth at a 
time; use the multi call instead to do multiGets.  All should be transparent to 
the user but those trying to do clients against hbase will see changes (flags 
moved from GetRequest to Get and the above mentioned refactor of the 
MultiRequest proto).
          Status: Resolved  (was: Patch Available)

> Ability to batch edits destined to different regions
> ----------------------------------------------------
>
>                 Key: HBASE-9612
>                 URL: https://issues.apache.org/jira/browse/HBASE-9612
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 0.95.0, 0.95.1, 0.95.2, 0.96.0
>            Reporter: Benoit Sigoure
>            Assignee: stack
>            Priority: Blocker
>             Fix For: 0.98.0, 0.96.0
>
>         Attachments: 
> 0001-fix-packaging-by-region-in-MultiServerCallable.patch, 9612.096.v5.txt, 
> 9612-nico.v14.096.txt, 9612revert.txt, 9612-v10-nico.patch, 9612v10.txt, 
> 9612-v11-nico.patch, 9612v11.txt, 9612v12.txt, 9612.v13-nico.patch, 
> 9612.v14-nico.patch, 9612v2.txt, 9612v3.txt, 9612v4.txt, 9612v5.txt, 
> 9612v5.txt, 9612v5.txt, 9612v7.txt, 9612v8.096.txt, 9612v8.txt, 9612v9.txt, 
> 9612v9.txt, 9612.wip.txt, broken.patch
>
>
> The old (pre-PB) "multi" and "multiPut" RPCs allowed one to batch edits 
> destined to different regions.  Seems like we've lost this ability after the 
> switch to protobufs.
> The {{MultiRequest}} only contains one {{RegionSpecifier}}, and a list of 
> {{MultiAction}}.  The {{MultiAction}} message is contains either a single 
> {{MutationProto}} or a {{Get}} (but not both – so its name is misleading as 
> there is nothing "multi" about it).  Also it seems redundant with 
> {{MultiGetRequest}}, I'm not sure what's the point of supporting {{Get}} in 
> {{MultiAction}}.
> I propose that we change {{MultiRequest}} to be a just a list of 
> {{MultiAction}}, and {{MultiAction}} will contain the {{RegionSpecifier}}, 
> the {{bool atomic}} and a list of {{MutationProto}}.  This would be a 
> non-backward compatible protobuf change.
> If we want we can support mixing edits and reads, in which case we'd also add 
> a list of {{Get}} in {{MultiAction}}, and we'd have support having both that 
> list and the list of {{MutationProto}} set at the same time.  But this is a 
> bonus and can be done later (in a backward compatible manner, hence no need 
> to rush on this one).



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to