Переглянути джерело

ZOOKEEPER-1744. clientPortAddress breaks "zkServer.sh status" (Nick Ohanian via phunt)

git-svn-id: https://svn.apache.org/repos/asf/zookeeper/trunk@1535278 13f79535-47bb-0310-9956-ffa450edef68
Patrick D. Hunt 11 роки тому
батько
коміт
bac5a6bfbb
2 змінених файлів з 11 додано та 3 видалено
  1. 3 0
      CHANGES.txt
  2. 8 3
      bin/zkServer.sh

+ 3 - 0
CHANGES.txt

@@ -462,6 +462,9 @@ BUGFIXES:
   ZOOKEEPER-1557. jenkins jdk7 test failure in
   testBadSaslAuthNotifiesWatch (Eugene Koontz via phunt)
 
+  ZOOKEEPER-1744. clientPortAddress breaks "zkServer.sh status"
+  (Nick Ohanian via phunt)
+
 IMPROVEMENTS:
 
   ZOOKEEPER-1170. Fix compiler (eclipse) warnings: unused imports,

+ 8 - 3
bin/zkServer.sh

@@ -173,7 +173,12 @@ restart)
     ;;
 status)
     # -q is necessary on some versions of linux where nc returns too quickly, and no stat result is output
-    clientPort=`grep "^[[:space:]]*clientPort" "$ZOOCFG" | sed -e 's/.*=//'`
+    clientPortAddress=`grep "^[[:space:]]*clientPortAddress[^[:alpha:]]" "$ZOOCFG" | sed -e 's/.*=//'`
+    if ! [ $clientPortAddress ]
+    then
+	clientPortAddress="localhost"
+    fi
+    clientPort=`grep "^[[:space:]]*clientPort[^[:alpha:]]" "$ZOOCFG" | sed -e 's/.*=//'`
     if ! [ $clientPort ]
     then
        echo "Client port not found in static config file. Looking in dynamic config file."
@@ -188,8 +193,8 @@ status)
     fi
     echo "Client port found: $clientPort"
     STAT=`"$JAVA" "-Dzookeeper.log.dir=${ZOO_LOG_DIR}" "-Dzookeeper.root.logger=${ZOO_LOG4J_PROP}" \
-             -cp "$CLASSPATH" $JVMFLAGS org.apache.zookeeper.client.FourLetterWordMain localhost \
-             $clientPort srvr 2> /dev/null    \
+             -cp "$CLASSPATH" $JVMFLAGS org.apache.zookeeper.client.FourLetterWordMain \
+             $clientPortAddress $clientPort srvr 2> /dev/null    \
           | grep Mode`
     if [ "x$STAT" = "x" ]
     then