Skip to content

Revert #37631 and #38497 on HEAD#38516

Merged
Abacn merged 2 commits into
apache:masterfrom
Abacn:revert-37631-mainline
May 15, 2026
Merged

Revert #37631 and #38497 on HEAD#38516
Abacn merged 2 commits into
apache:masterfrom
Abacn:revert-37631-mainline

Conversation

@Abacn
Copy link
Copy Markdown
Contributor

@Abacn Abacn commented May 15, 2026

Please add a meaningful description for your change here

Revert #37631 and #38497 in the release branch

Reason: break validate runner tests in non-Java runners; break internal import


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.

See the Contributor Guide for more tips on how to make review process smoother.

To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md

GitHub Actions Tests Status (on master branch)

Build python source distribution and wheels
Python tests
Java tests
Go tests

See CI.md for more information about GitHub Actions CI or the workflows README to see a list of phrases to trigger workflows.

@gemini-code-assist
Copy link
Copy Markdown
Contributor

Summary of Changes

Hello, I'm Gemini Code Assist1! 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 reverts two previous changes (#37631 and #38497) that introduced regressions in non-Java runners and caused issues with internal imports. The changes involve removing the recently added SchemaCoder support from the model coder registry, simplifying the SdkComponents interface by removing its dependency on PipelineOptions, and cleaning up the CoderTranslatorRegistrar interface. These changes ensure the stability of the release branch.

Highlights

  • Revert of PRs Adds a new coder translator for Java SchemaCoder.  #37631 and Sickbay two failed tests due to new schema coder urn. #38497: Reverted changes related to SchemaCoder support to resolve regressions in non-Java runners and internal import failures.
  • Removal of SchemaCoder Support: Removed SchemaCoder from the model coder registry and cleaned up related translation logic in core SDK components.
  • Refactoring SdkComponents: Simplified the SdkComponents interface by removing the dependency on PipelineOptions.
  • Cleanup of CoderTranslatorRegistrar: Removed unused methods (isKnownCoder, getCoderTranslator, getCoderForUrn) from the CoderTranslatorRegistrar interface and its implementations.
  • Build and Test Updates: Updated test infrastructure and build configurations, including removing test exclusions for PerKeyOrderingTest and cleaning up test files.
New Features

🧠 You can now enable Memory (public preview) to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

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.

Customization

To customize the 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.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counterproductive. You can react with 👍 and 👎 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.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request refactors SdkComponents to remove its dependency on PipelineOptions, simplifies coder translation by removing SchemaCoder, and updates DataflowRunner terminology to v1/v2. Review feedback points out typos in log messages and comments, a potential NullPointerException in CoderTranslation due to a removed null check, and a missing newline in CHANGES.md.

} else {
LOG.warn(
"Using use_deprecated_read in portable runners is runner-dependent. The "
"Using use_depreacted_read in portable runners is runner-dependent. The "
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

There is a typo in the log message: use_depreacted_read should be use_deprecated_read.

Suggested change
"Using use_depreacted_read in portable runners is runner-dependent. The "
"Using use_deprecated_read in portable runners is runner-dependent. The "

Environments.createDockerEnvironment(workerHarnessContainerImageURL);

// The SdkComponents for portable and non-portable job submission must be kept distinct. Both
// The SdkComponents for portable an non-portable job submission must be kept distinct. Both
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

There is a typo in the comment: an should be and.

Suggested change
// The SdkComponents for portable an non-portable job submission must be kept distinct. Both
// The SdkComponents for portable and non-portable job submission must be kept distinct. Both

Comment on lines +1379 to +1380
// Now rewrite things to be as needed for v1 (mutates the pipeline)
// This way the job submitted is valid for v1 and v2, simultaneously
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

Comments should end with a period for better readability and consistency with the rest of the codebase.

Suggested change
// Now rewrite things to be as needed for v1 (mutates the pipeline)
// This way the job submitted is valid for v1 and v2, simultaneously
// Now rewrite things to be as needed for v1 (mutates the pipeline).
// This way the job submitted is valid for v1 and v2, simultaneously.

/**
* Create new {@link SdkComponents} importing all items from provided {@link Components} object.
*
* <p>WARNING: This action might cause some of duplicate items created.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The Javadoc contains a grammatical error: 'some of duplicate items created'. It should be 'some duplicate items to be created'.

Suggested change
* <p>WARNING: This action might cause some of duplicate items created.
* <p>WARNING: This action might cause some duplicate items to be created.

if (translator == null) {
throw new IOException("Unable to find CoderTranslator for known Coder");
}
CoderTranslator translator = getKnownTranslators().get(coder.getClass());
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The explicit null check and descriptive IOException were removed. If a translator is missing for a known coder, this will now result in a NullPointerException during the call to registerComponents. It is safer to keep the check and throw a descriptive exception to aid debugging.

    CoderTranslator translator = getKnownTranslators().get(coder.getClass());
    if (translator == null) {
      throw new IOException("Unable to find CoderTranslator for known Coder: " + coder.getClass());
    }

Comment thread CHANGES.md
## Highlights

- For versions 2.19.0 and older release notes are available on [Apache Beam Blog](https://beam.apache.org/blog/).
- For versions 2.19.0 and older release notes are available on [Apache Beam Blog](https://beam.apache.org/blog/). No newline at end of file
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The file is missing a newline at the end. It is a best practice to end text files with a newline character to ensure compatibility with various Unix tools and to avoid 'No newline at end of file' warnings in diffs.

Suggested change
- For versions 2.19.0 and older release notes are available on [Apache Beam Blog](https://beam.apache.org/blog/).
- For versions 2.19.0 and older release notes are available on [Apache Beam Blog](https://beam.apache.org/blog/).

@github-actions
Copy link
Copy Markdown
Contributor

Checks are failing. Will not request review until checks are succeeding. If you'd like to override that behavior, comment assign set of reviewers

@Abacn
Copy link
Copy Markdown
Contributor Author

Abacn commented May 15, 2026

rrio test failure not related to this change

@Abacn Abacn merged commit 357fd26 into apache:master May 15, 2026
33 of 37 checks passed
@Abacn Abacn deleted the revert-37631-mainline branch May 15, 2026 21:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants