-
Notifications
You must be signed in to change notification settings - Fork 4.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug]: Reject illformed GBK Coders #21935
Comments
I'd suggest to initiate a discussion on dev@beam.apache.org for wider audience. |
I think this is probably P2 only because most users are not going in and manually overriding coders for primitive operations. Totally agree with the issue though. |
This also affects the python SDK and appears to be much easier to do there with type hints. |
…n validation within Beam Java SDK.
…dation within Beam Java SDK. (#22702)
…n validation within Beam Java SDK. (apache#22702)
Recent changes on java SDK for coder validation are affecting scio: spotify/scio#4549 In scio, we wrap coders into a thin layer able to reference user code in the exception stack trace upon failure. |
Ah, interesting. The reason for it is that a runner needs to be able to understand the format in order to handle the element for GBK and state operations, and is expected to output from GBK in a standard format. Is there a way to have the wrapper in the Java layer but move the check to the portability layer perhaps? |
The error seen in SCIO was:
It seems as though there is logic already in SCIO to handle the case where the input/output is a KvCoder and is not wrapped with a MaterializedCoder. I suggested on the SCIO issue that the logic be extended for the value coder on the output PCollection to wrap the Iterable. |
What happened?
The pipeline above exemplifies how it is, at the moment, acceptable to author pipelines with opaque input/output GBK coders whose semantics clearly violate that of Beam's programming model.
Pipelines of this kind should be rejected by SDKs during pipeline creation time itself.
Issue Priority
Priority: 1
Issue Component
Component: sdk-java-core
The text was updated successfully, but these errors were encountered: