Author: jbellis
Date: Mon Feb 14 14:55:07 2011
New Revision: 1070511
URL: http://svn.apache.org/viewvc?rev=1070511&view=rev
Log:
merge from 0.7
Modified:
cassandra/trunk/contrib/ (props changed)
cassandra/trunk/contrib/client_only/conf/cassandra.yaml
cassandra/trunk/contrib/stress/src/org/apache/cassandra/contrib/stress/Session.java
cassandra/trunk/contrib/stress/src/org/apache/cassandra/contrib/stress/operations/Inserter.java
cassandra/trunk/contrib/stress/src/org/apache/cassandra/contrib/stress/operations/Reader.java
Propchange: cassandra/trunk/contrib/
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Mon Feb 14 14:55:07 2011
@@ -0,0 +1,8 @@
+/cassandra/branches/cassandra-0.6/contrib:922689-1052356,1052358-1053452,1053454,1053456-1068009
+/cassandra/branches/cassandra-0.7/contrib:1026516-1070510
+/cassandra/branches/cassandra-0.7.0/contrib:1053690-1055654
+/cassandra/tags/cassandra-0.7.0-rc3/contrib:1051699-1053689
+/incubator/cassandra/branches/cassandra-0.3/contrib:774578-796573
+/incubator/cassandra/branches/cassandra-0.4/contrib:810145-834239,834349-834350
+/incubator/cassandra/branches/cassandra-0.5/contrib:888872-915439
+/incubator/cassandra/branches/cassandra-0.6/contrib:911237-922688
Modified: cassandra/trunk/contrib/client_only/conf/cassandra.yaml
URL:
http://svn.apache.org/viewvc/cassandra/trunk/contrib/client_only/conf/cassandra.yaml?rev=1070511&r1=1070510&r2=1070511&view=diff
==============================================================================
--- cassandra/trunk/contrib/client_only/conf/cassandra.yaml (original)
+++ cassandra/trunk/contrib/client_only/conf/cassandra.yaml Mon Feb 14 14:55:07
2011
@@ -90,17 +90,12 @@ commitlog_sync: periodic
# milliseconds.
commitlog_sync_period_in_ms: 10000
-# any class that implements the SeedProvider interface and has a constructor
that takes a Map<String, String> of
-# parameters will do.
-seed_provider:
- # Addresses of hosts that are deemed contact points.
- # Cassandra nodes use this list of hosts to find each other and learn
- # the topology of the ring. You must change this if you are running
- # multiple nodes!
- - class_name: org.apache.cassandra.locator.SimpleSeedProvider
- parameters:
- # seeds is actually a comma-delimited list of addresses.
- - seeds: "127.0.0.1"
+# Addresses of hosts that are deemed contact points.
+# Cassandra nodes use this list of hosts to find each other and learn
+# the topology of the ring. You must change this if you are running
+# multiple nodes!
+seeds:
+ - 127.0.0.1
# Access mode. mmapped i/o is substantially faster, but only practical on
# a 64bit machine (which notably does not include EC2 "small" instances)
@@ -292,23 +287,6 @@ request_scheduler: org.apache.cassandra.
# the index is at the cost of space.
index_interval: 128
-# Enable or disable inter-node encryption
-# Default settings are TLS v1, RSA 1024-bit keys (it is imperative that
-# users generate their own keys) TLS_RSA_WITH_AES_128_CBC_SHA as the cipher
-# suite for authentication, key exchange and encryption of the actual data
transfers.
-# NOTE: No custom encryption options are enabled at the moment
-# The available internode options are : all, none
-#
-# The passwords used in these options must match the passwords used when
generating
-# the keystore and truststore. For instructions on generating these files,
see:
-#
http://download.oracle.com/javase/6/docs/technotes/guides/security/jsse/JSSERefGuide.html#CreateKeystore
-encryption_options:
- internode_encryption: none
- keystore: conf/.keystore
- keystore_password: cassandra
- truststore: conf/.truststore
- truststore_password: cassandra
-
# Keyspaces have ColumnFamilies. (Usually 1 KS per application.)
# ColumnFamilies have Rows. (Dozens of CFs per KS.)
# Rows contain Columns. (Many per CF.)
@@ -338,7 +316,8 @@ encryption_options:
# With NetworkTopologyStrategy,
# for each datacenter, you can specify how many replicas you want
# on a per-keyspace basis. Replicas are placed on different racks
-# within each DC, if possible.
+# within each DC, if possible. This strategy also requires rack aware
+# snitch, such as RackInferringSnitch or PropertyFileSnitch.
# An example:
# - name: Keyspace1
# replica_placement_strategy:
org.apache.cassandra.locator.NetworkTopologyStrategy
@@ -481,10 +460,3 @@ keyspaces:
validator_class: LongType
index_name: birthdate_idx
index_type: KEYS
-
- - name: Counter1
- default_validation_class: CounterColumnType
-
- - name: SuperCounter1
- column_type: Super
- default_validation_class: CounterColumnType
Modified:
cassandra/trunk/contrib/stress/src/org/apache/cassandra/contrib/stress/Session.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/contrib/stress/src/org/apache/cassandra/contrib/stress/Session.java?rev=1070511&r1=1070510&r2=1070511&view=diff
==============================================================================
---
cassandra/trunk/contrib/stress/src/org/apache/cassandra/contrib/stress/Session.java
(original)
+++
cassandra/trunk/contrib/stress/src/org/apache/cassandra/contrib/stress/Session.java
Mon Feb 14 14:55:07 2011
@@ -17,23 +17,23 @@
*/
package org.apache.cassandra.contrib.stress;
+import java.io.*;
+import java.nio.ByteBuffer;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.concurrent.atomic.AtomicIntegerArray;
+import java.util.concurrent.atomic.AtomicLongArray;
+
+import org.apache.commons.cli.*;
+
import org.apache.cassandra.db.ColumnFamilyType;
import org.apache.cassandra.thrift.*;
-import org.apache.commons.cli.*;
import org.apache.thrift.protocol.TBinaryProtocol;
import org.apache.thrift.transport.TFramedTransport;
import org.apache.thrift.transport.TSocket;
import org.apache.thrift.transport.TTransport;
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.PrintStream;
-import java.nio.ByteBuffer;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.concurrent.atomic.AtomicIntegerArray;
-import java.util.concurrent.atomic.AtomicLongArray;
-
public class Session
{
// command line options
@@ -53,6 +53,7 @@ public class Session
availableOptions.addOption("S", "column-size", true, "Size
of column values in bytes, default:34");
availableOptions.addOption("C", "cardinality", true,
"Number of unique values stored in columns, default:50");
availableOptions.addOption("d", "nodes", true, "Host
nodes (comma separated), default:locahost");
+ availableOptions.addOption("D", "nodesfile", true, "File
containing host nodes (one per line)");
availableOptions.addOption("s", "stdev", true,
"Standard Deviation Factor, default:0.1");
availableOptions.addOption("r", "random", false, "Use
random key generator (STDEV will have no effect), default:false");
availableOptions.addOption("f", "file", true,
"Write output to given file");
@@ -125,11 +126,32 @@ public class Session
columnSize = Integer.parseInt(cmd.getOptionValue("S"));
if (cmd.hasOption("C"))
- cardinality = Integer.parseInt(cmd.getOptionValue("t"));
+ cardinality = Integer.parseInt(cmd.getOptionValue("C"));
if (cmd.hasOption("d"))
nodes = cmd.getOptionValue("d").split(",");
+ if (cmd.hasOption("D"))
+ {
+ try
+ {
+ String node = null;
+ List<String> tmpNodes = new ArrayList<String>();
+ BufferedReader in = new BufferedReader(new
InputStreamReader(new FileInputStream(cmd.getOptionValue("D"))));
+ while ((node = in.readLine()) != null)
+ {
+ if (node.length() > 0)
+ tmpNodes.add(node);
+ }
+ nodes = tmpNodes.toArray(new String[tmpNodes.size()]);
+ in.close();
+ }
+ catch(IOException ioe)
+ {
+ throw new RuntimeException(ioe);
+ }
+ }
+
if (cmd.hasOption("s"))
STDev = Float.parseFloat(cmd.getOptionValue("s"));
Modified:
cassandra/trunk/contrib/stress/src/org/apache/cassandra/contrib/stress/operations/Inserter.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/contrib/stress/src/org/apache/cassandra/contrib/stress/operations/Inserter.java?rev=1070511&r1=1070510&r2=1070511&view=diff
==============================================================================
---
cassandra/trunk/contrib/stress/src/org/apache/cassandra/contrib/stress/operations/Inserter.java
(original)
+++
cassandra/trunk/contrib/stress/src/org/apache/cassandra/contrib/stress/operations/Inserter.java
Mon Feb 14 14:55:07 2011
@@ -23,6 +23,7 @@ import org.apache.cassandra.thrift.*;
import org.apache.cassandra.utils.ByteBufferUtil;
import java.nio.ByteBuffer;
+import java.nio.charset.CharacterCodingException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -83,7 +84,14 @@ public class Inserter extends OperationT
}
catch (Exception e)
{
- System.err.printf("Error while inserting key %s - %s%n",
ByteBufferUtil.string(key), getExceptionMessage(e));
+ try
+ {
+ System.err.printf("Error while inserting key %s - %s%n",
ByteBufferUtil.string(key), getExceptionMessage(e));
+ }
+ catch (CharacterCodingException e1)
+ {
+ throw new AssertionError(e1); // keys are valid strings
+ }
if (!session.ignoreErrors())
return;
Modified:
cassandra/trunk/contrib/stress/src/org/apache/cassandra/contrib/stress/operations/Reader.java
URL:
http://svn.apache.org/viewvc/cassandra/trunk/contrib/stress/src/org/apache/cassandra/contrib/stress/operations/Reader.java?rev=1070511&r1=1070510&r2=1070511&view=diff
==============================================================================
---
cassandra/trunk/contrib/stress/src/org/apache/cassandra/contrib/stress/operations/Reader.java
(original)
+++
cassandra/trunk/contrib/stress/src/org/apache/cassandra/contrib/stress/operations/Reader.java
Mon Feb 14 14:55:07 2011
@@ -22,7 +22,9 @@ import org.apache.cassandra.db.ColumnFam
import org.apache.cassandra.thrift.*;
import org.apache.cassandra.utils.ByteBufferUtil;
+import java.lang.AssertionError;
import java.nio.ByteBuffer;
+import java.nio.charset.CharacterCodingException;
import java.util.List;
public class Reader extends OperationThread
@@ -83,7 +85,14 @@ public class Reader extends OperationThr
}
catch (Exception e)
{
- System.err.printf("Error while reading Super Column %s key
%s - %s%n", superColumn, ByteBufferUtil.string(key), getExceptionMessage(e));
+ try
+ {
+ System.err.printf("Error while reading Super Column %s
key %s - %s%n", superColumn, ByteBufferUtil.string(key),
getExceptionMessage(e));
+ }
+ catch (CharacterCodingException e1)
+ {
+ throw new AssertionError(e1); // keys are valid string
+ }
if (!session.ignoreErrors())
break;