You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Marshall McMullen (JIRA)" <ji...@apache.org> on 2013/06/25 20:01:23 UTC

[jira] [Created] (ZOOKEEPER-1719) zkServer.sh and zkEnv.sh regression caused by ZOOKEEPER-1538

Marshall McMullen created ZOOKEEPER-1719:
--------------------------------------------

             Summary: zkServer.sh and zkEnv.sh regression caused by ZOOKEEPER-1538
                 Key: ZOOKEEPER-1719
                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1719
             Project: ZooKeeper
          Issue Type: Bug
         Environment: Linux (Ubuntu 12.04) with dash shell
            Reporter: Marshall McMullen
            Assignee: Andrew Ferguson


This fix from ZOOKEEPER-1538 is incorrect. It assumes the shell is bash since it uses bash array construction, e.g.:

 96   LIBPATH=("${ZOOKEEPER_PREFIX}"/share/zookeeper/*.jar)

This does NOT work if /bin/sh points to /bin/dash as it does on Ubuntu. 

It fails as so:

zkEnv.sh: 96: zkEnv.sh: Syntax error: "(" unexpected (expecting "fi")                                                                                                                                                                                              


If I change the shebang at the top to use "/bin/bash" instead of "/bin/sh" it works as expected. I don't know the full details of why using a bash array was chosen as the solution but I don't think it is the right way to deal with spaces in these paths...

I will open a separate jira and assign to Andrew Ferguson.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira