spotify / cassandra-reaper

Software to run automated repairs of cassandra
235 stars 60 forks source link

Cassandra 2.1.13 works only with PR#121 and not current master #138

Open deniszh opened 8 years ago

deniszh commented 8 years ago

Tried master branch on latest stable Cassandra 2.1.13, got exactly same error as in https://github.com/spotify/cassandra-reaper/issues/65, despite merged support of C* 2.1.8:( Tried this PR - https://github.com/spotify/cassandra-reaper/pull/121 - works like a charm, even with incrementalRepair:false Unfortunately, PR#121 has merge conflicts with current master...

vrischmann commented 8 years ago

@deniszh just as an fyi, the only thing needed for reaper to work with a 2.1.13 cluster is to upgrade the cassandra.version to 2.1.13 in the pom.xml file, IF you don't want incremental repair.

I migrated yesterday from 2.1.5 to 2.1.13, and we don't (yet) intend to use incremental repairs, so that's the only thing we had to do. Right now, it works without problems.

Hope that helps.

deniszh commented 8 years ago

Unfortunately, it do not work for me, something in Cassandra 2.1.13 class is not compatible with current reaper:

[ERROR] /Users/dzhdanov/git/cassandra-reaper/src/main/java/com/spotify/reaper/service/SegmentRunner.java:[32,34] cannot find symbol symbol: class SimpleCondition location: package org.apache.cassandra.utils [ERROR] /Users/dzhdanov/git/cassandra-reaper/src/main/java/com/spotify/reaper/service/SegmentRunner.java:[60,43] cannot find symbol symbol: class SimpleCondition location: class com.spotify.reaper.service.SegmentRunner [ERROR] /Users/dzhdanov/git/cassandra-reaper/src/main/java/com/spotify/reaper/cassandra/JmxProxy.java:[351,23] no suitable method found for forceRepairRangeAsync(java.lang.String,java.lang.String,java.lang.String,int,,,java.lang.String[]) method org.apache.cassandra.service.StorageServiceMBean.forceRepairRangeAsync(java.lang.String,java.lang.String,java.lang.String,boolean,java.util.Collection,java.util.Collection,boolean,java.lang.String...) is not applicable (argument mismatch; int cannot be converted to boolean) method org.apache.cassandra.service.StorageServiceMBean.forceRepairRangeAsync(java.lang.String,java.lang.String,java.lang.String,int,java.util.Collection,java.util.Collection,boolean,java.lang.String...) is not applicable (argument mismatch; java.lang.String[] cannot be converted to boolean) method org.apache.cassandra.service.StorageServiceMBean.forceRepairRangeAsync(java.lang.String,java.lang.String,java.lang.String,boolean,boolean,boolean,java.lang.String...) is not applicable (argument mismatch; int cannot be converted to boolean) [ERROR] /Users/dzhdanov/git/cassandra-reaper/src/main/java/com/spotify/reaper/cassandra/JmxProxy.java:[363,19] no suitable method found for forceRepairRangeAsync(java.lang.String,java.lang.String,java.lang.String,boolean,boolean,java.lang.String[]) method org.apache.cassandra.service.StorageServiceMBean.forceRepairRangeAsync(java.lang.String,java.lang.String,java.lang.String,boolean,java.util.Collection,java.util.Collection,boolean,java.lang.String...) is not applicable (argument mismatch; boolean cannot be converted to java.util.Collection) method org.apache.cassandra.service.StorageServiceMBean.forceRepairRangeAsync(java.lang.String,java.lang.String,java.lang.String,int,java.util.Collection,java.util.Collection,boolean,java.lang.String...) is not applicable (argument mismatch; boolean cannot be converted to int) method org.apache.cassandra.service.StorageServiceMBean.forceRepairRangeAsync(java.lang.String,java.lang.String,java.lang.String,boolean,boolean,boolean,java.lang.String...) is not applicable (argument mismatch; java.lang.String[] cannot be converted to boolean)

deniszh commented 8 years ago

And changing to 2.1.8 (as in PR#121) doesn't help either. PR#121 still builds and works fine btw.