Bläddra i källkod

ZOOKEEPER-447. zkServer.sh doesn't allow different config files to be specified on the command line

git-svn-id: https://svn.apache.org/repos/asf/hadoop/zookeeper/trunk@800981 13f79535-47bb-0310-9956-ffa450edef68
Patrick D. Hunt 16 år sedan
förälder
incheckning
afaebe7331
3 ändrade filer med 18 tillägg och 3 borttagningar
  1. 5 2
      CHANGES.txt
  2. 7 1
      bin/zkEnv.sh
  3. 6 0
      bin/zkServer.sh

+ 5 - 2
CHANGES.txt

@@ -38,8 +38,11 @@ BUGFIXES:
   ZOOKEEPER-480. FLE should perform leader check when node is not leading and
   ZOOKEEPER-480. FLE should perform leader check when node is not leading and
   add vote of follower (flavio via mahadev)
   add vote of follower (flavio via mahadev)
 
 
-  ZOOKEEPER-491. Prevent zero-weight servers from being elected. (flavio via
-  mahadev)
+  ZOOKEEPER-491. Prevent zero-weight servers from being elected.
+  (flavio via mahadev)
+
+  ZOOKEEPER-447. zkServer.sh doesn't allow different config files to be
+  specified on the command line (henry robinson via phunt)
 
 
 IMPROVEMENTS:
 IMPROVEMENTS:
   ZOOKEEPER-473. cleanup junit tests to eliminate false positives due to
   ZOOKEEPER-473. cleanup junit tests to eliminate false positives due to

+ 7 - 1
bin/zkEnv.sh

@@ -32,6 +32,13 @@ then
     fi
     fi
 fi
 fi
 
 
+if [ "x$ZOOCFG" = "x" ]
+then
+    ZOOCFG="zoo.cfg"
+fi
+
+ZOOCFG="$ZOOCFGDIR/$ZOOCFG"
+
 if [ -e "$ZOOCFGDIR/java.env" ]
 if [ -e "$ZOOCFGDIR/java.env" ]
 then
 then
     . "$ZOOCFGDIR/java.env"
     . "$ZOOCFGDIR/java.env"
@@ -64,4 +71,3 @@ do
 done
 done
 #add the zoocfg dir to classpath
 #add the zoocfg dir to classpath
 CLASSPATH=$ZOOCFGDIR:$CLASSPATH
 CLASSPATH=$ZOOCFGDIR:$CLASSPATH
-ZOOCFG="$ZOOCFGDIR/zoo.cfg"

+ 6 - 0
bin/zkServer.sh

@@ -53,6 +53,12 @@ ZOOBINDIR=`dirname "$ZOOBIN"`
 
 
 . $ZOOBINDIR/zkEnv.sh
 . $ZOOBINDIR/zkEnv.sh
 
 
+if [ "x$2" != "x" ]
+then
+    ZOOCFG=$ZOOCFGDIR/$2
+fi
+echo "Using config: $ZOOCFG"
+
 ZOOPIDFILE=$(grep dataDir $ZOOCFG | sed -e 's/.*=//')/zookeeper_server.pid
 ZOOPIDFILE=$(grep dataDir $ZOOCFG | sed -e 's/.*=//')/zookeeper_server.pid