Skip to content

Conversation

@mdedetrich
Copy link
Contributor

@mdedetrich mdedetrich commented Jul 26, 2023

What is the purpose of the change

This PR bumps Pekko from v1.0.0 to 1.0.1. The main and hence only significant change from Pekko 1.0.0 to Pekko 1.0.1 is apache/pekko#492, see issue at apache/pekko#491.

Just to provide some context, the core issue is that using $ in any symbol name for user defined classes breaks the JVM spec (initially it was thought that it only broke the Scala spec but this was later clarified in scala/scala3#18234 (comment) ).

While it is highly unlikely that using Pekko 1.0.0 will cause any problems, if there does happen to be an issue theoretically speaking it wouldn't be self contained to only Scala users. As such its recommend to update to Pekko 1.0.1 if its not a big deal to do so.

Brief change log

  • Update Pekko dependency to 1.0.1 in the pom.xml file as well as updating NOTICE file

Verifying this change

This change is already covered by existing tests, such as all tests within Flink rpc.

Does this pull request potentially affect one of the following parts:

  • Dependencies (does it add or upgrade a dependency): yes
  • The public API, i.e., is any changed class annotated with @Public(Evolving): no
  • The serializers: no
  • The runtime per-record code paths (performance sensitive): no
  • Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: no
  • The S3 file system connector: no

Documentation

  • Does this pull request introduce a new feature? no

@flinkbot
Copy link
Collaborator

flinkbot commented Jul 26, 2023

CI report:

Bot commands The @flinkbot bot supports the following commands:
  • @flinkbot run azure re-run the last Azure build

Copy link
Contributor

@XComp XComp left a comment

Choose a reason for hiding this comment

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

After a talk with @mdedetrich I think it's worth bringing this version bump into 1.18. The class that is provided by Pekko 1.0.0 (more specifically PekkoPduProtobufCodec$ seems to work fine for now but doesn't match the JVM specs as @mdedetrich pointed out with his reference to the comment from @odersky.

I'm going to approve the change as the minor version bump only contains this specific issue and it reduces the risk of running into problems due to undefined behavior by the JVM when compiling Flink with the akka-remote dependency and this class being loaded.

@XComp XComp merged commit ed99f5e into apache:master Jul 27, 2023
@mdedetrich mdedetrich deleted the update-pekko-to-1.0.1 branch August 27, 2023 08:56
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.

4 participants