You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@accumulo.apache.org by "Bill Havanki (JIRA)" <ji...@apache.org> on 2014/02/04 16:40:10 UTC
[jira] [Commented] (ACCUMULO-2041) refactor Tablet
[ https://issues.apache.org/jira/browse/ACCUMULO-2041?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13890775#comment-13890775 ]
Bill Havanki commented on ACCUMULO-2041:
----------------------------------------
I'd like to help out on this if I may. ACCUMULO-1948 has given me the chance to delve into {{Tablet}} code.
> refactor Tablet
> ---------------
>
> Key: ACCUMULO-2041
> URL: https://issues.apache.org/jira/browse/ACCUMULO-2041
> Project: Accumulo
> Issue Type: Bug
> Components: tserver
> Reporter: Eric Newton
> Assignee: Eric Newton
> Fix For: 1.7.0
>
>
> Tablet has some very delicate state stored in several variables. Translate this into some sort of sane state machine, with appropriate, clean log messages when the state transitions. I'm specifically thinking of {{closing}}, {{closed}}, {{closeComplete}} and {{closeCompleting}}. That's 16 possible states, but I'm thinking that only a few make any sense. May want to look at the {{...InProgress}} and {{..WaitingToStart}} booleans, too. Some of the embedded classes could be moved out to their own files, just to reduce the size of the class. There are 17 uses of the keyword {{class}} in this one file. The constructor nesting is pretty crazy. The constructor is doing too much. It should not be doing recovery, for example. It should not be passing "this" to anything. Small things, like {{extent}}, {{fs}}, {{conf}} should be final. Anything that would facilitate unit testing would be welcome.
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)