zookeeper-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chris Nauroth (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (ZOOKEEPER-1927) zkServer.sh fails to read dataDir (and others) from zoo.cfg on Solaris 10 (grep issue, manifests as FAILED TO WRITE PID).
Date Fri, 01 May 2015 05:59:06 GMT

     [ https://issues.apache.org/jira/browse/ZOOKEEPER-1927?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Chris Nauroth updated ZOOKEEPER-1927:
-------------------------------------
    Attachment: ZOOKEEPER-1927.001.patch

I'm attaching a patch that does the following:
# On Solaris only, call /usr/xpg4/bin/grep.  This has the GNU grep semantics that the regex
expects.
# On Solaris only, use a different incantation of /bin/echo to avoid echoing newline.

I tested this patch on both Solaris and CentOS.  I built a distro, started and stopped the
server, and verified basic operations.


> zkServer.sh fails to read dataDir (and others) from zoo.cfg on Solaris 10 (grep issue,
manifests as FAILED TO WRITE PID).  
> ---------------------------------------------------------------------------------------------------------------------------
>
>                 Key: ZOOKEEPER-1927
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1927
>             Project: ZooKeeper
>          Issue Type: Bug
>          Components: scripts
>    Affects Versions: 3.4.6
>         Environment: Solaris 5.10 
>            Reporter: Ed Schmed
>         Attachments: ZOOKEEPER-1927.001.patch
>
>
> Fails to write PID file with a permissions error, because the startup script fails to
read the dataDir variable from zoo.cfg, and then tries to use the drive root ( / ) as the
data dir.
> Tracked the problem down to line 84 of zkServer.sh:
> ZOO_DATADIR="$(grep "^[[:space:]]*dataDir" "$ZOOCFG" | sed -e 's/.*=//')"
> If i run just that line and point it right at the config file, ZOO_DATADIR is empty.
> If I remove [[:space:]]* from the grep:
> ZOO_DATADIR="$(grep "^dataDir" "$ZOOCFG" | sed -e 's/.*=//')"
> Then it works fine. (If I also make the same change on line 164 and 169)
> My regex skills are pretty bad, so I'm afraid to comment on why [[space]]* needs to be
in there?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message