phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James Taylor (JIRA)" <>
Subject [jira] [Commented] (PHOENIX-3789) Execute cross region index maintenance calls outside of row lock
Date Fri, 14 Apr 2017 20:53:41 GMT


James Taylor commented on PHOENIX-3789:

bq. Are there Phoenix features (or client features using Phoenix) that we know of that assume
atomicity between the row update and the index update?
[~gjacoby] - there is no atomicity guarantee we can make between index row and data table
updates (unless client uses transactions). We do have to notify client (through an exception)
if the index update fails. We'll still do that with this change, though.

No need to make updates under row lock - it was done this way because this hook that runs
outside the row lock didn't exist before (or we didn't know about it). Local indexes (from
HBase 1.3 and above) will take advantage of a new API to ensure that both data table row and
index row are updated atomically.

> Execute cross region index maintenance calls outside of row lock
> ----------------------------------------------------------------
>                 Key: PHOENIX-3789
>                 URL:
>             Project: Phoenix
>          Issue Type: Bug
>            Reporter: James Taylor
>            Assignee: James Taylor
>             Fix For: 4.11.0, 4.10.1
>         Attachments: PHOENIX-3789.patch, PHOENIX-3789_v2.patch
> Making cross region server calls while the row is locked can lead to a greater chance
of resource starvation. We can use the postBatchMutateIndispensably hook instead of the postBatchMutate
call for our processing.

This message was sent by Atlassian JIRA

View raw message