Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.7.0
    • Component/s: tserver
    • Labels:
      None

      Description

      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.

      1. ACCUMULO-2041-v2.patch
        466 kB
        Eric Newton
      2. ACCUMULO-2041-v1.patch
        439 kB
        Eric Newton

        Issue Links

          Activity

          Hide
          ASF subversion and git services added a comment -

          Commit 8071252801817dc88d5e6b50fa58ad3b0a629446 in accumulo's branch refs/heads/master from Eric Newton
          [ https://git-wip-us.apache.org/repos/asf?p=accumulo.git;h=8071252 ]

          ACCUMULO-2041 should not clear compaction state while still compacting

          Show
          ASF subversion and git services added a comment - Commit 8071252801817dc88d5e6b50fa58ad3b0a629446 in accumulo's branch refs/heads/master from Eric Newton [ https://git-wip-us.apache.org/repos/asf?p=accumulo.git;h=8071252 ] ACCUMULO-2041 should not clear compaction state while still compacting
          Hide
          ASF subversion and git services added a comment -

          Commit f280e9713ca3016cec3c082321774d579c86d51e in accumulo's branch refs/heads/master from Eric Newton
          [ https://git-wip-us.apache.org/repos/asf?p=accumulo.git;h=f280e97 ]

          ACCUMULO-2041 finished state management in Tablet

          Show
          ASF subversion and git services added a comment - Commit f280e9713ca3016cec3c082321774d579c86d51e in accumulo's branch refs/heads/master from Eric Newton [ https://git-wip-us.apache.org/repos/asf?p=accumulo.git;h=f280e97 ] ACCUMULO-2041 finished state management in Tablet
          Hide
          ASF subversion and git services added a comment -

          Commit a13f788d45db934412bbd45da9650110a5cd1dd0 in accumulo's branch refs/heads/master from Eric Newton
          [ https://git-wip-us.apache.org/repos/asf?p=accumulo.git;h=a13f788 ]

          ACCUMULO-2041 provide alternative name for entries in a WAL

          Show
          ASF subversion and git services added a comment - Commit a13f788d45db934412bbd45da9650110a5cd1dd0 in accumulo's branch refs/heads/master from Eric Newton [ https://git-wip-us.apache.org/repos/asf?p=accumulo.git;h=a13f788 ] ACCUMULO-2041 provide alternative name for entries in a WAL
          Hide
          ASF subversion and git services added a comment -

          Commit 459d3048eb39650ebff2c93734d2886a9d4869c7 in accumulo's branch refs/heads/master from Eric Newton
          [ https://git-wip-us.apache.org/repos/asf?p=accumulo.git;h=459d304 ]

          ACCUMULO-2041 more review updates

          Show
          ASF subversion and git services added a comment - Commit 459d3048eb39650ebff2c93734d2886a9d4869c7 in accumulo's branch refs/heads/master from Eric Newton [ https://git-wip-us.apache.org/repos/asf?p=accumulo.git;h=459d304 ] ACCUMULO-2041 more review updates
          Hide
          ASF subversion and git services added a comment -

          Commit 8049859154dc5cab5a5a0ce1d6babaf243c06922 in accumulo's branch refs/heads/master from Eric Newton
          [ https://git-wip-us.apache.org/repos/asf?p=accumulo.git;h=8049859 ]

          ACCUMULO-2041 updates from initial review

          Show
          ASF subversion and git services added a comment - Commit 8049859154dc5cab5a5a0ce1d6babaf243c06922 in accumulo's branch refs/heads/master from Eric Newton [ https://git-wip-us.apache.org/repos/asf?p=accumulo.git;h=8049859 ] ACCUMULO-2041 updates from initial review
          Hide
          ASF subversion and git services added a comment -

          Commit 7db2abf19c2e0585b2f3ea32068c3d62bd891590 in accumulo's branch refs/heads/master from Eric Newton
          [ https://git-wip-us.apache.org/repos/asf?p=accumulo.git;h=7db2abf ]

          ACCUMULO-2041 extract tablet classes to new files, move tablet-related code to o.a.a.tserver.tablet, make member variables private

          Show
          ASF subversion and git services added a comment - Commit 7db2abf19c2e0585b2f3ea32068c3d62bd891590 in accumulo's branch refs/heads/master from Eric Newton [ https://git-wip-us.apache.org/repos/asf?p=accumulo.git;h=7db2abf ] ACCUMULO-2041 extract tablet classes to new files, move tablet-related code to o.a.a.tserver.tablet, make member variables private
          Hide
          Eric Newton added a comment -

          Updated patch based on review comments.

          Show
          Eric Newton added a comment - Updated patch based on review comments.
          Hide
          Bill Havanki added a comment -

          I'd like to help out on this if I may. ACCUMULO-1948 has given me the chance to delve into Tablet code.

          Show
          Bill Havanki added a comment - I'd like to help out on this if I may. ACCUMULO-1948 has given me the chance to delve into Tablet code.

            People

            • Assignee:
              Eric Newton
              Reporter:
              Eric Newton
            • Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development