Description
ProtobufUtil splits operations by regions and performs multiple client.multi calls. In case if there are certain errors inside RS, HRegionServer adds the corresponding exceptions to MultiResponse, PU continues the multi request for other regions, and returns partial failure.
In case of other errors (for example, region not served exception), the entire multi operation stops executing, and previous successes and partial results are disregarded.
ProtobufUtil should probably catch ServiceException separately for each client.multi call, make it a partial-failure exception for all actions for this region, and also continue the batch, to make the behavior consistent.
Alternatively, if we want to avoid continuing the batch in case of some server-wide errors/connection problems/etc., server should do that for region-specific errors (add exception to results for each action).
Attachments
Attachments
Issue Links
- relates to
-
HBASE-8037 RegionMovedException is handled incorrectly for multi-region requests that fail completely
- Closed