Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 523D5200C56 for ; Fri, 14 Apr 2017 22:53:47 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 462B4160BA3; Fri, 14 Apr 2017 20:53:47 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 884C9160B8A for ; Fri, 14 Apr 2017 22:53:46 +0200 (CEST) Received: (qmail 52667 invoked by uid 500); 14 Apr 2017 20:53:45 -0000 Mailing-List: contact dev-help@phoenix.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@phoenix.apache.org Delivered-To: mailing list dev@phoenix.apache.org Received: (qmail 52647 invoked by uid 99); 14 Apr 2017 20:53:45 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd3-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 14 Apr 2017 20:53:45 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd3-us-west.apache.org (ASF Mail Server at spamd3-us-west.apache.org) with ESMTP id 4F5FA182398 for ; Fri, 14 Apr 2017 20:53:45 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd3-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -99.202 X-Spam-Level: X-Spam-Status: No, score=-99.202 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001, USER_IN_WHITELIST=-100] autolearn=disabled Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd3-us-west.apache.org [10.40.0.10]) (amavisd-new, port 10024) with ESMTP id MY2YD_4-GIKx for ; Fri, 14 Apr 2017 20:53:44 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTP id EE7FD5FB49 for ; Fri, 14 Apr 2017 20:53:43 +0000 (UTC) Received: from jira-lw-us.apache.org (unknown [207.244.88.139]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id 0C514E0D3E for ; Fri, 14 Apr 2017 20:53:43 +0000 (UTC) Received: from jira-lw-us.apache.org (localhost [127.0.0.1]) by jira-lw-us.apache.org (ASF Mail Server at jira-lw-us.apache.org) with ESMTP id A172B21B54 for ; Fri, 14 Apr 2017 20:53:41 +0000 (UTC) Date: Fri, 14 Apr 2017 20:53:41 +0000 (UTC) From: "James Taylor (JIRA)" To: dev@phoenix.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (PHOENIX-3789) Execute cross region index maintenance calls outside of row lock MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Fri, 14 Apr 2017 20:53:47 -0000 [ https://issues.apache.org/jira/browse/PHOENIX-3789?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15969515#comment-15969515 ] 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: https://issues.apache.org/jira/browse/PHOENIX-3789 > 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 (v6.3.15#6346)