-
Notifications
You must be signed in to change notification settings - Fork 13k
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
FLINK-30454 [runtime] Fixing visibility issue for SizeGauge.SizeSupplier #21531
Conversation
Also changing visibility JsonJobResultEntry.FIELD_NAME_VERSION as per JLS§6.6.1 requirements.
// CC @rmetzger |
@@ -207,7 +207,7 @@ public Set<JobResult> getDirtyResultsInternal() throws IOException { | |||
@VisibleForTesting | |||
static class JsonJobResultEntry extends JobResultEntry { | |||
private static final String FIELD_NAME_RESULT = "result"; | |||
private static final String FIELD_NAME_VERSION = "version"; | |||
static final String FIELD_NAME_VERSION = "version"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What's the purpose of this change?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The field couldn't be referenced in the annotation otherwise when compiling with ecj. I suppose it's another case where javac is a bit too lenient.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok, I see.
I'm manually merging this PR, adjusting the commit message to adhere to the Flink pattern |
Also changing visibility JsonJobResultEntry.FIELD_NAME_VERSION as per JLS§6.6.1 requirements. This closes apache#21531
Also changing visibility JsonJobResultEntry.FIELD_NAME_VERSION as per JLS§6.6.1 requirements. This closes apache#21531
https://issues.apache.org/jira/browse/FLINK-30454
What is the purpose of the change
Making sure the runtime module can be compiled with ecj. I encountered two locations which seem inconsistent with the JLS but were still accepted by javac.
Brief change log
Reworked two code places to make it compile with ecj. Note the change around
SizeGauge.SizeSupplier
is source-compatible but not binary-compatible, based on the assumption that this code is not invoked in external client code. If that actually is the case, I'd rework the change to simply change the visibility ofSizeGauge
to public.Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:
@Public(Evolving)
: noDocumentation