Details

    • Type: Test Test
    • Status: Patch Available
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: 1.7.0
    • Component/s: None
    • Labels:
      None

      Description

      Accumulo upgrade testing in the past has been very minimal and mostly manual. As a result we have run into upgrade bugs in the past. It would be nice to have a framework that makes its easy to run and write upgrade test.

      • Can be configured to use existing HDFS and zookeeper instances
      • Can be configured with 1.5.x and 1.6.x branches to build
      • Supports multiple upgrade scenarios (like clean shutdown, dirty shutdown, etc)
      • Runs a set of upgrade test (this would a be a list of test to run thats easy to add to e.g. bulk import upgrade test)

      I am thinking the framework could do the following

         1. Build or download a version of 1.5
         2. Build or download a version of 1.6
       
         foreach scenario {
            foreach upgrade test{
                 a. ask test for any 1.5 configuration
                 b. ask test for any 1.6 configuration
                 c. Unpack and configure 1.5  
                 d. Unpack and configure 1.6
                 e. Execute pre upgrade step of test
                 f. Execute scenario
                 g Execute post upgrade step of test
            }
         }
      

      The framework would configure the Accumulo versions, HDFS, zookeeper, and which test to run.

      It would also be use to write the framework in such a way that it could support chaining upgrade test. For example run test that upgrades from 1.4 to 1.5 to 1.6. It possible that a fresh install of 1.5 will upgrade w/o problems, but a 1.5 system was upgraded to 1.4 will not.

      1. ACCUMULO-2145.v2.patch
        105 kB
        John McNamee
      2. ACCUMULO-2145.v3.patch
        110 kB
        John McNamee
      3. ACCUMULO-2145.v4.patch
        110 kB
        John McNamee
      4. updateTest.sh
        31 kB
        John McNamee

        Issue Links

          Activity

          Hide
          Sean Busbey added a comment -

          A configurable HDFS/ZK could point to anything, so you get cluster for free with that, so I think you're on the right track there.

          It doesn't get you a clustered deployment of Accumulo; though I agree this is fine for a first pass.

          Show
          Sean Busbey added a comment - A configurable HDFS/ZK could point to anything, so you get cluster for free with that, so I think you're on the right track there. It doesn't get you a clustered deployment of Accumulo; though I agree this is fine for a first pass.
          Hide
          Christopher Tubbs added a comment -

          A configurable HDFS/ZK could point to anything, so you get cluster for free with that, so I think you're on the right track there.

          Show
          Christopher Tubbs added a comment - A configurable HDFS/ZK could point to anything, so you get cluster for free with that, so I think you're on the right track there.
          Hide
          John McNamee added a comment -

          Sean I am planning to make using exiting HDFS and zookeeper instances configurable but I was not planning on having the Accumulo instance be across a cluster in this first pass.

          Show
          John McNamee added a comment - Sean I am planning to make using exiting HDFS and zookeeper instances configurable but I was not planning on having the Accumulo instance be across a cluster in this first pass.
          Hide
          Sean Busbey added a comment -

          Can be configured to use existing HDFS and zookeeper instances

          Just as a general concern, I'm going to want to use this against a live cluster, rather than in psuedo distributed single node. That makes this particular part of the ticket description important for my use case. Additionally, I'm going to want the Accumulo instance to be across a cluster rather than a single node.

          John, are you aiming to get either of those things included in this first pass? If not, I'd like to make sure we get follow-on tickets made before closing this one out.

          Show
          Sean Busbey added a comment - Can be configured to use existing HDFS and zookeeper instances Just as a general concern, I'm going to want to use this against a live cluster, rather than in psuedo distributed single node. That makes this particular part of the ticket description important for my use case. Additionally, I'm going to want the Accumulo instance to be across a cluster rather than a single node. John, are you aiming to get either of those things included in this first pass? If not, I'd like to make sure we get follow-on tickets made before closing this one out.
          Hide
          Sean Busbey added a comment -

          John, could you post this to reviewboard so it's easier to give feedback?

          Show
          Sean Busbey added a comment - John, could you post this to reviewboard so it's easier to give feedback?
          Hide
          John McNamee added a comment -

          Early work in progress.

          Show
          John McNamee added a comment - Early work in progress.

            People

            • Assignee:
              John McNamee
              Reporter:
              Keith Turner
            • Votes:
              1 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:

                Development