Skip to content
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

Fix an invalid signature in ByteBuddyDoFnInvokerFactory #33984

Merged
merged 1 commit into from
Feb 13, 2025

Conversation

cushon
Copy link
Contributor

@cushon cushon commented Feb 13, 2025

This code is creating a field with the same type as a method return type. The return type is erased, but calling getGenericSignature() turns the erased type back into a generic type. For methods with type parameters, this results in signatures that are invalid for field declarations, for example
<T:Ljava/lang/Object;>Ljava/lang/Object;Ljava/io/Serializable;. Future versions of bytebuddy reject the invalid signature.

See also raphw/byte-buddy#1771


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.

This code is creating a field with the same type as a method return
type. The return type is erased, but calling `getGenericSignature()`
turns the erased type back into a generic type. For methods with type
parameters, this results in signatures that are invalid for field
declarations, for example
`<T:Ljava/lang/Object;>Ljava/lang/Object;Ljava/io/Serializable;`. Future
versions of bytebuddy reject the invalid signature.

See also raphw/byte-buddy#1771
@github-actions github-actions bot added the java label Feb 13, 2025
Copy link
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
Contributor

Abacn commented Feb 13, 2025

test failures unrelated, merging for now

org.apache.beam.runners.dataflow.worker.windmill.client.grpc.GrpcDirectGetWorkStreamTest > testConsumedWorkItems_itemsSplitAcrossResponses FAILED
    org.junit.runners.model.TestTimedOutException at GrpcDirectGetWorkStreamTest.java:130

org.apache.beam.sdk.io.gcp.bigquery.StorageApiSinkSchemaUpdateIT > testExactlyOnceWithAutoSchemaUpdate[1] FAILED
    java.lang.AssertionError at StorageApiSinkSchemaUpdateIT.java:522

@Abacn Abacn merged commit e651aed into apache:master Feb 13, 2025
19 of 22 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants