From user-return-62674-archive-asf-public=cust-asf.ponee.io@cassandra.apache.org Sat Nov 3 01:13:51 2018 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx-eu-01.ponee.io (Postfix) with SMTP id 3A35C18062B for ; Sat, 3 Nov 2018 01:13:50 +0100 (CET) Received: (qmail 61411 invoked by uid 500); 3 Nov 2018 00:13:48 -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 61401 invoked by uid 99); 3 Nov 2018 00:13:48 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 03 Nov 2018 00:13:48 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id 03BD4C1CFB for ; Sat, 3 Nov 2018 00:13:48 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 1.889 X-Spam-Level: * X-Spam-Status: No, score=1.889 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=2, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, T_DKIMWL_WL_MED=-0.01] autolearn=disabled Authentication-Results: spamd4-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id LzT7WFTEeFhk for ; Sat, 3 Nov 2018 00:13:46 +0000 (UTC) Received: from mail-qk1-f172.google.com (mail-qk1-f172.google.com [209.85.222.172]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with ESMTPS id 551C45F324 for ; Sat, 3 Nov 2018 00:13:46 +0000 (UTC) Received: by mail-qk1-f172.google.com with SMTP id a132so5892655qkg.1 for ; Fri, 02 Nov 2018 17:13:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=A/XEkaLK1CPITBdy5SK0cXH3WcIQrX+2D8HJbdGv8/o=; b=Q9fDZdPBhU3egIt+MELmQ7IGPD22fpd5o+hE6MJ1rpcNzQ6ERMnMPAfQXviikW86Zh kMUykDsJH9ZmhkQJKToLCXZ6wHdc1l2CY+i9OhzwtlDekv3XRuVpgIBvy9lj6eKhFGAZ 8iqAp/km9fU9Nz5iaSlfjDVtACHSVsMcaK6QqJFY8IpU3g4+IblAB9Zf3IijVF9oBl5a thL0qG4fzqcyd3FexK3QzcEmRRXLk+RwPYZ+MGWEW9I9e+SyHhtbDtOYYxil7MlxLgGC W+4loSG9DE/67L8QLdrosBgp0oTIq5LbswgrmvgIXE0yUhjA3lGfj32xcEZA413QFofB w3ng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=A/XEkaLK1CPITBdy5SK0cXH3WcIQrX+2D8HJbdGv8/o=; b=TNViVBPflpiiCO4RsLG+T5Mv8mzdk/YXLtvsvys4vpjN2d34FruccqY2ITjT8AFcuR eg+oiXRH27p0xejXhts3t0RwDZHgL9Pauvbfj0Km57e3WAYk99odLcpSDaW4BX4WkIfs NNmHi9swthkcEg3xGNZRVA/u6j3eCZofqcSIUMFRUsmIsbTyzU5DeFmSAWv2ApE76d7G /zKQaXta/OSFsK8B5eGrTrKuiRqFmgsH8djVtLhURHi8Hstp1ga0pTarw0XrQWeO1bzg WIQmWKkH0WECR0W0E2BRD2BsMPkAfn51BvBatJ+4uzUW1YspovIzKZrFhZblM79vwr5D KnWA== X-Gm-Message-State: AGRZ1gKG49uJB4+8C1seOeUe/T9e/W0WKSpLObYZI+0yK7RDjK1htk6I cDRiJG4xc3BVdzKH+khZe1Kwbm1tuuCojoIg2+tpLg== X-Google-Smtp-Source: AJdET5ckfOOp+rVS8hA031WvWQGU79tfn7lrxoSyL0mHohe3Wd50hpjr9yQ5+1csH3b5WiWU0Q1bmQHN8w5Abg74tkQ= X-Received: by 2002:a37:5288:: with SMTP id g130-v6mr12922650qkb.124.1541204025651; Fri, 02 Nov 2018 17:13:45 -0700 (PDT) MIME-Version: 1.0 References: <81C4FCED-54DD-4F11-A06F-D50785E1BAAD@gmail.com> In-Reply-To: From: Brian Spindler Date: Fri, 2 Nov 2018 20:13:34 -0400 Message-ID: Subject: Re: upgrading from 2.x TWCS to 3.x TWCS To: user@cassandra.apache.org Content-Type: multipart/alternative; boundary="00000000000079c01e0579b7866e" --00000000000079c01e0579b7866e Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable That wasn't horrible at all. After testing, provided all goes well I can submit this back to the main TWCS repo if you think it's worth it. Either way do you mind just reviewing briefly for obvious mistakes? https://github.com/bspindler/twcs/commit/7ba388dbf41b1c9dc1b70661ad69273b25= 8139da Thanks! On Fri, Nov 2, 2018 at 7:24 PM Brian Spindler wrote: > I hope I can do as you suggest and leapfrog to 3.11 rather than two > stepping it from 3.7->3.11 > > Just having TWCS has saved me lots of hassle so it=E2=80=99s all good, th= anks for > all you do for our community. > > -B > > On Fri, Nov 2, 2018 at 3:54 PM Jeff Jirsa wrote: > >> I'm sincerely sorry for the hassle, but for various reasons beyond, it's >> unlikely I'll update my repo (at least me, personally). One fix is likel= y >> to grab the actual java classes from the apache repo, pull them in and f= ix >> the package names, and compile (essentially making your own 3.11 branch)= . >> >> I suppose you could also disable compaction, switch to something else >> (stcs), do the upgrade, then alter it back to the official TWCS. Whether= or >> not this is viable depends on how quickly you write, and how long it'll >> take you to upgrade. >> >> >> >> >> >> On Fri, Nov 2, 2018 at 11:57 AM Brian Spindler >> wrote: >> >>> you are right, it won't even compile: >>> >>> [INFO] ------------------------------------------------------------- >>> [ERROR] COMPILATION ERROR : >>> [INFO] ------------------------------------------------------------- >>> [ERROR] >>> /Users/bspindler/src/github/twcs/src/main/java/com/jeffjirsa/cassandra/= db/compaction/TimeWindowCompactionStrategy.java:[110,90] >>> cannot find symbol >>> symbol: method >>> getOverlappingSSTables(org.apache.cassandra.db.lifecycle.SSTableSet,jav= a.util.Set) >>> location: variable cfs of type >>> org.apache.cassandra.db.ColumnFamilyStore >>> [ERROR] >>> /Users/bspindler/src/github/twcs/src/main/java/com/jeffjirsa/cassandra/= db/compaction/TimeWindowCompactionStrategy.java:[150,99] >>> cannot find symbol >>> symbol: class SizeComparator >>> location: class org.apache.cassandra.io.sstable.format.SSTableReader >>> [ERROR] >>> /Users/bspindler/src/github/twcs/src/main/java/com/jeffjirsa/cassandra/= db/compaction/TimeWindowCompactionStrategy.java:[330,59] >>> cannot find symbol >>> symbol: class SizeComparator >>> location: class org.apache.cassandra.io.sstable.format.SSTableReader >>> [ERROR] >>> /Users/bspindler/src/github/twcs/src/main/java/com/jeffjirsa/cassandra/= db/compaction/SizeTieredCompactionStrategy.java:[104,67] >>> cannot find symbol >>> symbol: class SizeComparator >>> location: class org.apache.cassandra.io.sstable.format.SSTableReader >>> [INFO] 4 errors >>> >>> >>> >>> On Fri, Nov 2, 2018 at 2:52 PM Jeff Jirsa wrote: >>> >>>> There=E2=80=99s a chance it will fail to work - possible method signat= ures >>>> changed between 3.0 and 3.11. Try it in a test cluster before prod >>>> >>>> >>>> -- >>>> Jeff Jirsa >>>> >>>> >>>> On Nov 2, 2018, at 11:49 AM, Brian Spindler >>>> wrote: >>>> >>>> Nevermind, I spoke to quickly. I can change the cass version in the >>>> pom.xml and re compile, thanks! >>>> >>>> On Fri, Nov 2, 2018 at 2:38 PM Brian Spindler >>>> wrote: >>>> >>>>> >>>>> >>>>> >>>>> On Fri, Nov 2, 2018 at 2:34 PM Jeff Jirsa wrote: >>>>> >>>>>> Easiest approach is to build the 3.11 jar from my repo, upgrade, the= n >>>>>> ALTER table to use the official TWCS (org.apache.cassandra) jar >>>>>> >>>>>> Sorry for the headache. I hope I have a 3.11 branch for you. >>>>>> >>>>>> >>>>>> -- >>>>>> Jeff Jirsa >>>>>> >>>>>> >>>>>> On Nov 2, 2018, at 11:28 AM, Brian Spindler >>>>>> wrote: >>>>>> >>>>>> Hi all, we're planning an upgrade from 2.1.5->3.11.3 and currently w= e >>>>>> have several column families configured with twcs class >>>>>> 'com.jeffjirsa.cassandra.db.compaction.TimeWindowCompactionStrategy'= and >>>>>> with 3.11.3 we need to set it to 'TimeWindowCompactionStrategy' >>>>>> >>>>>> Is that a safe operation? Will cassandra even start if the column >>>>>> family has a compaction strategy defined with a classname it cannot >>>>>> resolve? >>>>>> How to deal with different versioned nodes and different class names >>>>>> during the upgrade of the binaries throughout the cluster? >>>>>> >>>>>> Thank you for any guidance, >>>>>> Brian >>>>>> >>>>>> -- > -Brian > --00000000000079c01e0579b7866e Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
That wasn't horrible at all.=C2=A0 After testing,= provided all goes well I can submit this back to the main TWCS repo if you= think it's worth it.=C2=A0=C2=A0

Either way d= o you mind just reviewing briefly for obvious mistakes?=C2=A0

Thanks!= =C2=A0

On Fri, N= ov 2, 2018 at 7:24 PM Brian Spindler <brian.spindler@gmail.com> wrote:
I hope I can do as you suggest and le= apfrog to 3.11 rather than two stepping it from 3.7->3.11

Just having TWCS has saved me lots of= hassle so it=E2=80=99s all good, thanks for all you do for our community.<= /div>

-B

On Fri= , Nov 2, 2018 at 3:54 PM Jeff Jirsa <jjirsa@gmail.com> wrote:
I'm sincerely sorry for the hassle, bu= t for various reasons beyond, it's unlikely I'll update my repo (at= least me, personally). One fix is likely to grab the actual java classes f= rom the apache repo, pull them in and fix the package names, and compile (e= ssentially making your own 3.11 branch).=C2=A0

I suppose= you could also disable compaction, switch to something else (stcs), do the= upgrade, then alter it back to the official TWCS. Whether or not this is v= iable depends on how quickly you write, and how long it'll take you to = upgrade.




<= /div>
On Fri, Nov 2, 2018 at= 11:57 AM Brian Spindler <brian.spindler@gmail.com> wrote:
you are right, it won't even comp= ile:=C2=A0

[INFO] ---------------------------------= ----------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] /Users/bspindler/src/github/twcs/src/main/java/com/jeffjirsa/= cassandra/db/compaction/TimeWindowCompactionStrategy.java:[110,90] cannot f= ind symbol
=C2=A0 symbol:=C2=A0 =C2=A0method getOverlappingSSTabl= es(org.apache.cassandra.db.lifecycle.SSTableSet,java.util.Set<org.apache= .cassandra.io.sstable.format.SSTableReader>)
=C2=A0 location: = variable cfs of type org.apache.cassandra.db.ColumnFamilyStore
[E= RROR] /Users/bspindler/src/github/twcs/src/main/java/com/jeffjirsa/cassandr= a/db/compaction/TimeWindowCompactionStrategy.java:[150,99] cannot find symb= ol
=C2=A0 symbol:=C2=A0 =C2=A0class SizeComparator
=C2= =A0 location: class org.apache.cassandra.io.sstable.format.SSTableReader
[ERROR] /Users/bspindler/src/github/twcs/src/main/java/com/jeffjirs= a/cassandra/db/compaction/TimeWindowCompactionStrategy.java:[330,59] cannot= find symbol
=C2=A0 symbol:=C2=A0 =C2=A0class SizeComparator
=C2=A0 location: class org.apache.cassandra.io.sstable.format.SSTable= Reader
[ERROR] /Users/bspindler/src/github/twcs/src/main/java/com= /jeffjirsa/cassandra/db/compaction/SizeTieredCompactionStrategy.java:[104,6= 7] cannot find symbol
=C2=A0 symbol:=C2=A0 =C2=A0class SizeCompar= ator
=C2=A0 location: class org.apache.cassandra.io.sstable.forma= t.SSTableReader
[INFO] 4 errors


On Fri, Nov 2= , 2018 at 2:52 PM Jeff Jirsa <jjirsa@gmail.com> wrote:
There=E2=80=99s a chance it will fail to work - = possible method signatures changed between 3.0 and 3.11. Try it in a test c= luster before prod


--=C2=A0
Jeff Jirsa

<= /div>

On Nov 2, 2018, at 11:49 = AM, Brian Spindler <brian.spindler@gmail.com> wrote:

N= evermind, I spoke to quickly.=C2=A0 I can change the cass version in the po= m.xml and re compile, thanks!=C2=A0

=
--
-Brian
--00000000000079c01e0579b7866e--