-
Notifications
You must be signed in to change notification settings - Fork 3.1k
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
Upgrade Error Prone to 2.18.0 #14597
Conversation
cc82942
to
6380421
Compare
lib/trino-record-decoder/src/main/java/io/trino/decoder/raw/RawColumnDecoder.java
Show resolved
Hide resolved
plugin/trino-hive/src/main/java/io/trino/plugin/hive/HiveType.java
Outdated
Show resolved
Hide resolved
6380421
to
c13addb
Compare
core/trino-main/src/main/java/io/trino/operator/output/PagePartitioner.java
Show resolved
Hide resolved
core/trino-main/src/test/java/io/trino/sql/planner/assertions/ExpressionMatcher.java
Outdated
Show resolved
Hide resolved
plugin/trino-hive/src/main/java/io/trino/plugin/hive/HiveType.java
Outdated
Show resolved
Hide resolved
plugin/trino-hive/src/main/java/io/trino/plugin/hive/HiveType.java
Outdated
Show resolved
Hide resolved
c13addb
to
40f127b
Compare
Thanks @findepi, addressed comments |
40f127b
to
69a6e1e
Compare
@ksobolew why rebase? |
Oh, I always forget to not rebase reflexively. Sorry. I just removed one import obsoleted by the second commit. |
69a6e1e
to
5b37621
Compare
Just rebased on top of latest master to pull in fixes to the build scripts |
the build is not green |
Some kind of Maven issue - I've seen it before, but I have no idea what it is.
|
5b37621
to
98a6798
Compare
Can we merge it now? |
eaa07b2
to
8efcd6a
Compare
8efcd6a
to
0743aad
Compare
0743aad
to
3b2e0bf
Compare
Error Prone 2.17.0 was released a couple of days ago; I merged this into this PR. |
3b2e0bf
to
6a4e38a
Compare
There's a new checker in Error Prone 2.16.0, `LenientFormatStringValidation`, ERROR by default, which verifies some more format strings in non-standard libraries (like Guava), and it triggers in several places.
This whole expression was evaluated eagerly for each check, even though it was basically never used. Calling `toString()` on the raw list does the same thing anyway.
6a4e38a
to
9a95f49
Compare
Pulled the last commit from #15654 |
@@ -905,7 +905,8 @@ private static ListMultimap<PlanNodeId, ExchangeSourceHandle> getInputsForRemote | |||
ImmutableListMultimap.Builder<PlanNodeId, ExchangeSourceHandle> result = ImmutableListMultimap.builder(); | |||
for (RemoteSourceNode remoteSource : remoteSources) { | |||
for (PlanFragmentId fragmentId : remoteSource.getSourceFragmentIds()) { | |||
Collection<ExchangeSourceHandle> handles = requireNonNull(exchangeSourceHandles.get(fragmentId), () -> "exchange source handle is missing for fragment: " + fragmentId); | |||
Collection<ExchangeSourceHandle> handles = exchangeSourceHandles.get(fragmentId); | |||
checkArgument(!handles.isEmpty(), "exchange source handle is missing for fragment: %s", fragmentId); |
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.
I'd actually drop that. Previous version wouldn't throw on empty collection - this does. It's a change in the behavior.
I've asked @losipiuk and according to his understanding dropping an RNN is a correct one. We could ask @arhimondr for an opinion though
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.
Sure, I can drop that. It just looked like it's the intent of the original code.
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.
I do not see a reason why we should expect non-empty handles here. I may be wrong though. @arhimondr ?
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.
I would probably just drop this check
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.
dropped
`Multimap#get` cannot return null; replace the null check with emptiness check instead. Error Prone 2.17.0 check: `ImpossibleNullComparison`.
This new version triggers on a bunch of unused parameters of Guava methods (`@Inject` or `@Provides`).
9a95f49
to
2e13d5b
Compare
Description
In 2.16.0 there's a new checker,
LenientFormatStringValidation
, ERROR by default, which verifies some more format strings in non-standard libraries (like Guava), and it triggers in several places.In 2.17.0 there's a new checker,
ImpossibleNullComparison
, which triggers on some null checks of the return value fromMultimap#get
, which cannot be null.In 2.18.0 the
UnusedVariable
checker reports unused parameters on Guava methods (@Inject
or@Provides
).Non-technical explanation
Improved code quality. (Possibly preventing crashes resulting from invalid format strings in some error conditions.)
Release notes
(x) This is not user-visible or docs only and no release notes are required.
( ) Release notes are required, please propose a release note for me.
( ) Release notes are required, with the following suggested text: