Skip to content

[BEAM-8911] New non-vendored Guava version: 25.1-jre#10318

Merged
kennknowles merged 1 commit intoapache:masterfrom
suztomo:guava_26
Dec 12, 2019
Merged

[BEAM-8911] New non-vendored Guava version: 25.1-jre#10318
kennknowles merged 1 commit intoapache:masterfrom
suztomo:guava_26

Conversation

@suztomo
Copy link
Contributor

@suztomo suztomo commented Dec 6, 2019

https://issues.apache.org/jira/browse/BEAM-8911

Now unused non-vendored Guava dependencies are removed (BEAM-8747) and Hadoop client version is upgraded to 2.8.5 from 2.7 (BEAM-8822). It's time to upgrade Guava.

New Guava version: 25.1-jre

CharMatcher.DIGIT, used by org.apache.cassandra.io.sstable.format.SSTableFormat, is removed since Guava 26.0. So this PR is setting Guava 25.1:

https://guava.dev/releases/25.1-jre/api/docs/com/google/common/base/CharMatcher.html
https://guava.dev/releases/26.0-jre/api/docs/com/google/common/base/CharMatcher.html

Guava has 2 variations "-jre" for Java8 (stream/lambda support) and "-android" for Java7. Gcsio:1.9.16 needs ImmutableSet.toImmutableSet() which is available in Guava "-jre". detail

So this PR is setting Guava version "25.1-jre".

Which modules use non-vendored Guava?

suztomo@suxtomo24:~/beam6$ find . -name build.gradle | xargs grep library.java.guava
./sdks/java/core/build.gradle:  shadowTest library.java.guava_testlib
./sdks/java/io/google-cloud-platform/build.gradle:  compile library.java.guava
./sdks/java/io/kinesis/build.gradle:  compile library.java.guava
./sdks/java/io/kinesis/build.gradle:  testCompile library.java.guava_testlib
./sdks/java/extensions/sql/zetasql/build.gradle:  compile library.java.guava

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.

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

Post-Commit Tests Status (on master branch)

Lang SDK Apex Dataflow Flink Gearpump Samza Spark
Go Build Status --- --- Build Status --- --- Build Status
Java Build Status Build Status 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
--- Build Status
Build Status
Build Status
Build Status
--- --- Build Status
XLang --- --- --- Build Status --- --- ---

Pre-Commit Tests Status (on master branch)

--- Java Python Go Website
Non-portable Build Status Build Status
Build Status
Build Status Build Status
Portable --- Build Status --- ---

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

def google_cloud_spanner_version = "1.6.0"
def grpc_version = "1.17.1"
def guava_version = "20.0"
def guava_version = "25.1-jre"
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Cassandra-all version 3 does not work with Guava >= 26 (detail)

@suztomo
Copy link
Contributor Author

suztomo commented Dec 7, 2019

java.lang.RuntimeException: Workflow failed. Causes: Project apache-beam-testing has insufficient quota(s) to execute this workflow with 1 instances in region us-central1. Quota summary (required/available): 1/11893 instances, 1/0 CPUs, 250/297535 disk GB, 0/3647 SSD disk GB, 1/68 instance groups, 1/69 managed instance groups, 1/310 instance templates, 1/599 in-use IP addresses.

https://builds.apache.org/job/beam_PostCommit_Java_PR/265/testReport/junit/org.apache.beam.examples.complete/TopWikipediaSessionsIT/testE2ETopWikiPages/

@suztomo
Copy link
Contributor Author

suztomo commented Dec 8, 2019

Run Java PostCommit

@suztomo
Copy link
Contributor Author

suztomo commented Dec 9, 2019

Run Python PreCommit

@suztomo
Copy link
Contributor Author

suztomo commented Dec 9, 2019

R: @kennknowles, @iemejia

Java SDK Post Commit Tests succeeded.

@iemejia
Copy link
Member

iemejia commented Dec 9, 2019

Run Python PreCommit

@lgajowy
Copy link
Contributor

lgajowy commented Dec 9, 2019

Run Java HadoopFormatIO Performance Test

@lgajowy
Copy link
Contributor

lgajowy commented Dec 9, 2019

Run BigQueryIO Streaming Performance Test Java

@iemejia
Copy link
Member

iemejia commented Dec 9, 2019

Run Dataflow ValidatesRunner

@iemejia
Copy link
Member

iemejia commented Dec 9, 2019

Run Spark ValidatesRunner

@suztomo
Copy link
Contributor Author

suztomo commented Dec 9, 2019

Run BigQueryIO Streaming Performance Test Java

@suztomo
Copy link
Contributor Author

suztomo commented Dec 9, 2019

Run Dataflow ValidatesRunner

@suztomo
Copy link
Contributor Author

suztomo commented Dec 9, 2019

10:11:23     SEVERE: 2019-12-09T15:11:22.086Z: An OutOfMemoryException occurred. Consider specifying higher memory instances in PipelineOptions.
10:11:23     java.lang.RuntimeException: org.apache.beam.vendor.guava.v26_0_jre.com.google.common.util.concurrent.ExecutionError: java.lang.OutOfMemoryError: Java heap space
10:11:23     	at org.apache.beam.runners.dataflow.worker.util.common.worker.BatchingShuffleEntryReader$ShuffleReadIterator.fillEntries(BatchingShuffleEntryReader.java:132)

https://builds.apache.org/job/beam_BiqQueryIO_Streaming_Performance_Test_Java/235/console

It's very red.

image

@suztomo
Copy link
Contributor Author

suztomo commented Dec 9, 2019

Run BigQueryIO Streaming Performance Test Java

@suztomo
Copy link
Contributor Author

suztomo commented Dec 9, 2019

Run Dataflow ValidatesRunner

@suztomo
Copy link
Contributor Author

suztomo commented Dec 9, 2019

Run BigQueryIO Streaming Performance Test Java

@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Run Dataflow ValidatesRunner

2 similar comments
@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Run Dataflow ValidatesRunner

@lgajowy
Copy link
Contributor

lgajowy commented Dec 10, 2019

Run Dataflow ValidatesRunner

@kennknowles kennknowles self-requested a review December 10, 2019 20:23
Copy link
Member

@kennknowles kennknowles left a comment

Choose a reason for hiding this comment

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

Once green this seems g2g. The Java postcommits and unit tests of the IOs should be the ones most needed here.

@kennknowles
Copy link
Member

run sql postcommit

@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Dataflow Runner Nexmark Tests

@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Direct Runner Nexmark Tests

@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Flink Runner Nexmark Tests

@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Spark Runner Nexmark Tests

@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Run Java Flink PortableValidatesRunner Batch

@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Run Java Flink PortableValidatesRunner Streaming

@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Run Java Spark PortableValidatesRunner Batch

@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Run Java PortabilityApi PostCommit

@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Run Java examples on Dataflow with Java 11

@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Run Java Portability examples on Dataflow with Java 11

@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Run Apex ValidatesRunner

@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Run Flink ValidatesRunner

@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Run Gearpump ValidatesRunner

@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Run Dataflow PortabilityApi ValidatesRunner

@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Run Samza ValidatesRunner

@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Run Spark ValidatesRunner

@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Dataflow Runner Nexmark Tests

@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Run Dataflow ValidatesRunner

@suztomo
Copy link
Contributor Author

suztomo commented Dec 10, 2019

Dataflow Runner Nexmark Tests

@suztomo
Copy link
Contributor Author

suztomo commented Dec 11, 2019

@kennknowles Now they're green; I see some of them didn't trigger builds. Would you merge this?

@suztomo
Copy link
Contributor Author

suztomo commented Dec 12, 2019

R: @lgajowy
Found your name in BEAM-5559).

@kennknowles kennknowles merged commit ab9e8f0 into apache:master Dec 12, 2019
@suztomo suztomo deleted the guava_26 branch December 12, 2019 23:19
@suztomo
Copy link
Contributor Author

suztomo commented Dec 12, 2019

Kenn, thanks!

@lgajowy
Copy link
Contributor

lgajowy commented Dec 13, 2019

Great that all the checks passed. Thank you for doing this @suztomo :)

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.

4 participants