Class ProcessPythonEnvironmentManager

java.lang.Object
org.apache.flink.python.env.AbstractPythonEnvironmentManager
org.apache.flink.python.env.process.ProcessPythonEnvironmentManager
All Implemented Interfaces:
AutoCloseable, PythonEnvironmentManager

@Internal public final class ProcessPythonEnvironmentManager extends AbstractPythonEnvironmentManager
The ProcessPythonEnvironmentManager is used to prepare the working dir of python UDF worker and create ProcessPythonEnvironment object of Beam Fn API. It's used when the python function runner is configured to run python UDF in process mode.
  • Constructor Details

    • ProcessPythonEnvironmentManager

      public ProcessPythonEnvironmentManager(PythonDependencyInfo dependencyInfo, String[] tmpDirectories, Map<String,String> systemEnv, org.apache.flink.api.common.JobID jobID)
  • Method Details

    • createEnvironment

      public PythonEnvironment createEnvironment() throws Exception
      Description copied from interface: PythonEnvironmentManager
      Creates the PythonEnvironment object used to execute Python functions.
      Returns:
      The PythonEnvironment object which represents the environment(embedded thread, process, docker, etc) the python worker would run in.
      Throws:
      Exception
    • createRetrievalToken

      public String createRetrievalToken() throws IOException
      Returns an empty RetrievalToken because no files will be transmit via ArtifactService in process mode.
      Returns:
      The path of empty RetrievalToken.
      Throws:
      IOException
    • getBootLog

      public String getBootLog() throws Exception
      Returns the boot log of the Python Environment.
      Throws:
      Exception