Author: xedin
Date: Wed Aug 31 20:30:20 2011
New Revision: 1163801
URL: http://svn.apache.org/viewvc?rev=1163801&view=rev
Log:
Make the compression algorithm and chunk length configurable
patch by Sylvain Lebresne; reviewed by Pavel Yaskevich for CASSANDRA-3001
Added:
cassandra/trunk/src/java/org/apache/cassandra/io/compress/CompressionParameters.java
cassandra/trunk/src/java/org/apache/cassandra/io/compress/DeflateCompressor.java
cassandra/trunk/src/java/org/apache/cassandra/io/compress/ICompressor.java
cassandra/trunk/src/java/org/apache/cassandra/io/compress/SnappyCompressor.java
Modified:
cassandra/trunk/CHANGES.txt
cassandra/trunk/interface/cassandra.thrift
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/AuthenticationException.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/AuthenticationRequest.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/AuthorizationException.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CfDef.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/ColumnDef.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/ColumnOrSuperColumn.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/ColumnParent.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/ColumnPath.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CounterColumn.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CounterSuperColumn.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CqlResult.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/CqlRow.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Deletion.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/IndexClause.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/IndexExpression.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/KeyCount.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/KeyRange.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/KeySlice.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/KsDef.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Mutation.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SchemaDisagreementException.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SlicePredicate.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SliceRange.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/TimedOutException.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/TokenRange.java
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/UnavailableException.java
cassandra/trunk/src/avro/internode.genavro
cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java
cassandra/trunk/src/java/org/apache/cassandra/config/CFMetaData.java
cassandra/trunk/src/java/org/apache/cassandra/io/compress/CompressedRandomAccessReader.java
cassandra/trunk/src/java/org/apache/cassandra/io/compress/CompressedSequentialWriter.java
cassandra/trunk/src/java/org/apache/cassandra/io/compress/CompressionMetadata.java
cassandra/trunk/src/java/org/apache/cassandra/io/sstable/SSTableWriter.java
cassandra/trunk/src/resources/org/apache/cassandra/cli/CliHelp.yaml
cassandra/trunk/test/unit/org/apache/cassandra/SchemaLoader.java
cassandra/trunk/test/unit/org/apache/cassandra/io/compress/CompressedRandomAccessReaderTest.java
cassandra/trunk/tools/stress/src/org/apache/cassandra/stress/Session.java
Modified: cassandra/trunk/CHANGES.txt
URL:
http://svn.apache.org/viewvc/cassandra/trunk/CHANGES.txt?rev=1163801&r1=1163800&r2=1163801&view=diff
==============================================================================
--- cassandra/trunk/CHANGES.txt (original)
+++ cassandra/trunk/CHANGES.txt Wed Aug 31 20:30:20 2011
@@ -53,7 +53,7 @@
* remove compaction_thread_priority setting (CASSANDRA-3104)
* generate hints for replicas that timeout, not just replicas that are known
to be down before starting (CASSANDRA-2034)
-
+ * Make the compression algorithm and chunk length configurable
(CASSANDRA-3001)
0.8.5
* fix NPE when encryption_options is unspecified (CASSANDRA-3007)
Modified: cassandra/trunk/interface/cassandra.thrift
URL:
http://svn.apache.org/viewvc/cassandra/trunk/interface/cassandra.thrift?rev=1163801&r1=1163800&r2=1163801&view=diff
==============================================================================
--- cassandra/trunk/interface/cassandra.thrift (original)
+++ cassandra/trunk/interface/cassandra.thrift Wed Aug 31 20:30:20 2011
@@ -399,7 +399,8 @@ struct CfDef {
29: optional string compaction_strategy,
30: optional map<string,string> compaction_strategy_options,
31: optional i32 row_cache_keys_to_save,
- 32: optional bool compression,
+ 32: optional string compression,
+ 33: optional map<string,string> compression_options,
}
/* describes a keyspace. */
Modified:
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/AuthenticationException.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/AuthenticationException.java?rev=1163801&r1=1163800&r2=1163801&view=diff
==============================================================================
---
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/AuthenticationException.java
(original)
+++
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/AuthenticationException.java
Wed Aug 31 20:30:20 2011
@@ -334,5 +334,21 @@ public class AuthenticationException ext
}
}
+ private void writeObject(java.io.ObjectOutputStream out) throws
java.io.IOException {
+ try {
+ write(new org.apache.thrift.protocol.TCompactProtocol(new
org.apache.thrift.transport.TIOStreamTransport(out)));
+ } catch (org.apache.thrift.TException te) {
+ throw new java.io.IOException(te);
+ }
+ }
+
+ private void readObject(java.io.ObjectInputStream in) throws
java.io.IOException, ClassNotFoundException {
+ try {
+ read(new org.apache.thrift.protocol.TCompactProtocol(new
org.apache.thrift.transport.TIOStreamTransport(in)));
+ } catch (org.apache.thrift.TException te) {
+ throw new java.io.IOException(te);
+ }
+ }
+
}
Modified:
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/AuthenticationRequest.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/AuthenticationRequest.java?rev=1163801&r1=1163800&r2=1163801&view=diff
==============================================================================
---
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/AuthenticationRequest.java
(original)
+++
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/AuthenticationRequest.java
Wed Aug 31 20:30:20 2011
@@ -379,5 +379,21 @@ public class AuthenticationRequest imple
}
}
+ private void writeObject(java.io.ObjectOutputStream out) throws
java.io.IOException {
+ try {
+ write(new org.apache.thrift.protocol.TCompactProtocol(new
org.apache.thrift.transport.TIOStreamTransport(out)));
+ } catch (org.apache.thrift.TException te) {
+ throw new java.io.IOException(te);
+ }
+ }
+
+ private void readObject(java.io.ObjectInputStream in) throws
java.io.IOException, ClassNotFoundException {
+ try {
+ read(new org.apache.thrift.protocol.TCompactProtocol(new
org.apache.thrift.transport.TIOStreamTransport(in)));
+ } catch (org.apache.thrift.TException te) {
+ throw new java.io.IOException(te);
+ }
+ }
+
}
Modified:
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/AuthorizationException.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/AuthorizationException.java?rev=1163801&r1=1163800&r2=1163801&view=diff
==============================================================================
---
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/AuthorizationException.java
(original)
+++
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/AuthorizationException.java
Wed Aug 31 20:30:20 2011
@@ -334,5 +334,21 @@ public class AuthorizationException exte
}
}
+ private void writeObject(java.io.ObjectOutputStream out) throws
java.io.IOException {
+ try {
+ write(new org.apache.thrift.protocol.TCompactProtocol(new
org.apache.thrift.transport.TIOStreamTransport(out)));
+ } catch (org.apache.thrift.TException te) {
+ throw new java.io.IOException(te);
+ }
+ }
+
+ private void readObject(java.io.ObjectInputStream in) throws
java.io.IOException, ClassNotFoundException {
+ try {
+ read(new org.apache.thrift.protocol.TCompactProtocol(new
org.apache.thrift.transport.TIOStreamTransport(in)));
+ } catch (org.apache.thrift.TException te) {
+ throw new java.io.IOException(te);
+ }
+ }
+
}