You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "Joey Frazee (Jira)" <ji...@apache.org> on 2021/02/08 22:03:00 UTC

[jira] [Commented] (NIFI-8211) nifi.sh doesn't work as expected when /bin/sh isn't bash

    [ https://issues.apache.org/jira/browse/NIFI-8211?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17281410#comment-17281410 ] 

Joey Frazee commented on NIFI-8211:
-----------------------------------

AFAICT nothing destructive happens, but the behavior is a little wonky:

- It's very noisy -- see below.
- If for some reason NiFi can't start then the --wait-for-init will get stuck in a loop and never exit. You can test this by killing NiFi while it's coming up or trying to start it with a missing nifi.properties.
- It also creates a 0-byte file '=' in $NIFI_HOME/bin whether or not it successfully starts.

{code}
./bin/nifi.sh: 366: ./bin/nifi.sh: declare: not found
./bin/nifi.sh: 253: ./bin/nifi.sh: [[: not found
./bin/nifi.sh: 373: ./bin/nifi.sh: declare: not found
./bin/nifi.sh: 374: ./bin/nifi.sh: declare: not found
./bin/nifi.sh: 375: ./bin/nifi.sh: declare: not found
./bin/nifi.sh: 376: ./bin/nifi.sh: declare: not found
./bin/nifi.sh: 377: ./bin/nifi.sh: declare: not found
./bin/nifi.sh: 378: ./bin/nifi.sh: declare: not found
./bin/nifi.sh: 385: ./bin/nifi.sh: current_time: not found
./bin/nifi.sh: 390: ./bin/nifi.sh: time_since_feedback: not found
./bin/nifi.sh: 391: ./bin/nifi.sh: time_since_feedback: not found
./bin/nifi.sh: 399: ./bin/nifi.sh: not_running_counter++: not found
./bin/nifi.sh: 400: ./bin/nifi.sh: not_running_counter: not found
sleep: missing operand
Try 'sleep --help' for more information.
./bin/nifi.sh: 385: ./bin/nifi.sh: current_time: not found
./bin/nifi.sh: 390: ./bin/nifi.sh: time_since_feedback: not found
./bin/nifi.sh: 391: ./bin/nifi.sh: time_since_feedback: not found
sleep: missing operand
Try 'sleep --help' for more information.
./bin/nifi.sh: 385: ./bin/nifi.sh: current_time: not found
./bin/nifi.sh: 390: ./bin/nifi.sh: time_since_feedback: not found
./bin/nifi.sh: 391: ./bin/nifi.sh: time_since_feedback: not found
{code}

> nifi.sh doesn't work as expected when /bin/sh isn't bash
> --------------------------------------------------------
>
>                 Key: NIFI-8211
>                 URL: https://issues.apache.org/jira/browse/NIFI-8211
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Core Framework
>    Affects Versions: 1.13.0
>            Reporter: Joey Frazee
>            Priority: Blocker
>
> NIFI-8123 introduced a --wait-for-init option to nifi.sh, making use of some Bash and Zsh-only builtins such as declare. Currently nifi.sh points to /bin/sh though and even when bash is available it can point to other shells such as ash and dash.
> This creates some noise during a regular startup with `start` and the new wait functionality doesn't work with a `start --wait-for-init` with other shells. Startup still succeeds however.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)