[
https://issues.apache.org/jira/browse/SPARK-56477?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Yicong Huang updated SPARK-56477:
---------------------------------
Description:
As part of the PySpark eval type refactoring effort (SPARK-55388), the
SQL_COGROUPED_MAP_ARROW_UDF processing logic should be made self-contained
within read_udfs() in worker.py.
Currently the logic is spread across three locations:
- wrap_cogrouped_map_arrow_udf() for verification and UDF dispatch
- CogroupArrowUDFSerializer.dump_stream() (inherited) for column reordering and
struct wrapping
- The mapper block in read_udfs() for key/value extraction from batches
The refactoring should:
- Use ArrowStreamCoGroupSerializer as the pure I/O serializer (dual-stream
cogroup reading)
- Move all UDF dispatch, verification, column reordering, schema enforcement,
and struct wrapping into an inline handler in read_udfs()
- Delete wrap_cogrouped_map_arrow_udf and the mapper block
- Move extract_key_value_indexes earlier in read_udfs() so the new handler can
use it
> Refactor SQL_COGROUPED_MAP_ARROW_UDF to be self-contained in read_udfs
> ----------------------------------------------------------------------
>
> Key: SPARK-56477
> URL: https://issues.apache.org/jira/browse/SPARK-56477
> Project: Spark
> Issue Type: Sub-task
> Components: PySpark
> Affects Versions: 4.2.0
> Reporter: Yicong Huang
> Priority: Major
>
> As part of the PySpark eval type refactoring effort (SPARK-55388), the
> SQL_COGROUPED_MAP_ARROW_UDF processing logic should be made self-contained
> within read_udfs() in worker.py.
> Currently the logic is spread across three locations:
> - wrap_cogrouped_map_arrow_udf() for verification and UDF dispatch
> - CogroupArrowUDFSerializer.dump_stream() (inherited) for column reordering
> and struct wrapping
> - The mapper block in read_udfs() for key/value extraction from batches
> The refactoring should:
> - Use ArrowStreamCoGroupSerializer as the pure I/O serializer (dual-stream
> cogroup reading)
> - Move all UDF dispatch, verification, column reordering, schema enforcement,
> and struct wrapping into an inline handler in read_udfs()
> - Delete wrap_cogrouped_map_arrow_udf and the mapper block
> - Move extract_key_value_indexes earlier in read_udfs() so the new handler
> can use it
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]