From 1b3bd6eb38ef05b5f29c94165259ee62dd27c965 Mon Sep 17 00:00:00 2001 From: "Wang, Fei" Date: Thu, 26 Dec 2024 20:22:34 +0800 Subject: [PATCH] [CELEBORN-1802] Fail the celeborn master/worker start if CELEBORN_CONF_DIR is not directory ### What changes were proposed in this pull request? Fail the celeborn master/worker start if `CELEBORN_CONF_DIR` is not directory. Otherwise, the process would run into unexpected status. ### Why are the changes needed? In the `celeborn-daemon.sh` , if we specify the `--config ` option. It would fail the master/worker start if the `conf-dir` is not a directory, likes the systemctl `ConditionPathExists=$CELEBORN_CONF_DIR` requirement check. https://github.com/apache/celeborn/blob/fde6365f68ce8b589bcc639e96476ed618249257/sbin/celeborn-daemon.sh#L35 https://github.com/apache/celeborn/blob/fde6365f68ce8b589bcc639e96476ed618249257/sbin/celeborn-daemon.sh#L53-L62 But before this PR, for the start master/worker scripts, it did not check if the `CELEBORN_CONF_DIR` is dirctory because the scripts did not leverage `--config ` option. In this PR, we check the final `CELEBORN_CONF_DIR` before start celeborn, so that all the scripts would check if the `CELEBORN_CONF_DIR` is a directory before start. ### Does this PR introduce _any_ user-facing change? Yes, it would fail the start if `CELEBORN_CONF_DIR` is not a directory. ### How was this patch tested? image Closes #3030 from turboFei/check_config_dir. Authored-by: Wang, Fei Signed-off-by: mingji --- sbin/celeborn-daemon.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/sbin/celeborn-daemon.sh b/sbin/celeborn-daemon.sh index b4c2cc4c65f..fa1ffd3c542 100755 --- a/sbin/celeborn-daemon.sh +++ b/sbin/celeborn-daemon.sh @@ -166,6 +166,11 @@ run_command() { } start_celeborn() { + if [ ! -d "$CELEBORN_CONF_DIR" ] + then + echo "ERROR : CELEBORN_CONF_DIR: $CELEBORN_CONF_DIR is not a directory" + exit 1 + fi run_command class "$@" }