apache / apache/beam

Add support for remaining data types in python RowCoder

Open
#19,815 0 comments 0 reactions 0 assignees View on GitHub
core cross-language new feature P2 python
Dominant language
Java
Stars
8.7k
Forks
4.7k
Avg merge
1d 20h
Merged PRs (30d)
196

Description

In the initial [python RowCoder implementation](https://github.com/apache/beam/pull/9188) we only added support for the data types that already had coders in the Python SDK. We should add support for the remaining data types that are not currently supported:

* INT8 (ByteCoder in Java)
* INT16 (BigEndianShortCoder in Java)
* FLOAT (FloatCoder in Java) (Note: doubles are supported, this is specifically for single-precision)
* ~~BOOLEAN (standard beam:coder:bool:v1, BooleanCoder in Java)~~
* ~~BYTES (standard beam:coder:bytes:v1, ByteArrayCoder in Java)~~
* ~~Map (MapCoder in Java)~~

We might consider making those coders standard so they can be tested independently from RowCoder in standard_coders.yaml. Or, if we don't do that we should probably add a more robust testing framework for RowCoder itself, because it will be challenging to test all of these types as part of the RowCoder tests in standard_coders.yaml.

Imported from Jira [BEAM-7996](https://issues.apache.org/jira/browse/BEAM-7996). Original Jira may contain additional context.
Reported by: bhulette.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.