jeffjirsa / twcs

Time Window CompactionStrategy for Apache Cassandra
52 stars 24 forks source link

Right version for 3.0.5 #4

Closed williamsjj closed 8 years ago

williamsjj commented 8 years ago

Hello,

Which release is the correct one if we're using 3.0.5?

-J

spynode commented 8 years ago

Is it possible to build current code against Cassandra 3.5/3.6 and get correctly working TWCS?

Edit: To answer my own question - no it is not.

[ERROR] COMPILATION ERROR : [INFO] ------------------------------------------------------------- [ERROR] twcs/src/main/java/com/jeffjirsa/cassandra/db/compaction/writers/CleaningTimeWindowCompactionWriter.java:[115,5] method does not override or implement a method from a supertype

jeffjirsa commented 8 years ago

TWCS has been merged upstream and will be available mainline in 3.8. I'll check on your compilation error this evening after day job. I suspect abstract compaction policy got modified, breaking api compatibility, for something that likely just needs to be stubbed out.

williamsjj commented 8 years ago

It looked from the Jira it will be in 3.0.8 too? Available about the same time?

We'll likely need it before August, so I was trying to determine which build on GH to use for a 3.0.5/3.0.6 server?

jeffjirsa commented 8 years ago

If you can't wait for me to fix it properly (EOD today), checkout the version before the 'auto cleanup' functionality (which doesnt exist in trunk, and you probably don't care about anyway:

git checkout -f 81a0ebe6ce5a7f2ac097efb61729e43465451f40

Then change pom.xml to build against 3.5 or 3.0.5 or similar:

diff --git a/pom.xml b/pom.xml
index c1d8ffe..a9009a5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,7 +4,7 @@
   <groupId>com.jeffjirsa.cassandra.db.compaction</groupId>
   <artifactId>TimeWindowCompactionStrategy</artifactId>
   <packaging>jar</packaging>
-  <version>3.2</version>
+  <version>3.5</version>
   <name>TimeWindowCompactionStrategy</name>
   <url>https://github.com/jeffjirsa/twcs</url>
   <properties>
@@ -21,7 +21,7 @@
     <dependency>
       <groupId>org.apache.cassandra</groupId>
       <artifactId>cassandra-all</artifactId>
-      <version>3.2</version>
+      <version>3.5</version>
     </dependency>
   </dependencies>
 </project>
williamsjj commented 8 years ago

Hey Jeff. I can wait. Just want to get swapped over from DTCS before our data size gets into trouble. Thank you btw!

jeffjirsa commented 8 years ago

The issue here was the CompactionAwareWriter abstract class removed a method, breaking the API: https://github.com/apache/cassandra/commit/29525005071dd7321c5d444cb7e898a18057ba67

Pushing a fix shortly

jeffjirsa commented 8 years ago

Fixed by https://github.com/jeffjirsa/twcs/commit/14a3fe503bc0de1d030361b5836beb9752eca010

williamsjj commented 8 years ago

Thanks Jeff. Is this commit good for 3.0.5 or just 3.5?