Return-Path: Delivered-To: apmail-hbase-issues-archive@www.apache.org Received: (qmail 52797 invoked from network); 17 Aug 2010 19:16:43 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 17 Aug 2010 19:16:43 -0000 Received: (qmail 57823 invoked by uid 500); 17 Aug 2010 19:16:43 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 57771 invoked by uid 500); 17 Aug 2010 19:16:42 -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 57763 invoked by uid 99); 17 Aug 2010 19:16:42 -0000 Received: from Unknown (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 17 Aug 2010 19:16:42 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.22] (HELO thor.apache.org) (140.211.11.22) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 17 Aug 2010 19:16:40 +0000 Received: from thor (localhost [127.0.0.1]) by thor.apache.org (8.13.8+Sun/8.13.8) with ESMTP id o7HJGIoY005942 for ; Tue, 17 Aug 2010 19:16:19 GMT Message-ID: <24994657.401431282072578672.JavaMail.jira@thor> Date: Tue, 17 Aug 2010 15:16:18 -0400 (EDT) From: "Jonathan Gray (JIRA)" To: issues@hbase.apache.org Subject: [jira] Commented: (HBASE-2695) HMaster cleanup and refactor In-Reply-To: <24898971.30531276023191321.JavaMail.jira@thor> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/HBASE-2695?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12899535#action_12899535 ] Jonathan Gray commented on HBASE-2695: -------------------------------------- bq. + Q: Can I miss events like data changed znode data events? What do you mean "can you miss"? Like, is it possible or do you mean if it happens will we still be okay? Specifically which znode(s) are you talking about? unassigned ones? It's designed so we do not ever miss events, though we can actually miss an individual event we have guarantees about not missing end states. bq. + Q: Why when we start a master do we assign root and meta? Thats a mistake? Yeah it's a mistake to do that if a failed-over master. What the assignRoot/assignMeta methods should do is check to see if they are already assigned, and if so, do nothing. If not current assignment we should trigger one and then still wait as we do. bq. + Q: We let out IEs and KEs? What are we doing to do w/ them up in the higher levels of server? It becomes responsibility of callers. In most cases, a KE does an abort(). Interrupted needs to be handled accordingly (in general we don't expect most things to get interrupted, if they do, it's likely done at shutdown). bq. + ClusterStatusTracker is wrong. Its znode is root region location rather than clusterStatusZNode ( /hbase/shutdown)? Yes it's wrong. We're not really doing anything with it which is why that didn't matter I guess. Like we've discussed, this should be actually used to trigger RS startup rather than presence of a master. bq. + In zkassign, we need to fix how it takes regionname when it really wants encodedregionname -- errorprone; should just pass regioninfo everytime. Sounds like a fine change to me. Just need to make sure we can always have a RegionInfo. bq. + I movd to use event handlers to shutdown regions inside regionserver always..... Not sure I totally follow. Let's discuss further. Any chance at editing your previous comment and introducing some line breaks? I hate when these jiras go mega-wide :) Good stuff. I'm still making my way through the svn log. > HMaster cleanup and refactor > ---------------------------- > > Key: HBASE-2695 > URL: https://issues.apache.org/jira/browse/HBASE-2695 > Project: HBase > Issue Type: Sub-task > Components: master > Reporter: Jonathan Gray > Assignee: Jonathan Gray > Priority: Critical > Fix For: 0.90.0 > > Attachments: HBASE-2695-MasterStartupCleanup-v4.patch, HBASE-2695-part1-masterstatus.patch, HBASE-2695-part2.1-masterstatus.patch, HBASE-2695-ZK-Master-FINAL-v4.patch > > > Before doing the more significant changes to HMaster, it would benefit greatly from some cleanup, commenting, and a bit of refactoring. > One motivation is to nail down the initialization flow and comment each step. Another is to add a couple new classes to break up functionality into helpers to reduce HMaster size (for example, pushing all filesystem operations into their own class). And lastly to stop the practice of passing around references to HMaster everywhere and instead pass along only what is necessary. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.