beam icon indicating copy to clipboard operation
beam copied to clipboard

[Task]: Deprecate Java8

Open Abacn opened this issue 1 year ago • 1 comments

What needs to happen?

This should be done after #31677

Require Build Beam with Java11+. Therefore enable to use newer gradle plugins that already dropped Java8 support. The released Beam artifact should still keep Java8 compatibility.

Issue Priority

Priority: 2 (default / most normal work should be filed as P2)

Issue Components

  • [ ] Component: Python SDK
  • [X] Component: Java SDK
  • [ ] Component: Go SDK
  • [ ] Component: Typescript SDK
  • [ ] Component: IO connector
  • [ ] Component: Beam YAML
  • [ ] Component: Beam examples
  • [ ] Component: Beam playground
  • [ ] Component: Beam katas
  • [ ] Component: Website
  • [ ] Component: Spark Runner
  • [ ] Component: Flink Runner
  • [ ] Component: Samza Runner
  • [ ] Component: Twister2 Runner
  • [ ] Component: Hazelcast Jet Runner
  • [ ] Component: Google Cloud Dataflow Runner

Abacn avatar Jun 24 '24 16:06 Abacn

Sent a discussion on beam dev: https://lists.apache.org/thread/w5lf2tg1nlk77so2p39cqphr1gqbh72s

Abacn avatar Jun 24 '24 16:06 Abacn

#31896 : gcs-connector 3 dropped Java 8 support

#32551 : com.pswidersk.terraform-plugin 1.1.1 dropped Java8 support

#34980 : org.apache.avro:avro 1.12.0 dropped Java8 support - this is an important one

Abacn avatar Jul 24 '24 16:07 Abacn

This comment tracks current blockers (some test has to run on Java8):

  • #32208 Java Samza runner tests failing on Java11
  • #32207 SparkVersionTest 3.4.0+ fails on Java11
  • #32189 Tests involve hive-exec has to run on Java8

Abacn avatar Sep 11 '24 20:09 Abacn

Hi @Abacn, I was wondering if there was any update on dropping java 8! I'm interested in using gcs-connector 3.x with Beam.

clairemcginty avatar Dec 09 '24 15:12 clairemcginty

Hi clairemcginty@ I raised this to Beam dev list earlier: https://lists.apache.org/thread/w5lf2tg1nlk77so2p39cqphr1gqbh72s and the feedback is that it's too early to drop Java 8 support at the moment. However Beam already support Java11,17,21 in its most component. If you want to use gcs-connector 3.x, you can configure it in your project dependency

Abacn avatar Dec 10 '24 16:12 Abacn

thanks @Abacn! Unfortunately gcs-connector 3.x can't just be bumped on the user side -- there were breaking API changes and the internals of org.apache.beam.sdk.extensions.gcp.util.GcsUtil throw a MethodNotFound error, see here: https://github.com/apache/beam/pull/31898/files#r1678629888 So gcs-connector 3 is blocked on Beam upgrading to Java 11

clairemcginty avatar Dec 10 '24 20:12 clairemcginty