Skip to content

Conversation

@kennknowles
Copy link
Member

Because method overloads are resolved statically, 2.10.0 is compile compatible but not binary compatible with 2.9.0.

This introduces adapters where needed to restore binary compatibility.

Testing will be by hand and one-off as I'm not sure the infrastructure that would be needed to test these automatically.


Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

  • Choose reviewer(s) and mention them in a comment (R: @username).
  • Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
  • If this contribution is large, please file an Apache Individual Contributor License Agreement.

Post-Commit Tests Status (on master branch)

Lang SDK Apex Dataflow Flink Gearpump Samza Spark
Go Build Status --- --- --- --- --- ---
Java Build Status Build Status Build Status Build Status
Build Status
Build Status
Build Status Build Status Build Status
Python Build Status --- Build Status
Build Status
Build Status --- --- ---

See .test-infra/jenkins/README for trigger phrase, status and link of all Jenkins jobs.

@kennknowles kennknowles requested a review from aaltay February 20, 2019 22:43
@kennknowles
Copy link
Member Author

R: @jklukas @aaltay

@jklukas
Copy link
Contributor

jklukas commented Feb 20, 2019

#7160 also changed the signatures of TypeDescriptors.inputOf and .outputOf. Would they also need adapters?

@kennknowles kennknowles force-pushed the MapElements branch 2 times, most recently from 77f6ae5 to 69ea20e Compare February 20, 2019 23:04
@kennknowles
Copy link
Member Author

OK, added the next couple adapters and eliminated use of rawtypes.

@aaltay
Copy link
Member

aaltay commented Feb 21, 2019

Run Java_Examples_Dataflow PreCommit"

@aaltay
Copy link
Member

aaltay commented Feb 21, 2019

There is a compiler warning failing the build: (on Java PreCommit)

15:06:33 > Task :beam-sdks-java-extensions-euphoria:compileJava FAILED
15:06:33 /home/jenkins/jenkins-slave/workspace/beam_PreCommit_Java_Commit/src/sdks/java/extensions/euphoria/src/main/java/org/apache/beam/sdk/extensions/euphoria/core/translate/ReduceByKeyTranslator.java:69: warning: [deprecation] <InputT,OutputT>via(SimpleFunction<InputT,OutputT>) in MapElements has been deprecated
15:06:33 MapElements.via(new KeyValueExtractor<>(keyExtractor, valueExtractor));
15:06:33 ^
15:06:33 where InputT,OutputT are type-variables:
15:06:33 InputT extends Object declared in method <InputT,OutputT>via(SimpleFunction<InputT,OutputT>)
15:06:33 OutputT extends Object declared in method <InputT,OutputT>via(SimpleFunction<InputT,OutputT>)
15:06:33 error: warnings found and -Werror specified
15:06:33 1 error
15:06:33 1 warning

Is this because the Deprecated annotation?

@aaltay
Copy link
Member

aaltay commented Feb 21, 2019

Run Java_Examples_Dataflow PreCommit

@aaltay
Copy link
Member

aaltay commented Feb 21, 2019

@kennknowles
Copy link
Member Author

I should remove the deprecation, because overloading will prefer the more specific class.

@aaltay
Copy link
Member

aaltay commented Feb 21, 2019

I should remove the deprecation, because overloading will prefer the more specific class.

OK. I think we can still update the euphoria code (not in this PR).

Let me know if I can help here.

@kennknowles kennknowles force-pushed the MapElements branch 2 times, most recently from 612a008 to 7284279 Compare February 21, 2019 05:01
@aaltay
Copy link
Member

aaltay commented Feb 21, 2019

The error looks like a flake, re-running the test just in case.

@aaltay
Copy link
Member

aaltay commented Feb 21, 2019

Run Java PreCommit

@aaltay aaltay merged commit 2c89f98 into apache:master Feb 21, 2019
@kennknowles kennknowles deleted the MapElements branch January 4, 2024 20:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants