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 55012200B9E for ; Sat, 24 Sep 2016 02:33:22 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 538D0160ADA; Sat, 24 Sep 2016 00:33:22 +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 99B2C160AD0 for ; Sat, 24 Sep 2016 02:33:21 +0200 (CEST) Received: (qmail 36842 invoked by uid 500); 24 Sep 2016 00:33:20 -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 36814 invoked by uid 99); 24 Sep 2016 00:33:20 -0000 Received: from arcas.apache.org (HELO arcas) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 24 Sep 2016 00:33:20 +0000 Received: from arcas.apache.org (localhost [127.0.0.1]) by arcas (Postfix) with ESMTP id 9593C2C0B05 for ; Sat, 24 Sep 2016 00:33:20 +0000 (UTC) Date: Sat, 24 Sep 2016 00:33:20 +0000 (UTC) From: "Samarth Jain (JIRA)" To: dev@phoenix.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Updated] (PHOENIX-3326) Restoring SYSTEM.CATALOG from snapshot causes clients to run into UpgradeInProgressException MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Sat, 24 Sep 2016 00:33:22 -0000 [ https://issues.apache.org/jira/browse/PHOENIX-3326?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Samarth Jain updated PHOENIX-3326: ---------------------------------- Attachment: PHOENIX-3326_4.8-HBase-0.98_v2.patch > Restoring SYSTEM.CATALOG from snapshot causes clients to run into UpgradeInProgressException > -------------------------------------------------------------------------------------------- > > Key: PHOENIX-3326 > URL: https://issues.apache.org/jira/browse/PHOENIX-3326 > Project: Phoenix > Issue Type: Bug > Reporter: Samarth Jain > Assignee: Samarth Jain > Attachments: PHOENIX-3326_4.8-HBase-0.98.patch, PHOENIX-3326_4.8-HBase-0.98_v2.patch, PHOENIX-3326_wip.patch > > > We create a snapshot of the SYSTEM.CATALOG table only after the client is able to successfully acquire a distributed mutex of sorts. This means the snapshot also ends up containing the row that serves as the mutex. Now when restoring the table from snapshot, this rows is still present which causes clients to throw UpgradeInProgress exception. > I can think of a couple of ways to fix this: > 1) Do the checkAndPut for the UPGRADE_MUTEX after creating the snapshot. I am not too sure though how about HBase handles concurrent snapshot requests. Do clients get an exception? Also we potentially could end up creating more snapshots than we really need to. > 2) Do the checkAndPut for the UPGRADE_MUTEX in a different table (possibly SYSTEM.SEQUENCE). This way the restored snapshot won't have the row. We would need to delete the row from SYSTEM.SEQUENCE after the upgrade is done (successfully or unsuccessfully). > [~jamestaylor] - WDYT? > FYI, [~lhofhansl] - this is probably a blocker for 4.8.1 -- This message was sent by Atlassian JIRA (v6.3.4#6332)