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 4EE22200D44 for ; Fri, 13 Oct 2017 01:03:05 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 4D7021609E8; Thu, 12 Oct 2017 23:03:05 +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 8E165160BE5 for ; Fri, 13 Oct 2017 01:03:04 +0200 (CEST) Received: (qmail 25629 invoked by uid 500); 12 Oct 2017 23:03:03 -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 25600 invoked by uid 99); 12 Oct 2017 23:03:03 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 12 Oct 2017 23:03:03 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id 2E57FC70F2 for ; Thu, 12 Oct 2017 22:45:04 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-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-us.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id 1cmjgqwIZM7j for ; Thu, 12 Oct 2017 22:45:03 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with ESMTP id A91E65F1B3 for ; Thu, 12 Oct 2017 22:45:02 +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 A5F91E0F7A for ; Thu, 12 Oct 2017 22:45:01 +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 3620723F6F for ; Thu, 12 Oct 2017 22:45:01 +0000 (UTC) Date: Thu, 12 Oct 2017 22:45:01 +0000 (UTC) From: "stack (JIRA)" To: issues@hbase.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (HBASE-12260) MasterServices needs a short-back-and-sides; pare-back exposure of internals and IA.Private classes MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Thu, 12 Oct 2017 23:03:05 -0000 [ https://issues.apache.org/jira/browse/HBASE-12260?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16202745#comment-16202745 ] stack commented on HBASE-12260: ------------------------------- On TODOs: * Schedule and wait on flush/compaction ** This is RegionServer-side, not Master-side. Can schedule Flush or Compaction via Admin on Master side but no means for blocking (AsyncAdmin returns a CompletableFuture but it too is just a request; it does not have the future wait on completion of compaction). * Creating system tables (Done via Admin. Testing) ** Only Master process can make system tables (while at it, only Master can write hbase:meta). TODO. Tried but the RpcService is unreliable and we want to check that the request comes from same process, not just same IP. * Review of RSGroups to see what functionality need to add back into MasterServices ** This is blocked on RSGroup work. Will require more exposure I think but already the RSGroup fixup has removed need of our exposing table locks. Thats a big help. * Metrics/by-pass ** TODO: if bypass is selective and we can update metrics even on bypass, then we won't have to let out metrics. So, three follow-ons: only master can make system tables, do we have to expose more functionality for CPs (see what RSGroup needs when done), and do bypass to see if we need to let out metrics or not. > MasterServices needs a short-back-and-sides; pare-back exposure of internals and IA.Private classes > --------------------------------------------------------------------------------------------------- > > Key: HBASE-12260 > URL: https://issues.apache.org/jira/browse/HBASE-12260 > Project: HBase > Issue Type: Sub-task > Components: master > Reporter: ryan rawson > Assignee: stack > Priority: Critical > Fix For: 2.0.0-alpha-4 > > Attachments: HBASE-12260.master.001.patch, HBASE-12260.master.002.patch, HBASE-12260.master.003.patch, HBASE-12260.master.004.patch, HBASE-12260.master.005.patch, HBASE-12260.master.006.patch, HBASE-12260.master.007.patch, HBASE-12260.master.008.patch, HBASE-12260.master.009.patch, HBASE-12260.master.010.patch, HBASE-12260.master.011.patch, HBASE-12260.master.011.patch, HBASE-12260.master.012.patch > > > A major issue with MasterServices is the MasterCoprocessorEnvironment exposes this class even though MasterServices is tagged with @InterfaceAudience.Private > This means that the entire internals of the HMaster is essentially part of the coprocessor API. Many of the classes returned by the MasterServices API are highly internal, extremely powerful, and subject to constant change. > Perhaps a new API to replace MasterServices that is use-case focused, and justified based on real world co-processors would suit things better. -- This message was sent by Atlassian JIRA (v6.4.14#64029)