Hyukjin Kwon created SPARK-57948:
------------------------------------

             Summary: Fix pipelined Python UDF data transfer over Unix domain 
sockets
                 Key: SPARK-57948
                 URL: https://issues.apache.org/jira/browse/SPARK-57948
             Project: Spark
          Issue Type: Bug
          Components: PySpark
    Affects Versions: 5.0.0
            Reporter: Hyukjin Kwon


SPARK-56642 added pipelined JVM->Python UDF data transfer via 
BasePythonRunner.createPipelinedDataIn, which reads the worker through the 
legacy socket API (worker.channel.socket().setSoTimeout / getInputStream). For 
a Unix domain SocketChannel, SocketChannel.socket() throws 
java.lang.UnsupportedOperationException, so with 
spark.python.unix.domain.socket.enabled=true and 
spark.python.udf.pipelined.enabled=true every pipelined Arrow/Python UDF fails. 
This breaks the scheduled Build / Unix Domain Socket (build_uds) master lane. 
Fix: in UDS mode read from the channel via Channels.newInputStream and skip the 
SO_TIMEOUT-based idle timeout, matching the existing sync-mode UDS handling in 
PythonRunner.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to