Bob Paulin created NIFI-12913:
---------------------------------

             Summary: Python venv process failure on Ubuntu does not throw 
proper excepiton
                 Key: NIFI-12913
                 URL: https://issues.apache.org/jira/browse/NIFI-12913
             Project: Apache NiFi
          Issue Type: Bug
         Environment: Ubuntu
            Reporter: Bob Paulin


Staring nifi with python extensions on is throwing a NPE in the shutdown 
process that swallows the root issue

Relevant stack trace:

```

Caused by: java.lang.NullPointerException: Identifier required

        at java.base/java.util.Objects.requireNonNull(Objects.java:259)

        at 
org.apache.nifi.py4j.logging.StandardLogLevelChangeHandler.removeListener(StandardLogLevelChangeHandler.java:78)

        at 
org.apache.nifi.py4j.PythonProcess.killProcess(PythonProcess.java:364)

        at org.apache.nifi.py4j.PythonProcess.shutdown(PythonProcess.java:360)

        at 
org.apache.nifi.py4j.StandardPythonBridge.shutdown(StandardPythonBridge.java:297)

        at 
org.apache.nifi.py4j.StandardPythonBridge.start(StandardPythonBridge.java:85)

        at 
org.apache.nifi.components.ClassLoaderAwarePythonBridge.start(ClassLoaderAwarePythonBridge.java:52)

        at 
org.apache.nifi.controller.FlowController.<init>(FlowController.java:579)

        at 
org.apache.nifi.controller.FlowController.createStandaloneInstance(FlowController.java:411)

        at 
org.apache.nifi.spring.FlowControllerFactoryBean.getObject(FlowControllerFactoryBean.java:83)

```

 

Suggest at a minimum we need a null check here to let the real exception 
related to the venv install failure come through.

 

ROOT ISSUE

The venv install command fails on Ubuntu without first running an install 
command on ubuntu

EX

```

apt install python3.10-venv

```

 

```

python3 -m venv /home/bpaulin/nifi-2.0.0-SNAPSHOT/work/python/ 

The virtual environment was not created successfully because ensurepip is not 
available. On Debian/Ubuntu systems, you need to install the python3-venv 
package using the following command. apt install python3.10-venv You may need 
to use sudo with that command. After installing the python3-venv package, 
recreate your virtual environment. Failing command: 
/home/bpaulin/nifi-2.0.0-SNAPSHOT/work/python/bin/python3

```

 

Suggest either reading this process output text as a part of the exception 
handling, sending the process output to the logger for easier debugging.  

The process is exited with a 1 status but the NPE at the top of the issue is 
preventing it from getting logged leaving the user guessing what happened.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to