diff options
| author | Michael Klishin <michael@clojurewerkz.org> | 2016-01-15 21:48:22 +0300 |
|---|---|---|
| committer | Michael Klishin <michael@clojurewerkz.org> | 2016-01-15 21:48:22 +0300 |
| commit | 6f1e94f9d4012c6c39552ca561ce0077a7b054e4 (patch) | |
| tree | 1ee1c35ead4b3ab677e93a76cfdf70092ba7cc26 /scripts/rabbitmq-server | |
| parent | 2398554cfb5a1cd942ad91dfa8a4e2ac88f38647 (diff) | |
| parent | 115babd8683614cf89da6cf8cbbba351fc6e8e9a (diff) | |
| download | rabbitmq-server-git-6f1e94f9d4012c6c39552ca561ce0077a7b054e4.tar.gz | |
Merge branch 'stable'
Diffstat (limited to 'scripts/rabbitmq-server')
| -rwxr-xr-x | scripts/rabbitmq-server | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/scripts/rabbitmq-server b/scripts/rabbitmq-server index 303383eb1b..6397d1cdbd 100755 --- a/scripts/rabbitmq-server +++ b/scripts/rabbitmq-server @@ -38,8 +38,21 @@ case "$(uname -s)" in if [ $detached ]; then echo "Warning: PID file not written; -detached was passed." 1>&2 else - mkdir -p $(dirname ${RABBITMQ_PID_FILE}); - echo $$ > ${RABBITMQ_PID_FILE} + RABBITMQ_PID_DIR="$(dirname ${RABBITMQ_PID_FILE})" + EX_CANTCREAT=73 # Standard exit code from sysexits(2) + if ! mkdir -p "$RABBITMQ_PID_DIR"; then + # Better diagnostics - 'mkdir -p' reports only the first directory in chain that + # it fails to create + echo "Failed to create directory: $RABBITMQ_PID_DIR" + exit $EX_CANTCREAT + fi + if ! echo $$ > ${RABBITMQ_PID_FILE}; then + # Bettern diagnostics - otherwise the only report in logs is about failed 'echo' + # command, but without any other details: neither what script has failed nor what + # file output was redirected to. + echo "Failed to write pid file: ${RABBITMQ_PID_FILE}" + exit $EX_CANTCREAT + fi fi esac |
