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:15:20 UTC
[jira] [Commented] (ZOOKEEPER-1663) scripts don't work when path
contains spaces
[ https://issues.apache.org/jira/browse/ZOOKEEPER-1663?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13693225#comment-13693225 ]
Marshall McMullen commented on ZOOKEEPER-1663:
----------------------------------------------
This fix is incorrect. It assumes the shell is bash since it uses bash array construction, e.g.:
{code}
96 LIBPATH=("${ZOOKEEPER_PREFIX}"/share/zookeeper/*.jar)
{code}
This does NOT work if /bin/sh points to /bin/dash as it does on Ubuntu.
It fails as so:
{quote}
zkEnv.sh: 96: zkEnv.sh: Syntax error: "(" unexpected (expecting "fi")
{quote}
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 opened a separate jira (ZOOKEEPER-1719).
> scripts don't work when path contains spaces
> --------------------------------------------
>
> Key: ZOOKEEPER-1663
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1663
> Project: ZooKeeper
> Issue Type: Bug
> Components: scripts
> Affects Versions: 3.4.5
> Environment: Kubuntu 12.10 (GNU bash 4.2.37)
> Reporter: Amichai Rothman
> Priority: Minor
> Fix For: 3.5.0, 3.4.6
>
> Attachments: ZOOKEEPER-1663-ls.trunk.patch, ZOOKEEPER-1663.patch, ZOOKEEPER-1663.trunk.patch, ZOOKEEPER-1663.trunk.patch
>
>
> The shell scripts (bin/zk*.sh) don't work when there are spaces in the zookeeper or java paths.
--
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