You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by xe...@apache.org on 2011/10/31 17:43:33 UTC
svn commit: r1195562 - in /cassandra/trunk: ./ conf/ contrib/
interface/thrift/gen-java/org/apache/cassandra/thrift/
src/java/org/apache/cassandra/cli/ src/java/org/apache/cassandra/gms/
src/java/org/apache/cassandra/io/compress/ src/java/org/apache/ca...
Author: xedin
Date: Mon Oct 31 16:43:33 2011
New Revision: 1195562
URL: http://svn.apache.org/viewvc?rev=1195562&view=rev
Log:
merge from 1.0
Modified:
cassandra/trunk/ (props changed)
cassandra/trunk/CHANGES.txt
cassandra/trunk/build.xml
cassandra/trunk/conf/cassandra-env.sh
cassandra/trunk/contrib/ (props changed)
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java (props changed)
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java (props changed)
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java (props changed)
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java (props changed)
cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java (props changed)
cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java
cassandra/trunk/src/java/org/apache/cassandra/gms/Gossiper.java
cassandra/trunk/src/java/org/apache/cassandra/io/compress/CompressedRandomAccessReader.java
cassandra/trunk/src/java/org/apache/cassandra/io/compress/CompressionMetadata.java
cassandra/trunk/src/java/org/apache/cassandra/io/util/CompressedSegmentedFile.java
cassandra/trunk/src/java/org/apache/cassandra/locator/TokenMetadata.java
cassandra/trunk/test/unit/org/apache/cassandra/cli/CliTest.java
Propchange: cassandra/trunk/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Oct 31 16:43:33 2011
@@ -1,10 +1,10 @@
/cassandra/branches/cassandra-0.6:922689-1052356,1052358-1053452,1053454,1053456-1131291
/cassandra/branches/cassandra-0.7:1026516-1183000
/cassandra/branches/cassandra-0.7.0:1053690-1055654
-/cassandra/branches/cassandra-0.8:1090934-1125013,1125019-1186803,1187333,1187339,1187477,1188353,1188740
+/cassandra/branches/cassandra-0.8:1090934-1125013,1125019-1188353,1188740
/cassandra/branches/cassandra-0.8.0:1125021-1130369
/cassandra/branches/cassandra-0.8.1:1101014-1125018
-/cassandra/branches/cassandra-1.0:1167085-1190461
+/cassandra/branches/cassandra-1.0:1167085-1195557
/cassandra/branches/cassandra-1.0.0:1167104-1167229,1167232-1181093,1181741,1181816,1181820,1182951,1183243
/cassandra/tags/cassandra-0.7.0-rc3:1051699-1053689
/cassandra/tags/cassandra-0.8.0-rc1:1102511-1125020
Modified: cassandra/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/cassandra/trunk/CHANGES.txt?rev=1195562&r1=1195561&r2=1195562&view=diff
==============================================================================
--- cassandra/trunk/CHANGES.txt (original)
+++ cassandra/trunk/CHANGES.txt Mon Oct 31 16:43:33 2011
@@ -6,6 +6,9 @@
1.0.2
* "defragment" rows for name-based queries under STCS (CASSANDRA-2503)
+ * Add timing information to cassandra-cli GET/SET/LIST queries (CASSANDRA-3326)
+ * Cache for CompressionMetadata objects (CASSANDRA-3427)
+ * synchronize BiMap of bootstrapping tokens (CASSANDRA-3417)
1.0.1
* acquire references during index build to prevent delete problems
@@ -83,7 +86,6 @@ Merged from 0.8:
* Fix race in AntiEntropyService (CASSANDRA-3400)
* allow encryption only between datacenters (CASSANDRA-2802)
-
1.0.0-final
* close scrubbed sstable fd before deleting it (CASSANDRA-3318)
* fix bug preventing obsolete commitlog segments from being removed
Modified: cassandra/trunk/build.xml
URL: http://svn.apache.org/viewvc/cassandra/trunk/build.xml?rev=1195562&r1=1195561&r2=1195562&view=diff
==============================================================================
--- cassandra/trunk/build.xml (original)
+++ cassandra/trunk/build.xml Mon Oct 31 16:43:33 2011
@@ -1,518 +1,518 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!--
- ~ Licensed to the Apache Software Foundation (ASF) under one
- ~ or more contributor license agreements. See the NOTICE file
- ~ distributed with this work for additional information
- ~ regarding copyright ownership. The ASF licenses this file
- ~ to you under the Apache License, Version 2.0 (the
- ~ "License"); you may not use this file except in compliance
- ~ with the License. You may obtain a copy of the License at
- ~
- ~ http://www.apache.org/licenses/LICENSE-2.0
- ~
- ~ Unless required by applicable law or agreed to in writing,
- ~ software distributed under the License is distributed on an
- ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- ~ KIND, either express or implied. See the License for the
- ~ specific language governing permissions and limitations
- ~ under the License.
- -->
+~ Licensed to the Apache Software Foundation (ASF) under one
+~ or more contributor license agreements. See the NOTICE file
+~ distributed with this work for additional information
+~ regarding copyright ownership. The ASF licenses this file
+~ to you under the Apache License, Version 2.0 (the
+~ "License"); you may not use this file except in compliance
+~ with the License. You may obtain a copy of the License at
+~
+~ http://www.apache.org/licenses/LICENSE-2.0
+~
+~ Unless required by applicable law or agreed to in writing,
+~ software distributed under the License is distributed on an
+~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+~ KIND, either express or implied. See the License for the
+~ specific language governing permissions and limitations
+~ under the License.
+-->
<project basedir="." default="build" name="apache-cassandra"
- xmlns:artifact="antlib:org.apache.maven.artifact.ant">
- <property environment="env"/>
- <property file="build.properties" />
- <property file="build.properties.default" />
- <property name="debuglevel" value="source,lines,vars"/>
-
- <!-- default version and SCM information (we need the default SCM info as people may checkout with git-svn) -->
- <property name="base.version" value="1.0.1"/>
- <property name="scm.default.path" value="cassandra/branches/cassandra-1.0.0"/>
- <property name="scm.default.connection" value="scm:svn:http://svn.apache.org/repos/asf/${scm.default.path}"/>
- <property name="scm.default.developerConnection" value="scm:svn:https://svn.apache.org/repos/asf/${scm.default.path}"/>
- <property name="scm.default.url" value="http://svn.apache.org/viewvc/${scm.default.path}"/>
-
- <!-- directory details -->
- <property name="basedir" value="."/>
- <property name="build.src" value="${basedir}/src"/>
- <property name="build.src.java" value="${basedir}/src/java"/>
- <property name="build.src.resources" value="${basedir}/src/resources"/>
- <property name="avro.src" value="${basedir}/src/avro"/>
- <property name="build.src.gen-java" value="${basedir}/src/gen-java"/>
- <property name="build.lib" value="${basedir}/lib"/>
- <property name="build.dir" value="${basedir}/build"/>
- <property name="build.dir.lib" value="${basedir}/build/lib"/>
- <property name="build.test.dir" value="${build.dir}/test"/>
- <property name="build.classes" value="${build.dir}/classes"/>
- <property name="build.classes.main" value="${build.classes}/main" />
- <property name="build.classes.thrift" value="${build.classes}/thrift" />
- <property name="javadoc.dir" value="${build.dir}/javadoc"/>
- <property name="javadoc.jars.dir" value="${build.dir}/javadocs"/>
- <property name="interface.dir" value="${basedir}/interface"/>
- <property name="interface.thrift.dir" value="${interface.dir}/thrift"/>
- <property name="interface.thrift.gen-java" value="${interface.thrift.dir}/gen-java"/>
- <property name="test.dir" value="${basedir}/test"/>
- <property name="test.resources" value="${test.dir}/resources"/>
- <property name="test.lib" value="${build.dir}/test/lib"/>
- <property name="test.classes" value="${build.dir}/test/classes"/>
- <property name="test.conf" value="${test.dir}/conf"/>
- <property name="test.data" value="${test.dir}/data"/>
- <property name="test.name" value="*Test"/>
- <property name="test.unit.src" value="${test.dir}/unit"/>
- <property name="test.long.src" value="${test.dir}/long"/>
- <property name="test.distributed.src" value="${test.dir}/distributed"/>
- <property name="dist.dir" value="${build.dir}/dist"/>
- <condition property="version" value="${base.version}">
- <isset property="release"/>
- </condition>
- <property name="version" value="${base.version}-SNAPSHOT"/>
- <property name="version.properties.dir"
- value="${build.classes.main}/org/apache/cassandra/config/" />
- <property name="final.name" value="${ant.project.name}-${version}"/>
-
- <!-- details of what version of Maven ANT Tasks to fetch -->
- <property name="maven-ant-tasks.version" value="2.1.3" />
- <property name="maven-ant-tasks.local" value="${user.home}/.m2/repository/org/apache/maven/maven-ant-tasks"/>
- <property name="maven-ant-tasks.url"
- value="http://repo2.maven.org/maven2/org/apache/maven/maven-ant-tasks" />
- <!-- details of how and which Maven repository we publish to -->
- <property name="maven.version" value="3.0.3" />
- <condition property="maven-repository-url" value="https://repository.apache.org/service/local/staging/deploy/maven2">
- <isset property="release"/>
- </condition>
- <condition property="maven-repository-id" value="apache.releases.https">
- <isset property="release"/>
- </condition>
- <property name="maven-repository-url" value="https://repository.apache.org/content/repositories/snapshots"/>
- <property name="maven-repository-id" value="apache.snapshots.https"/>
-
- <property name="test.timeout" value="60000" />
- <property name="test.long.timeout" value="300000" />
-
- <!-- http://cobertura.sourceforge.net/ -->
- <property name="cobertura.version" value="1.9.4.1"/>
- <property name="cobertura.build.dir" value="${build.dir}/cobertura"/>
- <property name="cobertura.report.dir" value="${cobertura.build.dir}/report"/>
- <property name="cobertura.classes.dir" value="${cobertura.build.dir}/classes"/>
- <property name="cobertura.datafile" value="${cobertura.build.dir}/cobertura.ser"/>
-
- <condition property="maven-ant-tasks.jar.exists">
- <available file="${build.dir}/maven-ant-tasks-${maven-ant-tasks.version}.jar" />
- </condition>
-
- <condition property="maven-ant-tasks.jar.local">
- <available file="${maven-ant-tasks.local}/${maven-ant-tasks.version}/maven-ant-tasks-${maven-ant-tasks.version}.jar" />
- </condition>
-
- <condition property="is.source.artifact">
- <available file="${build.src.java}" type="dir" />
- </condition>
-
- <condition property="scm.provider.git-svn">
- <available file="${basedir}/.git" type="dir"/>
- </condition>
+ xmlns:artifact="antlib:org.apache.maven.artifact.ant">
+ <property environment="env"/>
+ <property file="build.properties" />
+ <property file="build.properties.default" />
+ <property name="debuglevel" value="source,lines,vars"/>
+
+ <!-- default version and SCM information (we need the default SCM info as people may checkout with git-svn) -->
+ <property name="base.version" value="1.0.1"/>
+ <property name="scm.default.path" value="cassandra/branches/cassandra-1.0.0"/>
+ <property name="scm.default.connection" value="scm:svn:http://svn.apache.org/repos/asf/${scm.default.path}"/>
+ <property name="scm.default.developerConnection" value="scm:svn:https://svn.apache.org/repos/asf/${scm.default.path}"/>
+ <property name="scm.default.url" value="http://svn.apache.org/viewvc/${scm.default.path}"/>
+
+ <!-- directory details -->
+ <property name="basedir" value="."/>
+ <property name="build.src" value="${basedir}/src"/>
+ <property name="build.src.java" value="${basedir}/src/java"/>
+ <property name="build.src.resources" value="${basedir}/src/resources"/>
+ <property name="avro.src" value="${basedir}/src/avro"/>
+ <property name="build.src.gen-java" value="${basedir}/src/gen-java"/>
+ <property name="build.lib" value="${basedir}/lib"/>
+ <property name="build.dir" value="${basedir}/build"/>
+ <property name="build.dir.lib" value="${basedir}/build/lib"/>
+ <property name="build.test.dir" value="${build.dir}/test"/>
+ <property name="build.classes" value="${build.dir}/classes"/>
+ <property name="build.classes.main" value="${build.classes}/main" />
+ <property name="build.classes.thrift" value="${build.classes}/thrift" />
+ <property name="javadoc.dir" value="${build.dir}/javadoc"/>
+ <property name="javadoc.jars.dir" value="${build.dir}/javadocs"/>
+ <property name="interface.dir" value="${basedir}/interface"/>
+ <property name="interface.thrift.dir" value="${interface.dir}/thrift"/>
+ <property name="interface.thrift.gen-java" value="${interface.thrift.dir}/gen-java"/>
+ <property name="test.dir" value="${basedir}/test"/>
+ <property name="test.resources" value="${test.dir}/resources"/>
+ <property name="test.lib" value="${build.dir}/test/lib"/>
+ <property name="test.classes" value="${build.dir}/test/classes"/>
+ <property name="test.conf" value="${test.dir}/conf"/>
+ <property name="test.data" value="${test.dir}/data"/>
+ <property name="test.name" value="*Test"/>
+ <property name="test.unit.src" value="${test.dir}/unit"/>
+ <property name="test.long.src" value="${test.dir}/long"/>
+ <property name="test.distributed.src" value="${test.dir}/distributed"/>
+ <property name="dist.dir" value="${build.dir}/dist"/>
+ <condition property="version" value="${base.version}">
+ <isset property="release"/>
+ </condition>
+ <property name="version" value="${base.version}-SNAPSHOT"/>
+ <property name="version.properties.dir"
+ value="${build.classes.main}/org/apache/cassandra/config/" />
+ <property name="final.name" value="${ant.project.name}-${version}"/>
+
+ <!-- details of what version of Maven ANT Tasks to fetch -->
+ <property name="maven-ant-tasks.version" value="2.1.3" />
+ <property name="maven-ant-tasks.local" value="${user.home}/.m2/repository/org/apache/maven/maven-ant-tasks"/>
+ <property name="maven-ant-tasks.url"
+ value="http://repo2.maven.org/maven2/org/apache/maven/maven-ant-tasks" />
+ <!-- details of how and which Maven repository we publish to -->
+ <property name="maven.version" value="3.0.3" />
+ <condition property="maven-repository-url" value="https://repository.apache.org/service/local/staging/deploy/maven2">
+ <isset property="release"/>
+ </condition>
+ <condition property="maven-repository-id" value="apache.releases.https">
+ <isset property="release"/>
+ </condition>
+ <property name="maven-repository-url" value="https://repository.apache.org/content/repositories/snapshots"/>
+ <property name="maven-repository-id" value="apache.snapshots.https"/>
+
+ <property name="test.timeout" value="60000" />
+ <property name="test.long.timeout" value="300000" />
+
+ <!-- http://cobertura.sourceforge.net/ -->
+ <property name="cobertura.version" value="1.9.4.1"/>
+ <property name="cobertura.build.dir" value="${build.dir}/cobertura"/>
+ <property name="cobertura.report.dir" value="${cobertura.build.dir}/report"/>
+ <property name="cobertura.classes.dir" value="${cobertura.build.dir}/classes"/>
+ <property name="cobertura.datafile" value="${cobertura.build.dir}/cobertura.ser"/>
+
+ <condition property="maven-ant-tasks.jar.exists">
+ <available file="${build.dir}/maven-ant-tasks-${maven-ant-tasks.version}.jar" />
+ </condition>
+
+ <condition property="maven-ant-tasks.jar.local">
+ <available file="${maven-ant-tasks.local}/${maven-ant-tasks.version}/maven-ant-tasks-${maven-ant-tasks.version}.jar" />
+ </condition>
+
+ <condition property="is.source.artifact">
+ <available file="${build.src.java}" type="dir" />
+ </condition>
+
+ <condition property="scm.provider.git-svn">
+ <available file="${basedir}/.git" type="dir"/>
+ </condition>
+
+ <condition property="scm.provider.svn">
+ <available file="${basedir}/.svn" type="dir"/>
+ </condition>
+
+ <tstamp>
+ <format property="YEAR" pattern="yyyy"/>
+ </tstamp>
- <condition property="scm.provider.svn">
- <available file="${basedir}/.svn" type="dir"/>
- </condition>
+ <!--
+ Add all the dependencies.
+ -->
+ <path id="maven-ant-tasks.classpath" path="${build.dir}/maven-ant-tasks-${maven-ant-tasks.version}.jar" />
+ <path id="cassandra.classpath">
+ <pathelement location="${cobertura.classes.dir}"/>
+ <pathelement location="${build.classes.main}" />
+ <pathelement location="${build.classes.thrift}" />
+ <fileset dir="${build.lib}">
+ <include name="**/*.jar" />
+ </fileset>
+ <fileset dir="${build.dir.lib}">
+ <include name="**/*.jar" />
+ </fileset>
+ </path>
- <tstamp>
- <format property="YEAR" pattern="yyyy"/>
- </tstamp>
+<macrodef name="create-javadoc">
+ <attribute name="destdir"/>
+ <element name="filesets"/>
+ <sequential>
+ <javadoc destdir="@{destdir}" author="true" version="true" use="true"
+ windowtitle="${ant.project.name} API" classpathref="cassandra.classpath"
+ bottom="Copyright &copy; ${YEAR} The Apache Software Foundation"
+ useexternalfile="yes"
+ maxmemory="256m">
+ <filesets/>
+ </javadoc>
+ </sequential>
+</macrodef>
- <!--
- Add all the dependencies.
- -->
- <path id="maven-ant-tasks.classpath" path="${build.dir}/maven-ant-tasks-${maven-ant-tasks.version}.jar" />
- <path id="cassandra.classpath">
- <pathelement location="${cobertura.classes.dir}"/>
- <pathelement location="${build.classes.main}" />
- <pathelement location="${build.classes.thrift}" />
- <fileset dir="${build.lib}">
- <include name="**/*.jar" />
- </fileset>
- <fileset dir="${build.dir.lib}">
- <include name="**/*.jar" />
- </fileset>
- </path>
+ <!--
+ Setup the output directories.
+ -->
+ <target name="init">
+ <fail unless="is.source.artifact"
+ message="Not a source artifact, stopping here." />
+ <mkdir dir="${build.classes.main}"/>
+ <mkdir dir="${build.classes.thrift}"/>
+ <mkdir dir="${test.lib}"/>
+ <mkdir dir="${test.classes}"/>
+ <mkdir dir="${build.src.gen-java}"/>
+ </target>
- <macrodef name="create-javadoc">
- <attribute name="destdir"/>
- <element name="filesets"/>
- <sequential>
- <javadoc destdir="@{destdir}" author="true" version="true" use="true"
- windowtitle="${ant.project.name} API" classpathref="cassandra.classpath"
- bottom="Copyright &copy; ${YEAR} The Apache Software Foundation"
- useexternalfile="yes"
- maxmemory="256m">
- <filesets/>
- </javadoc>
- </sequential>
- </macrodef>
+ <target name="clean" description="Remove all locally created artifacts">
+ <delete dir="${build.test.dir}" />
+ <delete dir="${build.classes}" />
+ <delete dir="${cobertura.classes.dir}" />
+ <delete dir="${build.src.gen-java}" />
+ <delete file="${build.dir}/internode.avpr" />
+ </target>
+ <target depends="clean" name="cleanall"/>
- <!--
- Setup the output directories.
- -->
- <target name="init">
- <fail unless="is.source.artifact"
- message="Not a source artifact, stopping here." />
- <mkdir dir="${build.classes.main}"/>
- <mkdir dir="${build.classes.thrift}"/>
- <mkdir dir="${test.lib}"/>
- <mkdir dir="${test.classes}"/>
- <mkdir dir="${build.src.gen-java}"/>
- </target>
+ <target name="realclean" depends="clean">
+ <delete dir="${build.dir}" />
+ </target>
- <target name="clean" description="Remove all locally created artifacts">
- <delete dir="${build.test.dir}" />
- <delete dir="${build.classes}" />
- <delete dir="${cobertura.classes.dir}" />
- <delete dir="${build.src.gen-java}" />
- <delete file="${build.dir}/internode.avpr" />
- </target>
- <target depends="clean" name="cleanall"/>
+ <!--
+ This generates the CLI grammar files from Cli.g
+ -->
+ <target name="check-gen-cli-grammar">
+ <uptodate property="cliUpToDate"
+ srcfile="${build.src.java}/org/apache/cassandra/cli/Cli.g"
+ targetfile="${build.src.gen-java}/org/apache/cassandra/cli/Cli.tokens"/>
+ </target>
- <target name="realclean" depends="clean">
- <delete dir="${build.dir}" />
- </target>
+ <target name="gen-cli-grammar" depends="check-gen-cli-grammar" unless="cliUpToDate">
+ <echo>Building Grammar ${build.src.java}/org/apache/cassandra/cli/Cli.g ....</echo>
+ <java classname="org.antlr.Tool"
+ classpath="${build.lib}/antlr-3.2.jar"
+ fork="true"
+ failonerror="true">
+ <arg value="${build.src.java}/org/apache/cassandra/cli/Cli.g" />
+ <arg value="-fo" />
+ <arg value="${build.src.gen-java}/org/apache/cassandra/cli/" />
+ </java>
+ </target>
- <!--
- This generates the CLI grammar files from Cli.g
- -->
- <target name="check-gen-cli-grammar">
- <uptodate property="cliUpToDate"
- srcfile="${build.src.java}/org/apache/cassandra/cli/Cli.g"
- targetfile="${build.src.gen-java}/org/apache/cassandra/cli/Cli.tokens"/>
- </target>
+ <!--
+ This generates the CQL grammar files from Cql.g
+ -->
+ <target name="check-gen-cql-grammar">
+ <uptodate property="cqlcurrent"
+ srcfile="${build.src.java}/org/apache/cassandra/cql/Cql.g"
+ targetfile="${build.src.gen-java}/org/apache/cassandra/cql/Cql.tokens"/>
+ </target>
- <target name="gen-cli-grammar" depends="check-gen-cli-grammar" unless="cliUpToDate">
- <echo>Building Grammar ${build.src.java}/org/apache/cassandra/cli/Cli.g ....</echo>
- <java classname="org.antlr.Tool"
- classpath="${build.lib}/antlr-3.2.jar"
- fork="true"
- failonerror="true">
- <arg value="${build.src.java}/org/apache/cassandra/cli/Cli.g" />
- <arg value="-fo" />
- <arg value="${build.src.gen-java}/org/apache/cassandra/cli/" />
- </java>
- </target>
+ <target name="gen-cql-grammar" depends="check-gen-cql-grammar" unless="cqlcurrent">
+ <echo>Building Grammar ${build.src.java}/org/apache/cassandra/cql/Cql.g ...</echo>
+ <java classname="org.antlr.Tool"
+ classpath="${build.lib}/antlr-3.2.jar"
+ fork="true"
+ failonerror="true">
+ <arg value="${build.src.java}/org/apache/cassandra/cql/Cql.g" />
+ <arg value="-fo" />
+ <arg value="${build.src.gen-java}/org/apache/cassandra/cql/" />
+ </java>
+ </target>
- <!--
- This generates the CQL grammar files from Cql.g
- -->
- <target name="check-gen-cql-grammar">
- <uptodate property="cqlcurrent"
- srcfile="${build.src.java}/org/apache/cassandra/cql/Cql.g"
- targetfile="${build.src.gen-java}/org/apache/cassandra/cql/Cql.tokens"/>
- </target>
-
- <target name="gen-cql-grammar" depends="check-gen-cql-grammar" unless="cqlcurrent">
- <echo>Building Grammar ${build.src.java}/org/apache/cassandra/cql/Cql.g ...</echo>
- <java classname="org.antlr.Tool"
- classpath="${build.lib}/antlr-3.2.jar"
- fork="true"
- failonerror="true">
- <arg value="${build.src.java}/org/apache/cassandra/cql/Cql.g" />
- <arg value="-fo" />
- <arg value="${build.src.gen-java}/org/apache/cassandra/cql/" />
- </java>
- </target>
-
- <target name="generate-cql-html" depends="maven-ant-tasks-init" description="Generate HTML from textile source">
- <artifact:dependencies pathId="wikitext.classpath">
- <dependency groupId="com.datastax.wikitext" artifactId="wikitext-core-ant" version="1.3"/>
- <dependency groupId="org.fusesource.wikitext" artifactId="textile-core" version="1.3"/>
- </artifact:dependencies>
- <taskdef classpathref="wikitext.classpath" resource="wikitexttasks.properties" />
- <wikitext-to-html markupLanguage="Textile">
- <fileset dir="${basedir}">
- <include name="doc/cql/*.textile"/>
- </fileset>
- </wikitext-to-html>
- </target>
-
- <target name="scm-svn-info" description="Determines the current Subversion URL with peg revision"
- if="scm.provider.svn">
- <exec executable="svn" dir="${basedir}" output="${build.dir}/svn-info.xml">
- <arg line="info --xml"/>
- </exec>
- <xmlproperty file="${build.dir}/svn-info.xml" collapseAttributes="true" prefix="svn" keepRoot="false"/>
- <echo file="${build.dir}/scm.properties">
+<target name="generate-cql-html" depends="maven-ant-tasks-init" description="Generate HTML from textile source">
+ <artifact:dependencies pathId="wikitext.classpath">
+ <dependency groupId="com.datastax.wikitext" artifactId="wikitext-core-ant" version="1.3"/>
+ <dependency groupId="org.fusesource.wikitext" artifactId="textile-core" version="1.3"/>
+ </artifact:dependencies>
+ <taskdef classpathref="wikitext.classpath" resource="wikitexttasks.properties" />
+ <wikitext-to-html markupLanguage="Textile">
+ <fileset dir="${basedir}">
+ <include name="doc/cql/*.textile"/>
+ </fileset>
+ </wikitext-to-html>
+</target>
+
+ <target name="scm-svn-info" description="Determines the current Subversion URL with peg revision"
+ if="scm.provider.svn">
+ <exec executable="svn" dir="${basedir}" output="${build.dir}/svn-info.xml">
+ <arg line="info --xml"/>
+ </exec>
+ <xmlproperty file="${build.dir}/svn-info.xml" collapseAttributes="true" prefix="svn" keepRoot="false"/>
+ <echo file="${build.dir}/scm.properties">
connection=scm:svn:${svn.entry.url}@${svn.entry.commit.revision}
developerConnection=scm:svn:${svn.entry.url}@${svn.entry.commit.revision}
url=${svn.entry.url}?pathrev=${svn.entry.commit.revision}
- </echo>
- <replace file="${build.dir}/scm.properties">
- <replacefilter token="connection=scm:svn:https:" value="connection=scm:svn:http:"/>
- <replacefilter token="Connection=scm:svn:http:" value="Connection=scm:svn:https:"/>
- <replacefilter token="url=${svn.entry.repository.root}" value="url=http://svn.apache.org/viewvc"/>
- </replace>
- <property file="${build.dir}/scm.properties" prefix="scm"/>
- </target>
-
- <target name="scm-info" description="Determines the SCM details"
- unless="scm.connection" depends="scm-svn-info">
- <property name="scm.connection" value="${scm.default.connection}"/>
- <property name="scm.developerConnection" value="${scm.default.developerConnection}"/>
- <property name="scm.url" value="${scm.default.url}"/>
- </target>
- <!--
- Fetch Maven Ant Tasks and Cassandra's dependencies
- These targets are intentionally free of dependencies so that they
- can be run stand-alone from a binary release artifact.
- -->
- <target name="maven-ant-tasks-localrepo" unless="maven-ant-tasks.jar.exists" if="maven-ant-tasks.jar.local"
- description="Fetch Maven ANT Tasks from Maven Local Repository">
- <mkdir dir="${build.dir}" />
- <copy file="${maven-ant-tasks.local}/${maven-ant-tasks.version}/maven-ant-tasks-${maven-ant-tasks.version}.jar"
- tofile="${build.dir}/maven-ant-tasks-${maven-ant-tasks.version}.jar"/>
- <property name="maven-ant-tasks.jar.exists" value="true"/>
- </target>
-
- <target name="maven-ant-tasks-download" depends="maven-ant-tasks-localrepo" unless="maven-ant-tasks.jar.exists"
- description="Fetch Maven ANT Tasks from Maven Central Repositroy">
- <echo>Downloading Maven ANT Tasks...</echo>
- <mkdir dir="${build.dir}" />
- <get src="${maven-ant-tasks.url}/${maven-ant-tasks.version}/maven-ant-tasks-${maven-ant-tasks.version}.jar"
- dest="${build.dir}/maven-ant-tasks-${maven-ant-tasks.version}.jar" usetimestamp="true" />
- </target>
-
- <target name="maven-ant-tasks-init" depends="maven-ant-tasks-download" unless="maven-ant-tasks.initialized"
- description="Initialize Maven ANT Tasks">
- <mkdir dir="${build.dir.lib}"/>
- <typedef uri="antlib:org.apache.maven.artifact.ant" classpathref="maven-ant-tasks.classpath" />
-
- <!-- define the remote repositories we use -->
- <artifact:remoteRepository id="central" url="${artifact.remoteRepository.central}"/>
- <artifact:remoteRepository id="java.net2" url="${artifact.remoteRepository.java.net2}"/>
- <artifact:remoteRepository id="apache" url="${artifact.remoteRepository.apache}"/>
- <!-- for distributed tests -->
- <artifact:remoteRepository id="jclouds" url="${artifact.remoteRepository.jclouds}"/>
- <artifact:remoteRepository id="oauth" url="${artifact.remoteRepository.oauth}"/>
-
- <macrodef name="install">
- <attribute name="pomFile"/>
- <attribute name="file"/>
- <attribute name="classifier" default=""/>
- <attribute name="packaging" default="jar"/>
- <sequential>
- <artifact:mvn mavenVersion="${maven.version}" fork="true" failonerror="true">
- <arg value="org.apache.maven.plugins:maven-install-plugin:2.3.1:install-file" />
- <arg value="-DpomFile=@{pomFile}" />
- <arg value="-Dfile=@{file}" />
- <arg value="-Dclassifier=@{classifier}" />
- <arg value="-Dpackaging=@{packaging}" />
- </artifact:mvn>
- </sequential>
- </macrodef>
-
- <macrodef name="deploy">
- <attribute name="pomFile"/>
- <attribute name="file"/>
- <attribute name="classifier" default=""/>
- <attribute name="packaging" default="jar"/>
- <sequential>
- <artifact:mvn mavenVersion="${maven.version}" fork="true" failonerror="true">
- <jvmarg value="-Xmx512m"/>
- <arg value="org.apache.maven.plugins:maven-gpg-plugin:1.4:sign-and-deploy-file" />
- <arg value="-DretryFailedDeploymentCount=5" />
- <arg value="-Durl=${maven-repository-url}" />
- <arg value="-DrepositoryId=${maven-repository-id}" />
- <arg value="-DpomFile=@{pomFile}" />
- <arg value="-Dfile=@{file}" />
- <arg value="-Dclassifier=@{classifier}" />
- <arg value="-Dpackaging=@{packaging}" />
- <arg value="-Papache-release" />
- </artifact:mvn>
- </sequential>
- </macrodef>
-
- <property name="maven-ant-tasks.initialized" value="true"/>
- </target>
-
- <!-- this task defines the dependencies that will be fetched by Maven ANT Tasks
- the dependencies are re-used for publishing artifacts to Maven Central
- in order to keep everything consistent -->
- <target name="maven-declare-dependencies" depends="maven-ant-tasks-init, scm-info"
- description="Define dependencies and dependency versions">
- <!-- The parent pom defines the versions of all dependencies -->
- <artifact:pom id="parent-pom"
- groupId="org.apache.cassandra"
- artifactId="cassandra-parent"
- packaging="pom"
- version="${version}"
- url="http://cassandra.apache.org"
- name="Apache Cassandra"
- inceptionYear="2009"
- description="The Apache Cassandra Project develops a highly scalable second-generation distributed database, bringing together Dynamo's fully distributed design and Bigtable's ColumnFamily-based data model.">
- <license name="The Apache Software License, Version 2.0" url="http://www.apache.org/licenses/LICENSE-2.0.txt"/>
- <scm connection="${scm.connection}" developerConnection="${scm.developerConnection}" url="${scm.url}"/>
- <dependencyManagement>
- <dependency groupId="org.xerial.snappy" artifactId="snappy-java" version="1.0.3"/>
- <dependency groupId="com.ning" artifactId="compress-lzf" version="0.8.4"/>
- <dependency groupId="com.google.guava" artifactId="guava" version="r08"/>
- <dependency groupId="commons-cli" artifactId="commons-cli" version="1.1"/>
- <dependency groupId="commons-codec" artifactId="commons-codec" version="1.2"/>
- <dependency groupId="commons-lang" artifactId="commons-lang" version="2.4"/>
- <dependency groupId="com.googlecode.concurrentlinkedhashmap" artifactId="concurrentlinkedhashmap-lru" version="1.2"/>
- <dependency groupId="org.antlr" artifactId="antlr" version="3.2"/>
- <dependency groupId="org.slf4j" artifactId="slf4j-api" version="1.6.1"/>
- <dependency groupId="org.slf4j" artifactId="slf4j-log4j12" version="1.6.1"/>
- <dependency groupId="org.codehaus.jackson" artifactId="jackson-core-asl" version="1.4.0"/>
- <dependency groupId="org.codehaus.jackson" artifactId="jackson-mapper-asl" version="1.4.0"/>
- <dependency groupId="jline" artifactId="jline" version="0.9.94">
- <exclusion groupId="junit" artifactId="junit"/>
- </dependency>
- <dependency groupId="com.googlecode.json-simple" artifactId="json-simple" version="1.1"/>
- <dependency groupId="com.github.stephenc.high-scale-lib" artifactId="high-scale-lib" version="1.1.2"/>
- <dependency groupId="com.github.stephenc" artifactId="jamm" version="0.2.5"/>
- <dependency groupId="org.yaml" artifactId="snakeyaml" version="1.6"/>
- <dependency groupId="org.apache.cassandra.deps" artifactId="avro" version="1.4.0-cassandra-1">
- <exclusion groupId="org.jboss.netty" artifactId="netty"/>
- <exclusion groupId="com.thoughtworks.paranamer" artifactId="paranamer"/>
- <exclusion groupId="com.thoughtworks.paranamer" artifactId="paranamer-ant"/>
- <exclusion groupId="org.apache.velocity" artifactId="velocity"/>
- </dependency>
-
- <dependency groupId="org.apache.thrift" artifactId="libthrift" version="0.6.1">
- <exclusion groupId="org.slf4j" artifactId="slf4j-log4j12"/>
- </dependency>
-
- <dependency groupId="com.thoughtworks.paranamer" artifactId="paranamer-ant" version="2.1"/>
- <dependency groupId="junit" artifactId="junit" version="4.6" />
- <dependency groupId="commons-logging" artifactId="commons-logging" version="1.1.1"/>
- <dependency groupId="org.apache.rat" artifactId="apache-rat" version="0.6" />
- <dependency groupId="org.apache.hadoop" artifactId="hadoop-core" version="0.20.203.0"/>
- <dependency groupId="net.sf.jopt-simple" artifactId="jopt-simple" version="3.2"/>
- <dependency groupId="net.java.dev.jna" artifactId="jna" version="3.2.7"/>
-
- <dependency groupId="net.sourceforge.cobertura" artifactId="cobertura" version="${cobertura.version}"/>
-
- <dependency groupId="org.apache.whirr" artifactId="whirr-core" version="0.4.0-incubating"/>
- <dependency groupId="org.apache.whirr" artifactId="whirr-cli" version="0.4.0-incubating"/>
- <dependency groupId="org.jclouds.provider" artifactId="aws-s3" version="1.0-beta-9b" />
-
- <dependency groupId="log4j" artifactId="log4j" version="1.2.16" />
- <dependency groupId="org.apache.cassandra" artifactId="cassandra-all" version="${version}" />
- <dependency groupId="org.apache.cassandra" artifactId="cassandra-thrift" version="${version}" />
- </dependencyManagement>
- <developer id="alakshman" name="Avinash Lakshman"/>
- <developer id="antelder" name="Anthony Elder"/>
- <developer id="brandonwilliams" name="Brandon Williams"/>
- <developer id="eevans" name="Eric Evans"/>
- <developer id="gdusbabek" name="Gary Dusbabek"/>
- <developer id="goffinet" name="Chris Goffinet"/>
- <developer id="jaakko" name="Laine Jaakko Olavi"/>
- <developer id="jake" name="T Jake Luciani"/>
- <developer id="jbellis" name="Jonathan Ellis"/>
- <developer id="johan" name="Johan Oskarsson"/>
- <developer id="junrao" name="Jun Rao"/>
- <developer id="mriou" name="Matthieu Riou"/>
- <developer id="pmalik" name="Prashant Malik"/>
- <developer id="slebresne" name="Sylvain Lebresne"/>
- </artifact:pom>
-
- <!-- each dependency set then defines the subset of the dependencies for that dependency set -->
- <artifact:pom id="build-deps-pom"
- artifactId="cassandra-build-deps">
- <parent groupId="org.apache.cassandra"
- artifactId="cassandra-parent"
- version="${version}"/>
- <!-- FIXME: paranamer can be dropped after we're depending on avro
- (since it depends on them). -->
- <dependency groupId="com.thoughtworks.paranamer" artifactId="paranamer-ant"/>
- <dependency groupId="junit" artifactId="junit"/>
- <dependency groupId="commons-logging" artifactId="commons-logging"/>
- <dependency groupId="org.apache.rat" artifactId="apache-rat"/>
- <dependency groupId="org.apache.hadoop" artifactId="hadoop-core"/>
- <dependency groupId="net.sf.jopt-simple" artifactId="jopt-simple"/>
-
- <dependency groupId="net.java.dev.jna" artifactId="jna"/>
- </artifact:pom>
+ </echo>
+ <replace file="${build.dir}/scm.properties">
+ <replacefilter token="connection=scm:svn:https:" value="connection=scm:svn:http:"/>
+ <replacefilter token="Connection=scm:svn:http:" value="Connection=scm:svn:https:"/>
+ <replacefilter token="url=${svn.entry.repository.root}" value="url=http://svn.apache.org/viewvc"/>
+ </replace>
+ <property file="${build.dir}/scm.properties" prefix="scm"/>
+ </target>
- <artifact:pom id="coverage-deps-pom"
- artifactId="cassandra-coverage-deps">
- <parent groupId="org.apache.cassandra"
- artifactId="cassandra-parent"
- version="${version}"/>
- <dependency groupId="net.sourceforge.cobertura" artifactId="cobertura"/>
- </artifact:pom>
+ <target name="scm-info" description="Determines the SCM details"
+ unless="scm.connection" depends="scm-svn-info">
+ <property name="scm.connection" value="${scm.default.connection}"/>
+ <property name="scm.developerConnection" value="${scm.default.developerConnection}"/>
+ <property name="scm.url" value="${scm.default.url}"/>
+ </target>
+ <!--
+ Fetch Maven Ant Tasks and Cassandra's dependencies
+ These targets are intentionally free of dependencies so that they
+ can be run stand-alone from a binary release artifact.
+ -->
+ <target name="maven-ant-tasks-localrepo" unless="maven-ant-tasks.jar.exists" if="maven-ant-tasks.jar.local"
+ description="Fetch Maven ANT Tasks from Maven Local Repository">
+ <mkdir dir="${build.dir}" />
+ <copy file="${maven-ant-tasks.local}/${maven-ant-tasks.version}/maven-ant-tasks-${maven-ant-tasks.version}.jar"
+ tofile="${build.dir}/maven-ant-tasks-${maven-ant-tasks.version}.jar"/>
+ <property name="maven-ant-tasks.jar.exists" value="true"/>
+ </target>
- <artifact:pom id="test-deps-pom"
- artifactId="cassandra-test-deps">
- <parent groupId="org.apache.cassandra"
- artifactId="cassandra-parent"
- version="${version}"/>
- <dependency groupId="org.apache.whirr" artifactId="whirr-core"/>
- <dependency groupId="org.apache.whirr" artifactId="whirr-cli"/>
- <dependency groupId="org.jclouds.provider" artifactId="aws-s3"/>
- </artifact:pom>
+ <target name="maven-ant-tasks-download" depends="maven-ant-tasks-localrepo" unless="maven-ant-tasks.jar.exists"
+ description="Fetch Maven ANT Tasks from Maven Central Repositroy">
+ <echo>Downloading Maven ANT Tasks...</echo>
+ <mkdir dir="${build.dir}" />
+ <get src="${maven-ant-tasks.url}/${maven-ant-tasks.version}/maven-ant-tasks-${maven-ant-tasks.version}.jar"
+ dest="${build.dir}/maven-ant-tasks-${maven-ant-tasks.version}.jar" usetimestamp="true" />
+ </target>
- <!-- now the pom's for artifacts being deployed to Maven Central -->
+ <target name="maven-ant-tasks-init" depends="maven-ant-tasks-download" unless="maven-ant-tasks.initialized"
+ description="Initialize Maven ANT Tasks">
+ <mkdir dir="${build.dir.lib}"/>
+ <typedef uri="antlib:org.apache.maven.artifact.ant" classpathref="maven-ant-tasks.classpath" />
+
+ <!-- define the remote repositories we use -->
+ <artifact:remoteRepository id="central" url="${artifact.remoteRepository.central}"/>
+ <artifact:remoteRepository id="java.net2" url="${artifact.remoteRepository.java.net2}"/>
+ <artifact:remoteRepository id="apache" url="${artifact.remoteRepository.apache}"/>
+ <!-- for distributed tests -->
+ <artifact:remoteRepository id="jclouds" url="${artifact.remoteRepository.jclouds}"/>
+ <artifact:remoteRepository id="oauth" url="${artifact.remoteRepository.oauth}"/>
+
+ <macrodef name="install">
+ <attribute name="pomFile"/>
+ <attribute name="file"/>
+ <attribute name="classifier" default=""/>
+ <attribute name="packaging" default="jar"/>
+ <sequential>
+ <artifact:mvn mavenVersion="${maven.version}" fork="true" failonerror="true">
+ <arg value="org.apache.maven.plugins:maven-install-plugin:2.3.1:install-file" />
+ <arg value="-DpomFile=@{pomFile}" />
+ <arg value="-Dfile=@{file}" />
+ <arg value="-Dclassifier=@{classifier}" />
+ <arg value="-Dpackaging=@{packaging}" />
+ </artifact:mvn>
+ </sequential>
+ </macrodef>
- <artifact:pom id="all-pom"
- artifactId="cassandra-all"
- url="http://cassandra.apache.org"
- name="Apache Cassandra">
- <parent groupId="org.apache.cassandra"
- artifactId="cassandra-parent"
- version="${version}"/>
- <scm connection="${scm.connection}" developerConnection="${scm.developerConnection}" url="${scm.url}"/>
- <dependency groupId="org.xerial.snappy" artifactId="snappy-java"/>
- <dependency groupId="com.ning" artifactId="compress-lzf"/>
- <dependency groupId="com.google.guava" artifactId="guava"/>
- <dependency groupId="commons-cli" artifactId="commons-cli"/>
- <dependency groupId="commons-codec" artifactId="commons-codec"/>
- <dependency groupId="commons-lang" artifactId="commons-lang"/>
- <dependency groupId="com.googlecode.concurrentlinkedhashmap" artifactId="concurrentlinkedhashmap-lru"/>
- <dependency groupId="org.antlr" artifactId="antlr"/>
- <dependency groupId="org.slf4j" artifactId="slf4j-api"/>
- <dependency groupId="org.apache.cassandra.deps" artifactId="avro"/>
- <dependency groupId="org.codehaus.jackson" artifactId="jackson-core-asl"/>
- <dependency groupId="org.codehaus.jackson" artifactId="jackson-mapper-asl"/>
- <dependency groupId="jline" artifactId="jline"/>
- <dependency groupId="com.googlecode.json-simple" artifactId="json-simple"/>
- <dependency groupId="com.github.stephenc.high-scale-lib" artifactId="high-scale-lib"/>
- <dependency groupId="org.yaml" artifactId="snakeyaml"/>
-
- <dependency groupId="log4j" artifactId="log4j"/>
- <!-- cassandra has a hard dependency on log4j, so force slf4j's log4j provider at runtime -->
- <dependency groupId="org.slf4j" artifactId="slf4j-log4j12" scope="runtime"/>
+ <macrodef name="deploy">
+ <attribute name="pomFile"/>
+ <attribute name="file"/>
+ <attribute name="classifier" default=""/>
+ <attribute name="packaging" default="jar"/>
+ <sequential>
+ <artifact:mvn mavenVersion="${maven.version}" fork="true" failonerror="true">
+ <jvmarg value="-Xmx512m"/>
+ <arg value="org.apache.maven.plugins:maven-gpg-plugin:1.4:sign-and-deploy-file" />
+ <arg value="-DretryFailedDeploymentCount=5" />
+ <arg value="-Durl=${maven-repository-url}" />
+ <arg value="-DrepositoryId=${maven-repository-id}" />
+ <arg value="-DpomFile=@{pomFile}" />
+ <arg value="-Dfile=@{file}" />
+ <arg value="-Dclassifier=@{classifier}" />
+ <arg value="-Dpackaging=@{packaging}" />
+ <arg value="-Papache-release" />
+ </artifact:mvn>
+ </sequential>
+ </macrodef>
- <dependency groupId="org.apache.thrift" artifactId="libthrift"/>
- <dependency groupId="org.apache.cassandra" artifactId="cassandra-thrift"/>
-
- <!-- don't need hadoop classes to run, but if you use the hadoop stuff -->
- <dependency groupId="org.apache.hadoop" artifactId="hadoop-core" optional="true"/>
+ <property name="maven-ant-tasks.initialized" value="true"/>
+ </target>
- <!-- don't need jna to run, but nice to have -->
- <dependency groupId="net.java.dev.jna" artifactId="jna" optional="true"/>
+ <!-- this task defines the dependencies that will be fetched by Maven ANT Tasks
+ the dependencies are re-used for publishing artifacts to Maven Central
+ in order to keep everything consistent -->
+ <target name="maven-declare-dependencies" depends="maven-ant-tasks-init, scm-info"
+ description="Define dependencies and dependency versions">
+ <!-- The parent pom defines the versions of all dependencies -->
+ <artifact:pom id="parent-pom"
+ groupId="org.apache.cassandra"
+ artifactId="cassandra-parent"
+ packaging="pom"
+ version="${version}"
+ url="http://cassandra.apache.org"
+ name="Apache Cassandra"
+ inceptionYear="2009"
+ description="The Apache Cassandra Project develops a highly scalable second-generation distributed database, bringing together Dynamo's fully distributed design and Bigtable's ColumnFamily-based data model.">
+ <license name="The Apache Software License, Version 2.0" url="http://www.apache.org/licenses/LICENSE-2.0.txt"/>
+ <scm connection="${scm.connection}" developerConnection="${scm.developerConnection}" url="${scm.url}"/>
+ <dependencyManagement>
+ <dependency groupId="org.xerial.snappy" artifactId="snappy-java" version="1.0.3"/>
+ <dependency groupId="com.ning" artifactId="compress-lzf" version="0.8.4"/>
+ <dependency groupId="com.google.guava" artifactId="guava" version="r08"/>
+ <dependency groupId="commons-cli" artifactId="commons-cli" version="1.1"/>
+ <dependency groupId="commons-codec" artifactId="commons-codec" version="1.2"/>
+ <dependency groupId="commons-lang" artifactId="commons-lang" version="2.4"/>
+ <dependency groupId="com.googlecode.concurrentlinkedhashmap" artifactId="concurrentlinkedhashmap-lru" version="1.2"/>
+ <dependency groupId="org.antlr" artifactId="antlr" version="3.2"/>
+ <dependency groupId="org.slf4j" artifactId="slf4j-api" version="1.6.1"/>
+ <dependency groupId="org.slf4j" artifactId="slf4j-log4j12" version="1.6.1"/>
+ <dependency groupId="org.codehaus.jackson" artifactId="jackson-core-asl" version="1.4.0"/>
+ <dependency groupId="org.codehaus.jackson" artifactId="jackson-mapper-asl" version="1.4.0"/>
+ <dependency groupId="jline" artifactId="jline" version="0.9.94">
+ <exclusion groupId="junit" artifactId="junit"/>
+ </dependency>
+ <dependency groupId="com.googlecode.json-simple" artifactId="json-simple" version="1.1"/>
+ <dependency groupId="com.github.stephenc.high-scale-lib" artifactId="high-scale-lib" version="1.1.2"/>
+ <dependency groupId="com.github.stephenc" artifactId="jamm" version="0.2.5"/>
+ <dependency groupId="org.yaml" artifactId="snakeyaml" version="1.6"/>
+ <dependency groupId="org.apache.cassandra.deps" artifactId="avro" version="1.4.0-cassandra-1">
+ <exclusion groupId="org.jboss.netty" artifactId="netty"/>
+ <exclusion groupId="com.thoughtworks.paranamer" artifactId="paranamer"/>
+ <exclusion groupId="com.thoughtworks.paranamer" artifactId="paranamer-ant"/>
+ <exclusion groupId="org.apache.velocity" artifactId="velocity"/>
+ </dependency>
- <!-- don't need jamm unless running a server in which case it needs to be a -javagent to be used anyway -->
- <dependency groupId="com.github.stephenc" artifactId="jamm"/>
- </artifact:pom>
- <artifact:pom id="thrift-pom"
- artifactId="cassandra-thrift"
- url="http://cassandra.apache.org"
- name="Apache Cassandra">
- <parent groupId="org.apache.cassandra"
- artifactId="cassandra-parent"
- version="${version}"/>
- <scm connection="${scm.connection}" developerConnection="${scm.developerConnection}" url="${scm.url}"/>
- <dependency groupId="commons-lang" artifactId="commons-lang"/>
- <dependency groupId="org.slf4j" artifactId="slf4j-api"/>
- <dependency groupId="org.apache.thrift" artifactId="libthrift"/>
- </artifact:pom>
- <artifact:pom id="clientutil-pom"
- artifactId="cassandra-clientutil"
- url="http://cassandra.apache.org"
- name="Apache Cassandra">
- <parent groupId="org.apache.cassandra"
- artifactId="cassandra-parent"
- version="${version}"/>
- <scm connection="${scm.connection}" developerConnection="${scm.developerConnection}" url="${scm.url}"/>
- <dependency groupId="com.google.guava" artifactId="guava"/>
- </artifact:pom>
-
+ <dependency groupId="org.apache.thrift" artifactId="libthrift" version="0.6.1">
+ <exclusion groupId="org.slf4j" artifactId="slf4j-log4j12"/>
+ </dependency>
+
+ <dependency groupId="com.thoughtworks.paranamer" artifactId="paranamer-ant" version="2.1"/>
+ <dependency groupId="junit" artifactId="junit" version="4.6" />
+ <dependency groupId="commons-logging" artifactId="commons-logging" version="1.1.1"/>
+ <dependency groupId="org.apache.rat" artifactId="apache-rat" version="0.6" />
+ <dependency groupId="org.apache.hadoop" artifactId="hadoop-core" version="0.20.203.0"/>
+ <dependency groupId="net.sf.jopt-simple" artifactId="jopt-simple" version="3.2"/>
+ <dependency groupId="net.java.dev.jna" artifactId="jna" version="3.2.7"/>
+
+ <dependency groupId="net.sourceforge.cobertura" artifactId="cobertura" version="${cobertura.version}"/>
+
+ <dependency groupId="org.apache.whirr" artifactId="whirr-core" version="0.4.0-incubating"/>
+ <dependency groupId="org.apache.whirr" artifactId="whirr-cli" version="0.4.0-incubating"/>
+ <dependency groupId="org.jclouds.provider" artifactId="aws-s3" version="1.0-beta-9b" />
+
+ <dependency groupId="log4j" artifactId="log4j" version="1.2.16" />
+ <dependency groupId="org.apache.cassandra" artifactId="cassandra-all" version="${version}" />
+ <dependency groupId="org.apache.cassandra" artifactId="cassandra-thrift" version="${version}" />
+ </dependencyManagement>
+ <developer id="alakshman" name="Avinash Lakshman"/>
+ <developer id="antelder" name="Anthony Elder"/>
+ <developer id="brandonwilliams" name="Brandon Williams"/>
+ <developer id="eevans" name="Eric Evans"/>
+ <developer id="gdusbabek" name="Gary Dusbabek"/>
+ <developer id="goffinet" name="Chris Goffinet"/>
+ <developer id="jaakko" name="Laine Jaakko Olavi"/>
+ <developer id="jake" name="T Jake Luciani"/>
+ <developer id="jbellis" name="Jonathan Ellis"/>
+ <developer id="johan" name="Johan Oskarsson"/>
+ <developer id="junrao" name="Jun Rao"/>
+ <developer id="mriou" name="Matthieu Riou"/>
+ <developer id="pmalik" name="Prashant Malik"/>
+ <developer id="slebresne" name="Sylvain Lebresne"/>
+ </artifact:pom>
+
+ <!-- each dependency set then defines the subset of the dependencies for that dependency set -->
+ <artifact:pom id="build-deps-pom"
+ artifactId="cassandra-build-deps">
+ <parent groupId="org.apache.cassandra"
+ artifactId="cassandra-parent"
+ version="${version}"/>
+ <!-- FIXME: paranamer can be dropped after we're depending on avro
+ (since it depends on them). -->
+ <dependency groupId="com.thoughtworks.paranamer" artifactId="paranamer-ant"/>
+ <dependency groupId="junit" artifactId="junit"/>
+ <dependency groupId="commons-logging" artifactId="commons-logging"/>
+ <dependency groupId="org.apache.rat" artifactId="apache-rat"/>
+ <dependency groupId="org.apache.hadoop" artifactId="hadoop-core"/>
+ <dependency groupId="net.sf.jopt-simple" artifactId="jopt-simple"/>
+
+ <dependency groupId="net.java.dev.jna" artifactId="jna"/>
+ </artifact:pom>
+
+ <artifact:pom id="coverage-deps-pom"
+ artifactId="cassandra-coverage-deps">
+ <parent groupId="org.apache.cassandra"
+ artifactId="cassandra-parent"
+ version="${version}"/>
+ <dependency groupId="net.sourceforge.cobertura" artifactId="cobertura"/>
+ </artifact:pom>
+
+ <artifact:pom id="test-deps-pom"
+ artifactId="cassandra-test-deps">
+ <parent groupId="org.apache.cassandra"
+ artifactId="cassandra-parent"
+ version="${version}"/>
+ <dependency groupId="org.apache.whirr" artifactId="whirr-core"/>
+ <dependency groupId="org.apache.whirr" artifactId="whirr-cli"/>
+ <dependency groupId="org.jclouds.provider" artifactId="aws-s3"/>
+ </artifact:pom>
+
+ <!-- now the pom's for artifacts being deployed to Maven Central -->
+
+ <artifact:pom id="all-pom"
+ artifactId="cassandra-all"
+ url="http://cassandra.apache.org"
+ name="Apache Cassandra">
+ <parent groupId="org.apache.cassandra"
+ artifactId="cassandra-parent"
+ version="${version}"/>
+ <scm connection="${scm.connection}" developerConnection="${scm.developerConnection}" url="${scm.url}"/>
+ <dependency groupId="org.xerial.snappy" artifactId="snappy-java"/>
+ <dependency groupId="com.ning" artifactId="compress-lzf"/>
+ <dependency groupId="com.google.guava" artifactId="guava"/>
+ <dependency groupId="commons-cli" artifactId="commons-cli"/>
+ <dependency groupId="commons-codec" artifactId="commons-codec"/>
+ <dependency groupId="commons-lang" artifactId="commons-lang"/>
+ <dependency groupId="com.googlecode.concurrentlinkedhashmap" artifactId="concurrentlinkedhashmap-lru"/>
+ <dependency groupId="org.antlr" artifactId="antlr"/>
+ <dependency groupId="org.slf4j" artifactId="slf4j-api"/>
+ <dependency groupId="org.apache.cassandra.deps" artifactId="avro"/>
+ <dependency groupId="org.codehaus.jackson" artifactId="jackson-core-asl"/>
+ <dependency groupId="org.codehaus.jackson" artifactId="jackson-mapper-asl"/>
+ <dependency groupId="jline" artifactId="jline"/>
+ <dependency groupId="com.googlecode.json-simple" artifactId="json-simple"/>
+ <dependency groupId="com.github.stephenc.high-scale-lib" artifactId="high-scale-lib"/>
+ <dependency groupId="org.yaml" artifactId="snakeyaml"/>
+
+ <dependency groupId="log4j" artifactId="log4j"/>
+ <!-- cassandra has a hard dependency on log4j, so force slf4j's log4j provider at runtime -->
+ <dependency groupId="org.slf4j" artifactId="slf4j-log4j12" scope="runtime"/>
+
+ <dependency groupId="org.apache.thrift" artifactId="libthrift"/>
+ <dependency groupId="org.apache.cassandra" artifactId="cassandra-thrift"/>
+
+ <!-- don't need hadoop classes to run, but if you use the hadoop stuff -->
+ <dependency groupId="org.apache.hadoop" artifactId="hadoop-core" optional="true"/>
+
+ <!-- don't need jna to run, but nice to have -->
+ <dependency groupId="net.java.dev.jna" artifactId="jna" optional="true"/>
+
+ <!-- don't need jamm unless running a server in which case it needs to be a -javagent to be used anyway -->
+ <dependency groupId="com.github.stephenc" artifactId="jamm"/>
+ </artifact:pom>
+ <artifact:pom id="thrift-pom"
+ artifactId="cassandra-thrift"
+ url="http://cassandra.apache.org"
+ name="Apache Cassandra">
+ <parent groupId="org.apache.cassandra"
+ artifactId="cassandra-parent"
+ version="${version}"/>
+ <scm connection="${scm.connection}" developerConnection="${scm.developerConnection}" url="${scm.url}"/>
+ <dependency groupId="commons-lang" artifactId="commons-lang"/>
+ <dependency groupId="org.slf4j" artifactId="slf4j-api"/>
+ <dependency groupId="org.apache.thrift" artifactId="libthrift"/>
+ </artifact:pom>
+ <artifact:pom id="clientutil-pom"
+ artifactId="cassandra-clientutil"
+ url="http://cassandra.apache.org"
+ name="Apache Cassandra">
+ <parent groupId="org.apache.cassandra"
+ artifactId="cassandra-parent"
+ version="${version}"/>
+ <scm connection="${scm.connection}" developerConnection="${scm.developerConnection}" url="${scm.url}"/>
+<dependency groupId="com.google.guava" artifactId="guava"/>
+ </artifact:pom>
+
<artifact:pom id="dist-pom"
artifactId="apache-cassandra"
packaging="pom"
@@ -1295,6 +1295,10 @@ url=${svn.entry.url}?pathrev=${svn.entry
file="${build.dir}/${ant.project.name}-thrift-${version}-javadoc.jar"
classifier="javadoc"/>
+ <!-- the cassandra-clientutil jar -->
+ <install pomFile="${build.dir}/${ant.project.name}-clientutil-${version}.pom"
+ file="${build.dir}/${ant.project.name}-clientutil-${version}.jar"/>
+
<!-- the cassandra-all jar -->
<install pomFile="${build.dir}/${final.name}.pom"
file="${build.dir}/${final.name}.jar"/>
@@ -1339,6 +1343,10 @@ url=${svn.entry.url}?pathrev=${svn.entry
file="${build.dir}/${ant.project.name}-thrift-${version}-javadoc.jar"
classifier="javadoc"/>
+ <!-- the cassandra-clientutil jar -->
+ <deploy pomFile="${build.dir}/${ant.project.name}-clientutil-${version}.pom"
+ file="${build.dir}/${ant.project.name}-clientutil-${version}.jar"/>
+
<!-- the cassandra-all jar -->
<deploy pomFile="${build.dir}/${final.name}.pom"
file="${build.dir}/${final.name}.jar"/>
Modified: cassandra/trunk/conf/cassandra-env.sh
URL: http://svn.apache.org/viewvc/cassandra/trunk/conf/cassandra-env.sh?rev=1195562&r1=1195561&r2=1195562&view=diff
==============================================================================
--- cassandra/trunk/conf/cassandra-env.sh (original)
+++ cassandra/trunk/conf/cassandra-env.sh Mon Oct 31 16:43:33 2011
@@ -165,6 +165,7 @@ JVM_OPTS="$JVM_OPTS -XX:+UseCMSInitiatin
# GC logging options -- uncomment to enable
# JVM_OPTS="$JVM_OPTS -XX:+PrintGCDetails"
# JVM_OPTS="$JVM_OPTS -XX:+PrintGCTimeStamps"
+# JVM_OPTS="$JVM_OPTS -XX:+PrintHeapAtGC"
# JVM_OPTS="$JVM_OPTS -XX:+PrintTenuringDistribution"
# JVM_OPTS="$JVM_OPTS -XX:+PrintGCApplicationStoppedTime"
# JVM_OPTS="$JVM_OPTS -XX:+PrintPromotionFailure"
Propchange: cassandra/trunk/contrib/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Oct 31 16:43:33 2011
@@ -1,10 +1,10 @@
/cassandra/branches/cassandra-0.6/contrib:922689-1052356,1052358-1053452,1053454,1053456-1068009
/cassandra/branches/cassandra-0.7/contrib:1026516-1183000
/cassandra/branches/cassandra-0.7.0/contrib:1053690-1055654
-/cassandra/branches/cassandra-0.8/contrib:1090934-1125013,1125019-1186803,1187333,1187339,1187477,1188353,1188740
+/cassandra/branches/cassandra-0.8/contrib:1090934-1125013,1125019-1188353,1188740
/cassandra/branches/cassandra-0.8.0/contrib:1125021-1130369
/cassandra/branches/cassandra-0.8.1/contrib:1101014-1125018
-/cassandra/branches/cassandra-1.0/contrib:1167085-1190461
+/cassandra/branches/cassandra-1.0/contrib:1167085-1195557
/cassandra/branches/cassandra-1.0.0/contrib:1167104-1167229,1167232-1181093,1181741,1181816,1181820,1182951,1183243
/cassandra/tags/cassandra-0.7.0-rc3/contrib:1051699-1053689
/cassandra/tags/cassandra-0.8.0-rc1/contrib:1102511-1125020
Propchange: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Oct 31 16:43:33 2011
@@ -1,10 +1,10 @@
/cassandra/branches/cassandra-0.6/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:922689-1052356,1052358-1053452,1053454,1053456-1131291
/cassandra/branches/cassandra-0.7/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1026516-1183000
/cassandra/branches/cassandra-0.7.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1053690-1055654
-/cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1090934-1125013,1125019-1186803,1187333,1187339,1187477,1188353,1188740
+/cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1090934-1125013,1125019-1188353,1188740
/cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1125021-1130369
/cassandra/branches/cassandra-0.8.1/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1101014-1125018
-/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1167085-1190461
+/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1167085-1195557
/cassandra/branches/cassandra-1.0.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1167104-1167229,1167232-1181093,1181741,1181816,1181820,1182951,1183243
/cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1051699-1053689
/cassandra/tags/cassandra-0.8.0-rc1/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1102511-1125020
Propchange: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Oct 31 16:43:33 2011
@@ -1,10 +1,10 @@
/cassandra/branches/cassandra-0.6/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:922689-1052356,1052358-1053452,1053454,1053456-1131291
/cassandra/branches/cassandra-0.7/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1026516-1183000
/cassandra/branches/cassandra-0.7.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1053690-1055654
-/cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1090934-1125013,1125019-1186803,1187333,1187339,1187477,1188353,1188740
+/cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1090934-1125013,1125019-1188353,1188740
/cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1125021-1130369
/cassandra/branches/cassandra-0.8.1/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1101014-1125018
-/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1167085-1190461
+/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1167085-1195557
/cassandra/branches/cassandra-1.0.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1167104-1167229,1167232-1181093,1181741,1181816,1181820,1182951,1183243
/cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1051699-1053689
/cassandra/tags/cassandra-0.8.0-rc1/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1102511-1125020
Propchange: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Oct 31 16:43:33 2011
@@ -1,10 +1,10 @@
/cassandra/branches/cassandra-0.6/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:922689-1052356,1052358-1053452,1053454,1053456-1131291
/cassandra/branches/cassandra-0.7/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1026516-1183000
/cassandra/branches/cassandra-0.7.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1053690-1055654
-/cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1090934-1125013,1125019-1186803,1187333,1187339,1187477,1188353,1188740
+/cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1090934-1125013,1125019-1188353,1188740
/cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1125021-1130369
/cassandra/branches/cassandra-0.8.1/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1101014-1125018
-/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1167085-1190461
+/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1167085-1195557
/cassandra/branches/cassandra-1.0.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1167104-1167229,1167232-1181093,1181741,1181816,1181820,1182951,1183243
/cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1051699-1053689
/cassandra/tags/cassandra-0.8.0-rc1/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1102511-1125020
Propchange: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Oct 31 16:43:33 2011
@@ -1,10 +1,10 @@
/cassandra/branches/cassandra-0.6/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:922689-1052356,1052358-1053452,1053454,1053456-1131291
/cassandra/branches/cassandra-0.7/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1026516-1183000
/cassandra/branches/cassandra-0.7.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1053690-1055654
-/cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1090934-1125013,1125019-1186803,1187333,1187339,1187477,1188353,1188740
+/cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1090934-1125013,1125019-1188353,1188740
/cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1125021-1130369
/cassandra/branches/cassandra-0.8.1/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1101014-1125018
-/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1167085-1190461
+/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1167085-1195557
/cassandra/branches/cassandra-1.0.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1167104-1167229,1167232-1181093,1181741,1181816,1181820,1182951,1183243
/cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1051699-1053689
/cassandra/tags/cassandra-0.8.0-rc1/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1102511-1125020
Propchange: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Mon Oct 31 16:43:33 2011
@@ -1,10 +1,10 @@
/cassandra/branches/cassandra-0.6/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:922689-1052356,1052358-1053452,1053454,1053456-1131291
/cassandra/branches/cassandra-0.7/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1026516-1183000
/cassandra/branches/cassandra-0.7.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1053690-1055654
-/cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1090934-1125013,1125019-1186803,1187333,1187339,1187477,1188353,1188740
+/cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1090934-1125013,1125019-1188353,1188740
/cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1125021-1130369
/cassandra/branches/cassandra-0.8.1/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1101014-1125018
-/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1167085-1190461
+/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1167085-1195557
/cassandra/branches/cassandra-1.0.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1167104-1167229,1167232-1181093,1181741,1181816,1181820,1182951,1183243
/cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1051699-1053689
/cassandra/tags/cassandra-0.8.0-rc1/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1102511-1125020
Modified: cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java
URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java?rev=1195562&r1=1195561&r2=1195562&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java (original)
+++ cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java Mon Oct 31 16:43:33 2011
@@ -196,7 +196,6 @@ public class CliClient
public void executeCLIStatement(String statement) throws CharacterCodingException, TException, TimedOutException, NotFoundException, NoSuchFieldException, InvalidRequestException, UnavailableException, InstantiationException, IllegalAccessException, ClassNotFoundException, SchemaDisagreementException
{
Tree tree = CliCompiler.compileQuery(statement);
-
try
{
switch (tree.getType())
@@ -298,7 +297,7 @@ public class CliClient
}
catch (SchemaDisagreementException e)
{
- throw new RuntimeException("schema does not match across nodes, (try again later).", e);
+ throw new RuntimeException("schema does not match across nodes, (try again later).", e);
}
}
@@ -452,6 +451,7 @@ public class CliClient
throws InvalidRequestException, UnavailableException, TimedOutException, TException, IllegalAccessException, NotFoundException, InstantiationException, NoSuchFieldException
{
+ long startTime = System.currentTimeMillis();
ColumnParent parent = new ColumnParent(columnFamily);
if(superColumnName != null)
parent.setSuper_column(superColumnName);
@@ -521,6 +521,7 @@ public class CliClient
}
sessionState.out.println("Returned " + columns.size() + " results.");
+ elapsedTime(startTime);
}
private AbstractType getFormatType(String compareWith)
@@ -554,7 +555,7 @@ public class CliClient
{
if (!CliMain.isConnected() || !hasKeySpace())
return;
-
+ long startTime = System.currentTimeMillis();
Tree columnFamilySpec = statement.getChild(0);
String columnFamily = CliCompiler.getColumnFamily(columnFamilySpec, keyspacesMap.get(keySpace).cf_defs);
ByteBuffer key = getKeyAsBytes(columnFamily, columnFamilySpec.getChild(1));
@@ -635,6 +636,7 @@ public class CliClient
if (isCounterCF(cfDef))
{
doGetCounter(key, path);
+ elapsedTime(startTime);
return;
}
@@ -646,6 +648,7 @@ public class CliClient
catch (NotFoundException e)
{
sessionState.out.println("Value was not found");
+ elapsedTime(startTime);
return;
}
@@ -682,6 +685,7 @@ public class CliClient
valueAsString,
column.timestamp,
column.isSetTtl() ? String.format(", ttl=%d", column.getTtl()) : "");
+ elapsedTime(startTime);
}
private void doGetCounter(ByteBuffer key, ColumnPath path)
@@ -720,6 +724,8 @@ public class CliClient
if (!CliMain.isConnected() || !hasKeySpace())
return;
+ long startTime = System.currentTimeMillis();
+
IndexClause clause = new IndexClause();
String columnFamily = CliCompiler.getColumnFamily(statement, keyspacesMap.get(keySpace).cf_defs);
// ^(CONDITIONS ^(CONDITION $column $value) ...)
@@ -802,6 +808,7 @@ public class CliClient
{
throw new RuntimeException(e);
}
+ elapsedTime(startTime);
}
// Execute SET statement
@@ -811,6 +818,7 @@ public class CliClient
if (!CliMain.isConnected() || !hasKeySpace())
return;
+ long startTime = System.currentTimeMillis();
// ^(NODE_COLUMN_ACCESS <cf> <key> <column>)
Tree columnFamilySpec = statement.getChild(0);
Tree keyTree = columnFamilySpec.getChild(1); // could be a function or regular text
@@ -890,6 +898,7 @@ public class CliClient
// do the insert
thriftClient.insert(getKeyAsBytes(columnFamily, keyTree), parent, columnToInsert, consistencyLevel);
sessionState.out.println("Value inserted.");
+ elapsedTime(startTime);
}
// Execute INCR statement
@@ -1313,7 +1322,9 @@ public class CliClient
{
if (!CliMain.isConnected() || !hasKeySpace())
return;
-
+
+ long startTime = System.currentTimeMillis();
+
// extract column family
String columnFamily = CliCompiler.getColumnFamily(statement, keyspacesMap.get(keySpace).cf_defs);
@@ -1375,6 +1386,7 @@ public class CliClient
ColumnParent columnParent = new ColumnParent(columnFamily);
List<KeySlice> keySlices = thriftClient.get_range_slices(columnParent, predicate, range, consistencyLevel);
printSliceList(columnFamilyDef, keySlices);
+ elapsedTime(startTime);
}
// DROP INDEX ON <CF>.<COLUMN>
@@ -2853,4 +2865,9 @@ public class CliClient
}
return false;
}
+
+ private void elapsedTime(long startTime)
+ {
+ sessionState.out.println("Elapsed time: " + (System.currentTimeMillis() - startTime) + " msec(s).");
+ }
}
Modified: cassandra/trunk/src/java/org/apache/cassandra/gms/Gossiper.java
URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/gms/Gossiper.java?rev=1195562&r1=1195561&r2=1195562&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/gms/Gossiper.java (original)
+++ cassandra/trunk/src/java/org/apache/cassandra/gms/Gossiper.java Mon Oct 31 16:43:33 2011
@@ -798,7 +798,7 @@ public class Gossiper implements IFailur
subscriber.onJoin(ep, epState);
}
- public Boolean isDeadState(EndpointState epState)
+ private Boolean isDeadState(EndpointState epState)
{
if (epState.getApplicationState(ApplicationState.STATUS) == null)
return false;
Modified: cassandra/trunk/src/java/org/apache/cassandra/io/compress/CompressedRandomAccessReader.java
URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/io/compress/CompressedRandomAccessReader.java?rev=1195562&r1=1195561&r2=1195562&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/io/compress/CompressedRandomAccessReader.java (original)
+++ cassandra/trunk/src/java/org/apache/cassandra/io/compress/CompressedRandomAccessReader.java Mon Oct 31 16:43:33 2011
@@ -23,8 +23,6 @@ import java.nio.channels.FileChannel;
import java.util.zip.CRC32;
import java.util.zip.Checksum;
-import org.apache.cassandra.io.sstable.Component;
-import org.apache.cassandra.io.sstable.Descriptor;
import org.apache.cassandra.io.util.RandomAccessReader;
import org.apache.cassandra.utils.FBUtilities;
@@ -36,31 +34,9 @@ public class CompressedRandomAccessReade
{
private static final Logger logger = LoggerFactory.getLogger(CompressedRandomAccessReader.class);
- /**
- * Get metadata about given compressed file including uncompressed data length, chunk size
- * and list of the chunk offsets of the compressed data.
- *
- * @param dataFilePath Path to the compressed file
- *
- * @return metadata about given compressed file.
- */
- public static CompressionMetadata metadata(String dataFilePath)
- {
- Descriptor desc = Descriptor.fromFilename(dataFilePath);
-
- try
- {
- return new CompressionMetadata(desc.filenameFor(Component.COMPRESSION_INFO), new File(dataFilePath).length());
- }
- catch (IOException e)
- {
- throw new IOError(e);
- }
- }
-
public static RandomAccessReader open(String dataFilePath, boolean skipIOCache) throws IOException
{
- return open(dataFilePath, metadata(dataFilePath), skipIOCache);
+ return open(dataFilePath, CompressionMetadata.get(dataFilePath), skipIOCache);
}
public static RandomAccessReader open(String dataFilePath, CompressionMetadata metadata) throws IOException
Modified: cassandra/trunk/src/java/org/apache/cassandra/io/compress/CompressionMetadata.java
URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/io/compress/CompressionMetadata.java?rev=1195562&r1=1195561&r2=1195562&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/io/compress/CompressionMetadata.java (original)
+++ cassandra/trunk/src/java/org/apache/cassandra/io/compress/CompressionMetadata.java Mon Oct 31 16:43:33 2011
@@ -21,8 +21,11 @@ package org.apache.cassandra.io.compress
import java.io.*;
import java.util.HashMap;
import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
import org.apache.cassandra.config.ConfigurationException;
+import org.apache.cassandra.io.sstable.Component;
+import org.apache.cassandra.io.sstable.Descriptor;
import org.apache.cassandra.io.util.FileUtils;
/**
@@ -36,7 +39,53 @@ public class CompressionMetadata
public final String indexFilePath;
public final CompressionParameters parameters;
- public CompressionMetadata(String indexFilePath, long compressedLength) throws IOException
+ /**
+ * Caches instances of CompressionMetadata.
+ * Each metada holds the chunk offsets index, which is reasonably big for
+ * enough data, so it's an expensive structure. We thus only want one
+ * CompressionMetadata created for each sstable.
+ * Note that we could have a compressionMetadata field in SSTableReader,
+ * but CompressedSegmentFile.Builder needs it before the reader is
+ * created, so it's easier that way.
+ */
+ private final static Map<String, CompressionMetadata> cache = new ConcurrentHashMap<String, CompressionMetadata>();
+
+ /**
+ * Get metadata about given compressed file including uncompressed data length, chunk size
+ * and list of the chunk offsets of the compressed data.
+ *
+ * @param dataFilePath Path to the compressed file
+ *
+ * @return metadata about given compressed file.
+ */
+ public static CompressionMetadata get(String dataFilePath)
+ {
+ CompressionMetadata metadata = cache.get(dataFilePath);
+ if (metadata != null)
+ return metadata;
+
+ // We want this to be relatively fast, because it's called often (for each
+ // range query). On the side, we don't care too much if the initial
+ // creation is no thread-safe, because we'll call this when the
+ // SSTableReader is loaded/created, so we're pretty sure there won't
+ // be any contention. Besides, if we really do create two
+ // CompressionMetadata, it's not the end of the world, so we don't
+ // bother with synchronization
+ Descriptor desc = Descriptor.fromFilename(dataFilePath);
+ try
+ {
+ metadata = new CompressionMetadata(desc.filenameFor(Component.COMPRESSION_INFO), new File(dataFilePath).length());
+ cache.put(dataFilePath, metadata);
+ return metadata;
+ }
+ catch (IOException e)
+ {
+ throw new IOError(e);
+ }
+ }
+
+ // This is package protected because of the tests. Don't use, use get() instead.
+ CompressionMetadata(String indexFilePath, long compressedLength) throws IOException
{
this.indexFilePath = indexFilePath;
Modified: cassandra/trunk/src/java/org/apache/cassandra/io/util/CompressedSegmentedFile.java
URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/io/util/CompressedSegmentedFile.java?rev=1195562&r1=1195561&r2=1195562&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/io/util/CompressedSegmentedFile.java (original)
+++ cassandra/trunk/src/java/org/apache/cassandra/io/util/CompressedSegmentedFile.java Mon Oct 31 16:43:33 2011
@@ -52,7 +52,7 @@ public class CompressedSegmentedFile ext
*/
public SegmentedFile complete(String path)
{
- return new CompressedSegmentedFile(path, CompressedRandomAccessReader.metadata(path));
+ return new CompressedSegmentedFile(path, CompressionMetadata.get(path));
}
}
Modified: cassandra/trunk/src/java/org/apache/cassandra/locator/TokenMetadata.java
URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/locator/TokenMetadata.java?rev=1195562&r1=1195561&r2=1195562&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/locator/TokenMetadata.java (original)
+++ cassandra/trunk/src/java/org/apache/cassandra/locator/TokenMetadata.java Mon Oct 31 16:43:33 2011
@@ -67,7 +67,7 @@ public class TokenMetadata
// Finally, note that recording the tokens of joining nodes in bootstrapTokens also
// means we can detect and reject the addition of multiple nodes at the same token
// before one becomes part of the ring.
- private BiMap<Token, InetAddress> bootstrapTokens = HashBiMap.create();
+ private BiMap<Token, InetAddress> bootstrapTokens = Maps.synchronizedBiMap(HashBiMap.<Token, InetAddress>create());
// (don't need to record Token here since it's still part of tokenToEndpointMap until it's done leaving)
private Set<InetAddress> leavingEndpoints = new HashSet<InetAddress>();
// this is a cache of the calculation from {tokenToEndpointMap, bootstrapTokens, leavingEndpoints}
Modified: cassandra/trunk/test/unit/org/apache/cassandra/cli/CliTest.java
URL: http://svn.apache.org/viewvc/cassandra/trunk/test/unit/org/apache/cassandra/cli/CliTest.java?rev=1195562&r1=1195561&r2=1195562&view=diff
==============================================================================
--- cassandra/trunk/test/unit/org/apache/cassandra/cli/CliTest.java (original)
+++ cassandra/trunk/test/unit/org/apache/cassandra/cli/CliTest.java Mon Oct 31 16:43:33 2011
@@ -249,15 +249,16 @@ public class CliTest extends CleanupHelp
}
else if (statement.startsWith("set "))
{
- assertEquals(result, "Value inserted." + System.getProperty("line.separator"));
+ assertTrue(result.contains("Value inserted."));
+ assertTrue(result.contains("Elapsed time:"));
}
else if (statement.startsWith("incr "))
{
- assertEquals(result, "Value incremented." + System.getProperty("line.separator"));
+ assertTrue(result.contains("Value incremented."));
}
else if (statement.startsWith("decr "))
{
- assertEquals(result, "Value decremented." + System.getProperty("line.separator"));
+ assertTrue(result.contains("Value decremented."));
}
else if (statement.startsWith("get "))
{
@@ -273,6 +274,7 @@ public class CliTest extends CleanupHelp
{
assertTrue(result.startsWith("=> (column=") || result.startsWith("Value was not found"));
}
+ assertTrue(result.contains("Elapsed time:"));
}
else if (statement.startsWith("truncate "))
{