Return-Path: X-Original-To: apmail-hbase-dev-archive@www.apache.org Delivered-To: apmail-hbase-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 58405FA7D for ; Sat, 30 Mar 2013 13:05:16 +0000 (UTC) Received: (qmail 94447 invoked by uid 500); 30 Mar 2013 13:05:15 -0000 Delivered-To: apmail-hbase-dev-archive@hbase.apache.org Received: (qmail 94279 invoked by uid 500); 30 Mar 2013 13:05:13 -0000 Mailing-List: contact dev-help@hbase.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@hbase.apache.org Delivered-To: mailing list dev@hbase.apache.org Received: (qmail 94250 invoked by uid 99); 30 Mar 2013 13:05:12 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 30 Mar 2013 13:05:12 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=5.0 tests=RCVD_IN_DNSWL_LOW,SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (nike.apache.org: local policy) Received: from [209.85.128.170] (HELO mail-ve0-f170.google.com) (209.85.128.170) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 30 Mar 2013 13:05:06 +0000 Received: by mail-ve0-f170.google.com with SMTP id 15so1297878vea.29 for ; Sat, 30 Mar 2013 06:04:45 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:mime-version:in-reply-to:references:from:date:message-id :subject:to:content-type:x-gm-message-state; bh=sBy6V5TuPX55fQzybW3t0O9LCBnfHgYiy1bJX9vMT9o=; b=Cy1Y0rIN3DDx3SjMdellhMBC5nfyq4jk9xEXGdALj6nIxtLfvFbl3N24zM5l9kCRDI 4HhxrXX2GYcD7h5K0szhr53XgzGRqStjYOlNqeldHwzWcTeecoZaDJ2pzCWvveal/LX+ Avcdf7S6kNvxVkM7QzlQeVnRGwwcH4oOkstaTdTfiUthU9j4FtDvP5B1AHqjc4rxnrg6 mQuR+m4YsWS83yUIh5K2i442TnjCdLi80cIQPWBCxOzVSSM6lFE89r7BamDDTjxshgx9 1DWSHU9B9w9eDjZkRaK/f3uGzTRHWKt322Ft9OXDhGB3B/tF3a56YAjtyLlQYq0WlpMr 50dw== X-Received: by 10.58.224.101 with SMTP id rb5mr4479315vec.17.1364648685882; Sat, 30 Mar 2013 06:04:45 -0700 (PDT) MIME-Version: 1.0 Received: by 10.52.248.176 with HTTP; Sat, 30 Mar 2013 06:04:25 -0700 (PDT) In-Reply-To: References: From: Jean-Marc Spaggiari Date: Sat, 30 Mar 2013 09:04:25 -0400 Message-ID: Subject: Re: Wanted your thoughts on Rolling Upgrade Testing in HBase To: dev@hbase.apache.org Content-Type: text/plain; charset=UTF-8 X-Gm-Message-State: ALoCoQl7NJisAfYHU0rOVhJLZ8RIZnnGvo3CvIN7/RcbO4J1wUHv4pxnzTn3rQEFFlRheznP2sk2 X-Virus-Checked: Checked by ClamAV on apache.org Hi Aleks, I'm totally +1 with that too! With all the coming releases (0.95, 0.96 and 0.98) it might be a very good idea to have a way to make those tests automatic! Tracking issues and reporting them correctly over the rolling upgrade might be a challenge, but the end results is a big add to the releases. There will be many things to test in the upgrade, and many scenarios. How are you going to start the thinking on that? Is there a shared google document where you have start to put all the ideas/design around that? JMS 2013/3/29 Lars Hofhansl : > Yes please. If possible it could also include a rolling downgrade. > > Aleksandr Shulman wrote: > >>Hi all, >> >>I'd like to propose a potential solution to testing HBase Rolling Upgrade >>between minor versions of HBase. It would be great to get feedback. >> >>*Benefits:* >>This is a tricky feature and it would be really strengthen our trust with >>the product users if we can show that it is stable and correct (e.g. no >>loss of data). The best way to do that is with a test framework that allows >>for repeatability, transparency, and reporting. >> >>*Considerations:* >>It would be great to see us all agree on what should be supported during a >>rolling upgrade and work towards it using this test framework. >> >>To that end, I have a few goals in mind: >>-Integration test should be able to trigger a rolling upgrade of an >>existing cluster, regardless of how it is set up >>-It should be extensible enough so that it can be extended to support >>different ways of setting up HBase (tarballs, packages, parcels, or any >>other formats that are relevant) >>-It should be able to report results of various testing operations >>-It should be easy to add new tests to the suite, particularly by those who >>have only passing familiarity with rolling upgrade >>-These tests should be first-class citizens WRT other tests >>-Should standardize what the minimum set of services is for a rolling >>upgrade (e.g. master, backup master, 2 regionservers, zk, etc.) >>-Should support both secure and insecure rolling upgrade >> >>*Potential Solution:* >>I propose using IntegrationTest to bind to an existing remote cluster. It >>would be able to perform the rolling upgrade steps while running tests over >>a cluster that is already in place. >> >>At a high level, we would first agree on and create a standard workflow for >>upgrading a cluster. Then, we would work on using IntegrationTest to run >>tests (e.g. insert data, do mapreduce over hbase jobs, etc.) while the >>cluster is in flux. The challenge would be adding code that will handle >>specific cluster setups (e.g. tarballs vs. packages vs. parcels), but we >>can abstract it away. >> >>Please let me know what you think about this idea and if you'd like to work >>together to accomplish this goal. >> >>-- >>Best Regards, >> >>Aleks Shulman >>847.814.5804 >>Cloudera