[
https://issues.apache.org/jira/browse/NIFI-12913?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
David Handermann resolved NIFI-12913.
-------------------------------------
Fix Version/s: 2.0.0
Assignee: Bob Paulin
Resolution: Fixed
> Python venv process failure on Ubuntu does not throw proper exception
> ---------------------------------------------------------------------
>
> Key: NIFI-12913
> URL: https://issues.apache.org/jira/browse/NIFI-12913
> Project: Apache NiFi
> Issue Type: Bug
> Affects Versions: 2.0.0-M2
> Environment: Ubuntu
> Reporter: Bob Paulin
> Assignee: Bob Paulin
> Priority: Minor
> Fix For: 2.0.0
>
> Time Spent: 10m
> Remaining Estimate: 0h
>
> Staring nifi with python extensions on is throwing a NPE in the shutdown
> process that swallows the root issue
> Relevant stack trace:
>
>
> {code:java}
> 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){code}
>
>
> 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
>
>
> {code:java}
> apt install python3.10-venv {code}
>
>
> If you run venv without it on some Ubuntu/Deb systems you get:
> {code:java}
> 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 {code}
>
> 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)