You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@beam.apache.org by "baeminbo (via GitHub)" <gi...@apache.org> on 2025/09/26 08:12:55 UTC
[PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
baeminbo opened a new pull request, #36295:
URL: https://github.com/apache/beam/pull/36295
To prevent potential serialization issues, this change adds the `@SchemaFieldNumber` annotation to KafkaIO classes that use `DefaultSchema`. This guarantees a deterministic field order, which is not ensured when schemas are generated with `AutoValueSchema`, `JavaBeanSchema`, or `JavaFieldSchema`.
related to: #30276, b/443606305#comment29
------------------------
Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:
- [ ] Mention the appropriate issue in your description (for example: `addresses #123`), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment `fixes #<ISSUE NUMBER>` instead.
- [ ] Update `CHANGES.md` with noteworthy changes.
- [ ] If this contribution is large, please file an Apache [Individual Contributor License Agreement](https://www.apache.org/licenses/icla.pdf).
See the [Contributor Guide](https://beam.apache.org/contribute) for more tips on [how to make review process smoother](https://github.com/apache/beam/blob/master/CONTRIBUTING.md#make-the-reviewers-job-easier).
To check the build health, please visit [https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md](https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md)
GitHub Actions Tests Status (on master branch)
------------------------------------------------------------------------------------------------
[](https://github.com/apache/beam/actions?query=workflow%3A%22Build+python+source+distribution+and+wheels%22+branch%3Amaster+event%3Aschedule)
[](https://github.com/apache/beam/actions?query=workflow%3A%22Python+Tests%22+branch%3Amaster+event%3Aschedule)
[](https://github.com/apache/beam/actions?query=workflow%3A%22Java+Tests%22+branch%3Amaster+event%3Aschedule)
[](https://github.com/apache/beam/actions?query=workflow%3A%22Go+tests%22+branch%3Amaster+event%3Aschedule)
See [CI.md](https://github.com/apache/beam/blob/master/CI.md) for more information about GitHub Actions CI or the [workflows README](https://github.com/apache/beam/blob/master/.github/workflows/README.md) to see a list of phrases to trigger workflows.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #36295:
URL: https://github.com/apache/beam/pull/36295#issuecomment-3345249284
Assigning reviewers:
R: @ahmedabu98 for label java.
R: @fozzie15 for label kafka.
Note: If you would like to opt out of this review, comment `assign to next reviewer`.
Available commands:
- `stop reviewer notifications` - opt out of the automated review tooling
- `remind me after tests pass` - tag the comment author after tests pass
- `waiting on author` - shift the attention set back to the author (any comment or push by the author will return the attention set to the reviewers)
The PR bot will only process comments in the main thread (not review comments).
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #36295:
URL: https://github.com/apache/beam/pull/36295#issuecomment-3381241375
Assigning new set of reviewers because Pr has gone too long without review. If you would like to opt out of this review, comment `assign to next reviewer`:
R: @Abacn for label java.
R: @johnjcasey for label kafka.
Available commands:
- `stop reviewer notifications` - opt out of the automated review tooling
- `remind me after tests pass` - tag the comment author after tests pass
- `waiting on author` - shift the attention set back to the author (any comment or push by the author will return the attention set to the reviewers)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "baeminbo (via GitHub)" <gi...@apache.org>.
baeminbo commented on PR #36295:
URL: https://github.com/apache/beam/pull/36295#issuecomment-3345129087
Run Java PreCommit
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "chamikaramj (via GitHub)" <gi...@apache.org>.
chamikaramj commented on PR #36295:
URL: https://github.com/apache/beam/pull/36295#issuecomment-3398410347
Seems like this also broke Managed I/O for Kafka (Google internal test)
Failed to upgrade using the expansion service manager: INTERNAL: Expansion request failed: java.lang.IllegalStateException: Expected field number 3 for field + redistributeNumKeys instead got 2"
Can we revert ?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "baeminbo (via GitHub)" <gi...@apache.org>.
baeminbo commented on PR #36295:
URL: https://github.com/apache/beam/pull/36295#issuecomment-3400698914
The broken `PythonUdingJavaSQL` tests were fixed by #36489, which sets `SchemaFieldNumber` for the fields in `KafkaReadSchemaTransformConfiguration` missed in this PR.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "Abacn (via GitHub)" <gi...@apache.org>.
Abacn commented on PR #36295:
URL: https://github.com/apache/beam/pull/36295#issuecomment-3397890611
This breaks PythonUdingJavaSQL tests:
https://github.com/apache/beam/actions/workflows/beam_PostCommit_XVR_PythonUsingJavaSQL_Dataflow.yml?query=event%3Aschedule
test_streaming_taxifare_prediction_yaml (apache_beam.yaml.examples.testing.examples_test.MLTest) failed
test_map_to_fields_with_java_deps_yaml (apache_beam.yaml.examples.testing.examples_test.ElementWiseTest) failed
```
ValueError: Error applying transform "WriteKafka" at line 131: java.lang.UnsupportedOperationException: Unknown urn: beam:schematransform:org.apache.beam:yaml:map_to_fields-java:v1
at org.apache.beam.sdk.expansion.service.ExpansionService.expand(ExpansionService.java:648)
at org.apache.beam.sdk.expansion.service.ExpansionService.expand(ExpansionService.java:758)
at org.apache.beam.model.expansion.v1.ExpansionServiceGrpc$MethodHandlers.invoke(ExpansionServiceGrpc.java:306)
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "Abacn (via GitHub)" <gi...@apache.org>.
Abacn commented on PR #36295:
URL: https://github.com/apache/beam/pull/36295#issuecomment-3381772704
@tomstepp @johnjcasey could take a look?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #36295:
URL: https://github.com/apache/beam/pull/36295#issuecomment-3371351414
Reminder, please take a look at this pr: @ahmedabu98 @fozzie15
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "baeminbo (via GitHub)" <gi...@apache.org>.
baeminbo commented on PR #36295:
URL: https://github.com/apache/beam/pull/36295#issuecomment-3383567328
> LGTM in general. Assuming pipelines are update compatible across this change? @baeminbo
Yes, right. Currently, this issue can randomly corrupt the states persisted in storage with `SchemaCoder` at job update, thus the replacement job will encounter unrecoverable problems in deserializing the states from the original job.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "tomstepp (via GitHub)" <gi...@apache.org>.
tomstepp commented on PR #36295:
URL: https://github.com/apache/beam/pull/36295#issuecomment-3391259091
@johnjcasey or @an2x would you have any additional feedback?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "chamikaramj (via GitHub)" <gi...@apache.org>.
chamikaramj commented on PR #36295:
URL: https://github.com/apache/beam/pull/36295#issuecomment-3398548776
Full stack-trace:
```
INFO 2025-10-13T15:36:48.915770337Z E1013 15:36:48.792550 14 managed_transforms_worker_main.cc:272] Failed to upgrade using the expansion service manager: INTERNAL: Expansion request failed: java.lang.IllegalStateException: Expected field number 3 for field + redistributeNumKeys instead got 2
INFO 2025-10-13T15:36:48.915774910Z at org.apache.beam.vendor.guava.v32_1_2_jre.com.google.common.base.Preconditions.checkState(Preconditions.java:512)
INFO 2025-10-13T15:36:48.915782126Z at org.apache.beam.sdk.schemas.AutoValueSchema.validateFieldNumbers(AutoValueSchema.java:80)
INFO 2025-10-13T15:36:48.915786418Z at org.apache.beam.sdk.schemas.AutoValueSchema.access$000(AutoValueSchema.java:38)
INFO 2025-10-13T15:36:48.915790340Z at org.apache.beam.sdk.schemas.AutoValueSchema$AbstractGetterTypeSupplier.get(AutoValueSchema.java:68)
INFO 2025-10-13T15:36:48.915795972Z at org.apache.beam.sdk.schemas.utils.StaticSchemaInference.schemaFromClass(StaticSchemaInference.java:107)
INFO 2025-10-13T15:36:48.915802211Z at org.apache.beam.sdk.schemas.utils.StaticSchemaInference.schemaFromClass(StaticSchemaInference.java:89)
INFO 2025-10-13T15:36:48.915806181Z at org.apache.beam.sdk.schemas.utils.JavaBeanUtils.schemaFromJavaBeanClass(JavaBeanUtils.java:79)
INFO 2025-10-13T15:36:48.915810433Z at org.apache.beam.sdk.schemas.AutoValueSchema.schemaFor(AutoValueSchema.java:146)
INFO 2025-10-13T15:36:48.915815235Z at org.apache.beam.sdk.schemas.annotations.DefaultSchema$DefaultSchemaProvider.schemaFor(DefaultSchema.java:148)
INFO 2025-10-13T15:36:48.915837462Z at org.apache.beam.sdk.schemas.SchemaRegistry.lambda$getSchema$0(SchemaRegistry.java:245)
INFO 2025-10-13T15:36:48.915842880Z at org.apache.beam.sdk.schemas.SchemaRegistry.getProviderResult(SchemaRegistry.java:331)
INFO 2025-10-13T15:36:48.915847526Z at org.apache.beam.sdk.schemas.SchemaRegistry.getSchema(SchemaRegistry.java:245)
INFO 2025-10-13T15:36:48.915853469Z at org.apache.beam.sdk.schemas.SchemaRegistry.getSchema(SchemaRegistry.java:233)
INFO 2025-10-13T15:36:48.915857238Z at org.apache.beam.sdk.schemas.transforms.TypedSchemaTransformProvider.configurationSchema(TypedSchemaTransformProvider.java:96)
INFO 2025-10-13T15:36:48.915860690Z at org.apache.beam.sdk.managed.ManagedSchemaTransformProvider$ManagedSchemaTransform.<init>(ManagedSchemaTransformProvider.java:163)
INFO 2025-10-13T15:36:48.915865414Z at org.apache.beam.sdk.managed.ManagedSchemaTransformProvider.from(ManagedSchemaTransformProvider.java:152)
INFO 2025-10-13T15:36:48.915869461Z at org.apache.beam.sdk.managed.ManagedSchemaTransformProvider.from(ManagedSchemaTransformProvider.java:57)
INFO 2025-10-13T15:36:48.915873575Z at org.apache.beam.sdk.schemas.transforms.TypedSchemaTransformProvider.from(TypedSchemaTransformProvider.java:111)
INFO 2025-10-13T15:36:48.915878155Z at org.apache.beam.sdk.expansion.service.ExpansionServiceSchemaTransformProvider.getTransform(ExpansionServiceSchemaTransformProvider.java:137)
INFO 2025-10-13T15:36:48.915882745Z at org.apache.beam.sdk.expansion.service.ExpansionService$TransformProviderForPayloadTranslator.getTransform(ExpansionService.java:263)
INFO 2025-10-13T15:36:48.915888115Z at org.apache.beam.sdk.expansion.service.TransformProvider.apply(TransformProvider.java:121)
INFO 2025-10-13T15:36:48.915891688Z at org.apache.beam.sdk.expansion.service.ExpansionService.expand(ExpansionService.java:657)
INFO 2025-10-13T15:36:48.915896062Z at org.apache.beam.sdk.expansion.service.ExpansionService.expand(ExpansionService.java:758)
INFO 2025-10-13T15:36:48.915914630Z at org.apache.beam.model.expansion.v1.ExpansionServiceGrpc$MethodHandlers.invoke(ExpansionServiceGrpc.java:306)
INFO 2025-10-13T15:36:48.915951892Z at org.apache.beam.vendor.grpc.v1p69p0.io.grpc.stub.ServerCalls$UnaryServerCallHandler$UnaryServerCallListener.onHalfClose(ServerCalls.java:182)
INFO 2025-10-13T15:36:48.915960032Z at org.apache.beam.vendor.grpc.v1p69p0.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.halfClosed(ServerCallImpl.java:356)
INFO 2025-10-13T15:36:48.915964459Z at org.apache.beam.vendor.grpc.v1p69p0.io.grpc.internal.ServerImpl$JumpToApplicationThreadServerStreamListener$1HalfClosed.runInContext(ServerImpl.java:861)
INFO 2025-10-13T15:36:48.915968683Z at org.apache.beam.vendor.grpc.v1p69p0.io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37)
INFO 2025-10-13T15:36:48.915972398Z at org.apache.beam.vendor.grpc.v1p69p0.io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133)
INFO 2025-10-13T15:36:48.915976930Z at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
INFO 2025-10-13T15:36:48.915998564Z at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
INFO 2025-10-13T15:36:48.916002886Z at java.base/java.lang.Thread.run(Thread.java:829)
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "reuvenlax (via GitHub)" <gi...@apache.org>.
reuvenlax commented on PR #36295:
URL: https://github.com/apache/beam/pull/36295#issuecomment-3398510434
Do we know the Managed Kafka test expects specific field numbers? These
classes already had unstable field numbers that were liable to change -
this PR fixed that.
On Mon, Oct 13, 2025 at 10:18 AM Chamikara Jayalath <
***@***.***> wrote:
> *chamikaramj* left a comment (apache/beam#36295)
> <https://github.com/apache/beam/pull/36295#issuecomment-3398410347>
>
> Seems like this also broke Managed I/O for Kafka (Google internal test)
>
> Failed to upgrade using the expansion service manager: INTERNAL: Expansion
> request failed: java.lang.IllegalStateException: Expected field number 3
> for field + redistributeNumKeys instead got 2"
>
> Can we revert ?
>
> —
> Reply to this email directly, view it on GitHub
> <https://github.com/apache/beam/pull/36295#issuecomment-3398410347>, or
> unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AFAYJVJICPBLS72E5DH5LPT3XPNFDAVCNFSM6AAAAACHSAZFNGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTGOJYGQYTAMZUG4>
> .
> You are receiving this because you modified the open/close state.Message
> ID: ***@***.***>
>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "chamikaramj (via GitHub)" <gi...@apache.org>.
chamikaramj commented on PR #36295:
URL: https://github.com/apache/beam/pull/36295#issuecomment-3398880762
Created a release blocker https://github.com/apache/beam/issues/36496 for tracking.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "reuvenlax (via GitHub)" <gi...@apache.org>.
reuvenlax commented on PR #36295:
URL: https://github.com/apache/beam/pull/36295#issuecomment-3391651758
LGTM
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #36295:
URL: https://github.com/apache/beam/pull/36295#issuecomment-3338047167
Checks are failing. Will not request review until checks are succeeding. If you'd like to override that behavior, comment `assign set of reviewers`
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "tomstepp (via GitHub)" <gi...@apache.org>.
tomstepp commented on PR #36295:
URL: https://github.com/apache/beam/pull/36295#issuecomment-3390892865
To clarify, it sounds like this does fix updates where the original pipeline includes this change. But I was not sure if it works with original pipeline on an SDK version before this change upgrading to newer SDK version with this change. Would the original order be incompatible with the new enforced order?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "chamikaramj (via GitHub)" <gi...@apache.org>.
chamikaramj commented on PR #36295:
URL: https://github.com/apache/beam/pull/36295#issuecomment-3398604895
BTW we also sort fields when performing the schema-transform expansion: https://github.com/apache/beam/blob/1c6f779bdf2784860296bac2ad92c415e342d1f5/sdks/java/io/kafka/src/main/java/org/apache/beam/sdk/io/kafka/KafkaReadSchemaTransformProvider.java#L155
cc: @ahmedabu98
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "gemini-code-assist[bot] (via GitHub)" <gi...@apache.org>.
gemini-code-assist[bot] commented on PR #36295:
URL: https://github.com/apache/beam/pull/36295#issuecomment-3337289719
## Summary of Changes
Hello @baeminbo, I'm Gemini Code Assist[^1]! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!
This pull request enhances the robustness of Apache Beam's KafkaIO component by ensuring that schemas generated for its internal classes maintain a deterministic field order. By explicitly defining the field numbering through annotations, the change mitigates potential serialization inconsistencies and improves the reliability of data processing with KafkaIO. Additionally, new tests have been added to validate these schema generations.
### Highlights
* **Deterministic Schema Field Order**: Introduced `@SchemaFieldNumber` annotations to various KafkaIO-related classes (`ErrorHandling`, `KafkaIO.KafkaHeader`, `KafkaIO.ByteArrayKafkaRecord`, `KafkaReadSchemaTransformConfiguration`, `KafkaSourceDescriptor`, `KafkaWriteSchemaTransformConfiguration`) to ensure a consistent field order when schemas are generated using `DefaultSchema`. This addresses potential serialization issues that can arise from non-deterministic field ordering in `AutoValueSchema`, `JavaBeanSchema`, or `JavaFieldSchema`.
* **Schema Verification Tests**: Added new unit tests (`testByteArrayKafkaRecordSchema`, `testKafkaSourceDescriptorSchema`, `testKafkaHeaderSchema`, `testKafkaReadSchemaTransformConfigurationSchema`, `testKafkaWriteSchemaTransformConfigurationSchema`) to explicitly verify the correctness and deterministic nature of the generated schemas for the affected KafkaIO classes.
<details>
<summary><b>Using Gemini Code Assist</b></summary>
<br>
The full guide for Gemini Code Assist can be found on our [documentation page](https://developers.google.com/gemini-code-assist/docs/review-github-code), here are some quick tips.
<b>Invoking Gemini</b>
You can request assistance from Gemini at any point by creating a comment using either `/gemini <command>` or `@gemini-code-assist <command>`. Below is a summary of the supported commands on the current page.
Feature | Command | Description
--- | --- | ---
Code Review | `/gemini review` | Performs a code review for the current pull request in its current state.
Pull Request Summary | `/gemini summary` | Provides a summary of the current pull request in its current state.
Comment | @gemini-code-assist | Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help | `/gemini help` | Displays a list of available commands.
<b>Customization</b>
To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a `.gemini/` folder in the base of the repository. Detailed instructions can be found [here](https://developers.google.com/gemini-code-assist/docs/customize-gemini-behavior-github).
<b>Limitations & Feedback</b>
Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with :thumbsup: and :thumbsdown: on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up [here](https://google.qualtrics.com/jfe/form/SV_2cyuGuTWsEw84yG).
<b>You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the [Gemini Code Assist IDE Extension](https://cloud.google.com/products/gemini/code-assist).</b>
</details>
[^1]: Review the [Privacy Notices](https://policies.google.com/privacy), [Generative AI Prohibited Use Policy](https://policies.google.com/terms/generative-ai/use-policy), [Terms of Service](https://policies.google.com/terms), and learn how to configure Gemini Code Assist in GitHub [here](https://developers.google.com/gemini-code-assist/docs/customize-gemini-behavior-github). Gemini can make mistakes, so double check it and [use code with caution](https://support.google.com/legal/answer/13505487).
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "tomstepp (via GitHub)" <gi...@apache.org>.
tomstepp commented on PR #36295:
URL: https://github.com/apache/beam/pull/36295#issuecomment-3383409954
LGTM in general. Assuming pipelines are update compatible across this change? @baeminbo
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "reuvenlax (via GitHub)" <gi...@apache.org>.
reuvenlax merged PR #36295:
URL: https://github.com/apache/beam/pull/36295
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Enforce deterministic field order in Schema generated from KafkaIO classes. [beam]
Posted by "chamikaramj (via GitHub)" <gi...@apache.org>.
chamikaramj commented on PR #36295:
URL: https://github.com/apache/beam/pull/36295#issuecomment-3398542372
Managed I/O uses a Beam construction Row (shema-aware transform) generated from old Beam versions to upgrade Kafka to newer Beam versions. So my suspicion is that that Row is now incompatible with the new Beam Kafka I/O version so we cannot upgrade. That test has been very stable historically in my experience (over last 10 Beam versions).
May be we can add a guard against old Beam versions using the updateCompatibilityBeamVersion option [1] ? (which is always set for Managed I/O)
https://github.com/apache/beam/blob/1c6f779bdf2784860296bac2ad92c415e342d1f5/sdks/java/core/src/main/java/org/apache/beam/sdk/options/StreamingOptions.java#L45
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: github-unsubscribe@beam.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org