diff --git a/CHANGES.txt b/CHANGES.txt index a7f3e89477..ab910237ed 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -28,6 +28,8 @@ * Potential Overflow in DatabaseDescriptor Functions That Convert Between KB/MB & Bytes (CASSANDRA-15470) Merged from 3.0: * Run evictFromMembership in GossipStage (CASSANDRA-15592) +Merged from 2.2: +* Allow EXTRA_CLASSPATH to work on tar/source installations (CASSANDRA-15567) 4.0-alpha3 * Restore monotonic read consistency guarantees for blocking read repair (CASSANDRA-14740) diff --git a/bin/cassandra b/bin/cassandra index 4341b37898..031196d3d8 100755 --- a/bin/cassandra +++ b/bin/cassandra @@ -27,6 +27,7 @@ # behavior, those variables are: # # CLASSPATH -- A Java classpath containing everything necessary to run. +# EXTRA_CLASSPATH -- A Java classpath with anything to be appended to CLASSPATH # JVM_OPTS -- Additional arguments to the JVM for heap size, etc # JVM_ON_OUT_OF_MEMORY_ERROR_OPT -- The OnOutOfMemoryError JVM option if specified # CASSANDRA_CONF -- Directory containing Cassandra configuration files. diff --git a/bin/cassandra.in.sh b/bin/cassandra.in.sh index 1de93602af..58b4dd2896 100644 --- a/bin/cassandra.in.sh +++ b/bin/cassandra.in.sh @@ -51,6 +51,9 @@ done for jsr223jar in "$CASSANDRA_HOME"/lib/jsr223/*/*.jar; do CLASSPATH="$CLASSPATH:$jsr223jar" done + +CLASSPATH="$CLASSPATH:$EXTRA_CLASSPATH" + # JSR223/JRuby - set ruby lib directory if [ -d "$CASSANDRA_HOME"/lib/jsr223/jruby/ruby ] ; then export JVM_OPTS="$JVM_OPTS -Djruby.lib=$CASSANDRA_HOME/lib/jsr223/jruby" diff --git a/debian/patches/cassandra_in.sh_dirs.diff b/debian/patches/cassandra_in.sh_dirs.diff index 2d9144297f..6642165beb 100644 --- a/debian/patches/cassandra_in.sh_dirs.diff +++ b/debian/patches/cassandra_in.sh_dirs.diff @@ -25,7 +25,7 @@ # This can be the path to a jar file, or a directory containing the # compiled classes. NOTE: This isn't needed by the startup script, -@@ -38,7 +38,7 @@ +@@ -38,7 +38,7 @@ fi # the default location for commitlogs, sstables, and saved caches # if not set in cassandra.yaml @@ -34,7 +34,7 @@ # JAVA_HOME can optionally be set here #JAVA_HOME=/usr/local/jdk6 -@@ -47,6 +47,13 @@ +@@ -47,6 +47,10 @@ for jar in "$CASSANDRA_HOME"/lib/*.jar; do CLASSPATH="$CLASSPATH:$jar" done @@ -42,9 +42,6 @@ + CLASSPATH="$CLASSPATH:$jar" +done + -+# Include EXTRA_CLASSPATH from /etc/default/cassandra -+CLASSPATH="$CLASSPATH:$EXTRA_CLASSPATH" -+ + CLASSPATH="$CLASSPATH:$EXTRA_CLASSPATH" + # JSR223 - collect all JSR223 engines' jars - for jsr223jar in "$CASSANDRA_HOME"/lib/jsr223/*/*.jar; do - CLASSPATH="$CLASSPATH:$jsr223jar"