-
Notifications
You must be signed in to change notification settings - Fork 4.5k
(BQ Java) Explicitly set coder for multi-partition batch load writes #23602
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
Conversation
|
Run Java Examples_Flink |
1dd4e47 to
2958108
Compare
|
Run Java Examples_Flink |
|
Run Java Examples_Flink |
|
Stopping reviewer notifications for this pull request: review requested by someone other than the bot, ceding control |
|
Run Java PreCommit |
lostluck
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM Thanks!
Would you kindly send me a cherry pick of this to merge into the release branch?
|
(merging after the precommit passes. The examples are in much better shape with this fix, and I acknowledge the new error is new). |
|
Actually, looks like the precommit is done, but github didn't pick up on it. Merging. |
Fixes #23561 (once cherry picked into release-2.42.0)
Single partition writes set a coder
TableDestinationCoderV3here while multi partition writes doesn't set any coder explicitly, so it defaults to a serializableTableDestinationcoder. There is an attempt later to flatten the single and multi write PCollections here, but because the coder types are different, the following error is thrown:org.apache.flink.api.common.InvalidProgramException: Cannot union inputs of different types. Input1=CoderTypeInformation{coder=WindowedValue$FullWindowedValueCoder(TableDestinationCoderV2,GlobalWindow$Coder)}, input2=CoderTypeInformation{coder=WindowedValue$FullWindowedValueCoder(SerializableCoder(org.apache.beam.sdk.io.gcp.bigquery.TableDestination),GlobalWindow$Coder)}