Author: kwall
Date: Sat Jan 28 09:16:23 2012
New Revision: 1237029

URL: http://svn.apache.org/viewvc?rev=1237029&view=rev
Log:
QPID-3775: Fix path handling in bdb scripts.

Fix bdb scripts backup.sh and storeUpgrade.sh so they successfully handle 
QPID_HOME and store paths containing spaces.   This
problem was shown up on Jenkins, as the profile directories of the Jenkins 
Matrix contain spaces.

Modified:
    qpid/trunk/qpid/java/bdbstore/bin/backup.sh
    qpid/trunk/qpid/java/bdbstore/bin/storeUpgrade.sh

Modified: qpid/trunk/qpid/java/bdbstore/bin/backup.sh
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/bdbstore/bin/backup.sh?rev=1237029&r1=1237028&r2=1237029&view=diff
==============================================================================
--- qpid/trunk/qpid/java/bdbstore/bin/backup.sh (original)
+++ qpid/trunk/qpid/java/bdbstore/bin/backup.sh Sat Jan 28 09:16:23 2012
@@ -19,22 +19,26 @@
 #
 
 # Parse arguments taking all - prefixed args as JAVA_OPTS
+
+declare -a ARGS
 for arg in "$@"; do
     if [[ $arg == -java:* ]]; then
         JAVA_OPTS="${JAVA_OPTS}-`echo $arg|cut -d ':' -f 2`  "
     else
-        ARGS="${ARGS}$arg "
+        ARGS[${#ARGS[@]}]="$arg"
     fi
 done
 
-WHEREAMI=`dirname $0`
 if [ -z "$QPID_HOME" ]; then
-   export QPID_HOME=`cd $WHEREAMI/../ && pwd`
+    export QPID_HOME=$(dirname $(dirname $(readlink -f $0)))
+    export PATH=${PATH}:${QPID_HOME}/bin
 fi
+
 VERSION=0.15
 
-LIBS=$QPID_HOME/lib/opt/je-5.0.34.jar:$QPID_HOME/lib/qpid-bdbstore-$VERSION.jar:$QPID_HOME/lib/qpid-all.jar
+# BDB's je JAR expected to be found in lib/opt
+LIBS="${QPID_HOME}/lib/opt/*:${QPID_HOME}/lib/qpid-bdbstore-${VERSION}.jar:${QPID_HOME}/lib/qpid-all.jar"
 
 
 echo "Starting Hot Backup Script"
-java -Dlog4j.configuration=backup-log4j.xml ${JAVA_OPTS} -cp $LIBS 
org.apache.qpid.server.store.berkeleydb.BDBBackup ${ARGS}
+java -Dlog4j.configuration=backup-log4j.xml ${JAVA_OPTS} -cp "${LIBS}" 
org.apache.qpid.server.store.berkeleydb.BDBBackup "${ARGS[@]}"

Modified: qpid/trunk/qpid/java/bdbstore/bin/storeUpgrade.sh
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/java/bdbstore/bin/storeUpgrade.sh?rev=1237029&r1=1237028&r2=1237029&view=diff
==============================================================================
--- qpid/trunk/qpid/java/bdbstore/bin/storeUpgrade.sh (original)
+++ qpid/trunk/qpid/java/bdbstore/bin/storeUpgrade.sh Sat Jan 28 09:16:23 2012
@@ -19,11 +19,12 @@
 #
 
 # Parse arguements taking all - prefixed args as JAVA_OPTS
+declare -a ARGS
 for arg in "$@"; do
     if [[ $arg == -java:* ]]; then
         JAVA_OPTS="${JAVA_OPTS}-`echo $arg|cut -d ':' -f 2`  "
     else
-        ARGS="${ARGS}$arg "
+        ARGS[${#ARGS[@]}]="$arg"
     fi
 done
 
@@ -34,6 +35,7 @@ fi
 
 VERSION=0.15
 
-LIBS=$QPID_HOME/lib/opt/je-5.0.34.jar:$QPID_HOME/lib/qpid-bdbstore-$VERSION.jar:$QPID_HOME/lib/qpid-all.jar
+# BDB's je JAR expected to be found in lib/opt
+LIBS="$QPID_HOME/lib/opt/*:$QPID_HOME/lib/qpid-bdbstore-${VERSION}.jar:$QPID_HOME/lib/qpid-all.jar"
 
-java -Xms256m -Dlog4j.configuration=BDBStoreUpgrade.log4j.xml -Xmx256m 
-Damqj.logging.level=warn ${JAVA_OPTS} -cp $LIBS 
org.apache.qpid.server.store.berkeleydb.BDBStoreUpgrade  ${ARGS} 
+java -Xms256m -Dlog4j.configuration=BDBStoreUpgrade.log4j.xml -Xmx256m 
-Damqj.logging.level=warn ${JAVA_OPTS} -cp "${LIBS}" 
org.apache.qpid.server.store.berkeleydb.BDBStoreUpgrade "${ARGS[@]}"



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]

Reply via email to