Return-Path: X-Original-To: apmail-cassandra-user-archive@www.apache.org Delivered-To: apmail-cassandra-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id BEC5CD47F for ; Mon, 5 Nov 2012 19:17:09 +0000 (UTC) Received: (qmail 94168 invoked by uid 500); 5 Nov 2012 19:17:07 -0000 Delivered-To: apmail-cassandra-user-archive@cassandra.apache.org Received: (qmail 94144 invoked by uid 500); 5 Nov 2012 19:17:07 -0000 Mailing-List: contact user-help@cassandra.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@cassandra.apache.org Delivered-To: mailing list user@cassandra.apache.org Received: (qmail 94136 invoked by uid 99); 5 Nov 2012 19:17:07 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 05 Nov 2012 19:17:07 +0000 X-ASF-Spam-Status: No, hits=-0.1 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_MED,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of btalbot@aeriagames.com designates 74.125.149.246 as permitted sender) Received: from [74.125.149.246] (HELO na3sys009aog119.obsmtp.com) (74.125.149.246) by apache.org (qpsmtpd/0.29) with SMTP; Mon, 05 Nov 2012 19:17:02 +0000 Received: from mail-qc0-f198.google.com ([209.85.216.198]) (using TLSv1) by na3sys009aob119.postini.com ([74.125.148.12]) with SMTP ID DSNKUJgQmVcsMYyyVxE93i32HiVpXx/raJsX@postini.com; Mon, 05 Nov 2012 11:16:41 PST Received: by mail-qc0-f198.google.com with SMTP id e13so8227811qcs.1 for ; Mon, 05 Nov 2012 11:16:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aeriagames.com; s=google; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=D0xKLQkI14RBz2Ro4Tjs1Pe44zW8nZnn+Vn5a6vdeb4=; b=s2jBvO2oFxo65uW2/wL9uV1lH98Xyv9R3DrOPweuL6pZDS4b3TMTFnU2oy2X5Bm2xA B3+352LHEQSyHFW6iRJVLBf3io9RgmpE9mU8M9cAkYxErmeSGLfbx6ZROdzWEh4ij/nh bz7IpxiyavtkoIrfnxulYpYXJ321ea0Ye4zn8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:x-gm-message-state; bh=D0xKLQkI14RBz2Ro4Tjs1Pe44zW8nZnn+Vn5a6vdeb4=; b=C/s99nX2bH/gzE9ohknc1o1knMMKIjNa5Z6raMpADh31n+ZE0k75hnkEUZYkmo4onj PBvfkhB3yWKngJ/NIh1tGK+Ysmo1Td1EvewZEGR6CYlZBerJVzFAcitfdqsmAAkGg0/6 rl86HJ+A1WhQ19WkYjQ6uKhlVGLS7K/xyya5Z/UHXJqPbLJ0KaNi+f+VrTeYALdzRRB8 grLhBlr6/YWa7GZTZt4Tbf444pq+GG70a0EgPFsbpqg5I53zlglc/Qg/03HEozFSrkhR J5pCO2ibOYftd8U55tpbgYAJvIihpzR2D1PaTp3xMfOwDGTOYY1vq6i0SzWpKoNRhmtF i8qA== Received: by 10.58.210.65 with SMTP id ms1mr10477294vec.59.1352143000419; Mon, 05 Nov 2012 11:16:40 -0800 (PST) MIME-Version: 1.0 Received: by 10.58.210.65 with SMTP id ms1mr10477287vec.59.1352143000239; Mon, 05 Nov 2012 11:16:40 -0800 (PST) Received: by 10.58.246.73 with HTTP; Mon, 5 Nov 2012 11:16:40 -0800 (PST) In-Reply-To: References: Date: Mon, 5 Nov 2012 11:16:40 -0800 Message-ID: Subject: Re: How to upgrade a ring (0.8.9 nodes) to 1.1.5 with the minimal downtime? From: Bryan Talbot To: user@cassandra.apache.org Content-Type: multipart/alternative; boundary=047d7bae479236fddf04cdc4532d X-Gm-Message-State: ALoCoQkWHTjdiG1EK7YAN9VcXbl6HbnjrmDH9NaR8rRDVsKwyUR4kOzgNw9AqcsVk437qCKxrRM/hh0o1uy6g6HNr/HoknQXCw7HmPk2CEYzdaObbbbaSZn7NJKU9dN+a4qlH6WdRIq0zcx0VL7sAVxoBv+6M77et6Pc5j2/r5tAECMOcXyT0Bw= X-Virus-Checked: Checked by ClamAV on apache.org --047d7bae479236fddf04cdc4532d Content-Type: text/plain; charset=UTF-8 Do a rolling upgrade of the ring to 1.0.12 first and then upgrade to 1.1.x. After each rolling upgrade, you should probably do the recommend "nodetool upgradesstables", etc. The datastax documentation about upgrading might be helpful for you: http://www.datastax.com/docs/1.1/install/upgrading -Bryan On Mon, Nov 5, 2012 at 10:55 AM, Yan Wu wrote: > Hello, > > I have a Cassandra ring with 4 nodes in 0.8.9 and like to upgrade all > nodes to 1.1.5. > It would be great that the upgrade has no downtime or minimal downtime of > the ring. > After I brought down one of the nodes and upgraded it to 1.1.5, when I > tried to bring it up, > the new 1.1.5 node looks good but the rest of three 0.8.9 nodes started > throwing exceptions: > --------------- > Fatal exception in thread Thread[GossipStage:2,5,main] > java.lang.UnsupportedOperationException: Not a time-based UUID > at > org.apache.cassandra.service.MigrationManager.rectify(MigrationManager.java:92) > at > org.apache.cassandra.service.MigrationManager.onAlive(MigrationManager.java:75) > at org.apache.cassandra.gms.Gossiper.markAlive(Gossiper.java:707) > at > org.apache.cassandra.gms.Gossiper.handleMajorStateChange(Gossiper.java:750) > at > org.apache.cassandra.gms.Gossiper.applyStateLocally(Gossiper.java:809) > at > org.apache.cassandra.gms.GossipDigestAckVerbHandler.doVerb(GossipDigestAckVerbHandler.java:68) > at > org.apache.cassandra.net.MessageDeliveryTask.run(MessageDeliveryTask.java:59) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) > ---------------- > Then later > ---------------- > ERROR 12:03:20,925 Fatal exception in thread Thread[HintedHandoff:1,1,main] > java.lang.RuntimeException: java.lang.RuntimeException: Could not reach > schema agreement with /xx.xx.xx.xx in 60000ms > at > org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:34) > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) > at java.lang.Thread.run(Thread.java:662) > Caused by: java.lang.RuntimeException: Could not reach schema agreement > with /xx.xx.xx.xx in 60000ms > at > org.apache.cassandra.db.HintedHandOffManager.waitForSchemaAgreement(HintedHandOffManager.java:293) > at > org.apache.cassandra.db.HintedHandOffManager.deliverHintsToEndpoint(HintedHandOffManager.java:304) > at > org.apache.cassandra.db.HintedHandOffManager.access$100(HintedHandOffManager.java:89) > at > org.apache.cassandra.db.HintedHandOffManager$2.runMayThrow(HintedHandOffManager.java:397) > at > org.apache.cassandra.utils.WrappedRunnable.run(WrappedRunnable.java:30) > ... 3 more > ---------------- > > Any suggestions? Thanks in advance. > > Yan > --047d7bae479236fddf04cdc4532d Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Do a rolling upgrade of the ring to 1.0.12 first and then upgrade to 1.1.x.= =C2=A0After each rolling upgrade, you should probably do the recommend &qu= ot;nodetool upgradesstables", etc. =C2=A0The datastax documentation ab= out upgrading might be helpful for you:=C2=A0http://www.datastax.com/docs/1.1/install/u= pgrading

-Bryan


On = Mon, Nov 5, 2012 at 10:55 AM, Yan Wu <ywu@prospricing.com>= wrote:
Hello,

I have a Cassandra ring with 4 nodes in 0.8.9 and like to upgrade all nodes= to 1.1.5.
It would be great that the upgrade has no downtime or minimal downtime of t= he ring.
After I brought down one of the nodes and upgraded it to 1.1.5, when I trie= d to bring it up,
the new 1.1.5 node looks good but the rest of three 0.8.9 nodes started thr= owing exceptions:
---------------
Fatal exception in thread Thread[GossipStage:2,5,main]
java.lang.UnsupportedOperationException: Not a time-based UUID
at org.apache.cassandra.service.MigrationManager.rectify(MigrationManager.j= ava:92)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 at org.apache.cassandra.service.MigrationManage= r.onAlive(MigrationManager.java:75)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 at org.apache.cassandra.gms.Gossiper.markAlive(= Gossiper.java:707)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 at org.apache.cassandra.gms.Gossiper.handleMajo= rStateChange(Gossiper.java:750)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 at org.apache.cassandra.gms.Gossiper.applyState= Locally(Gossiper.java:809)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 at org.apache.cassandra.gms.GossipDigestAckVerb= Handler.doVerb(GossipDigestAckVerbHandler.java:68)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 at org.apache.cassandra.net.MessageDeliveryTask= .run(MessageDeliveryTask.java:59)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 at java.util.concurrent.ThreadPoolExecutor$Work= er.runTask(ThreadPoolExecutor.java:886)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 at java.util.concurrent.ThreadPoolExecutor$Work= er.run(ThreadPoolExecutor.java:908)
----------------
Then later
----------------
ERROR 12:03:20,925 Fatal exception in thread Thread[HintedHandoff:1,1,main]=
java.lang.RuntimeException: java.lang.RuntimeException: Could not reach sch= ema agreement with /xx.xx.xx.xx in 60000ms
=C2=A0 =C2=A0 =C2=A0 =C2=A0 at org.apache.cassandra.utils.WrappedRunnable.r= un(WrappedRunnable.java:34)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 at java.util.concurrent.ThreadPoolExecutor$Work= er.runTask(ThreadPoolExecutor.java:886)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 at java.util.concurrent.ThreadPoolExecutor$Work= er.run(ThreadPoolExecutor.java:908)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.RuntimeException: Could not reach schema agreement wit= h /xx.xx.xx.xx in 60000ms
=C2=A0 =C2=A0 =C2=A0 =C2=A0 at org.apache.cassandra.db.HintedHandOffManager= .waitForSchemaAgreement(HintedHandOffManager.java:293)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 at org.apache.cassandra.db.HintedHandOffManager= .deliverHintsToEndpoint(HintedHandOffManager.java:304)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 at org.apache.cassandra.db.HintedHandOffManager= .access$100(HintedHandOffManager.java:89)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 at org.apache.cassandra.db.HintedHandOffManager= $2.runMayThrow(HintedHandOffManager.java:397)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 at org.apache.cassandra.utils.WrappedRunnable.r= un(WrappedRunnable.java:30)
=C2=A0 =C2=A0 =C2=A0 =C2=A0 ... 3 more
----------------

Any suggestions? =C2=A0 Thanks in advance.

Yan


--047d7bae479236fddf04cdc4532d--