Return-Path: X-Original-To: apmail-hbase-issues-archive@www.apache.org Delivered-To: apmail-hbase-issues-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id D043011A94 for ; Fri, 15 Aug 2014 12:19:18 +0000 (UTC) Received: (qmail 39042 invoked by uid 500); 15 Aug 2014 12:19:18 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 38997 invoked by uid 500); 15 Aug 2014 12:19:18 -0000 Mailing-List: contact issues-help@hbase.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list issues@hbase.apache.org Received: (qmail 38981 invoked by uid 99); 15 Aug 2014 12:19:18 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 15 Aug 2014 12:19:18 +0000 Date: Fri, 15 Aug 2014 12:19:18 +0000 (UTC) From: "Andrey Stepachev (JIRA)" To: issues@hbase.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (HBASE-7767) Get rid of ZKTable, and table enable/disable state in ZK MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/HBASE-7767?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14098497#comment-14098497 ] Andrey Stepachev commented on HBASE-7767: ----------------------------------------- Have done more research. Seems that an idea with tableinfo looks better. TableStateManager implementation can hold information in memory and on failover to new master it simply reread from hdfs. Every state change will goes through TSM too. Transient states stored in memory too. Why it is better then using table: - table is much more heavyweight structure than needed (why we need support for wal and split log for such small structure) - TableStateManager used even before meta table is up, so it is not obvious, where to store state of meta table and states table itself. Currently client uses zk. With table implementation it will use regular scan requests, but it will be cumbersome to implement modification semantics (we need coprocessor to intercept updates to this table). Much better solution is to add status (enabled/disabled) to HTableDescriptor. Thats gives consistent way to create disabled tables. Or to disable enabled via alter table calls. Transient states (ENABLING/DISABLING) should be stored in memory and on reactivating new master it should figure out that table is not enabled/disabled completely (state of the table will be disabled, but not all regions unassigned). Is it make sense? > Get rid of ZKTable, and table enable/disable state in ZK > --------------------------------------------------------- > > Key: HBASE-7767 > URL: https://issues.apache.org/jira/browse/HBASE-7767 > Project: HBase > Issue Type: Sub-task > Components: Zookeeper > Affects Versions: 0.95.2 > Reporter: Enis Soztutar > Assignee: Andrey Stepachev > > As discussed table state in zookeeper for enable/disable state breaks our zookeeper contract. It is also very intrusive, used from the client side, master and region servers. We should get rid of it. -- This message was sent by Atlassian JIRA (v6.2#6252)