Only enable check plugins if air.check.skip-* is false #293
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Enable check plugins only when matching
air.check.skip-*
properties are false. This is supposed to avoid any unnecessary initialization overhead. Another minor improvement is that Maven output is not polluted with unused plugins.I noticed #69 and I've seen similar issues when disabling the dependency plugin so this is the only check plugin that's skipped using configuration.
Tested roughly (only 3 runs of every goal) by running the following goals in the Trino project, on an otherwise idle r5.large instance:
clean install
To make tests quicker, I skip the 3 largest modules, this still leaves out 76 modules to be built.
Baseline (Trino master - f7226865e8578339b4e56658b5ec116b872a59c6) yields:
After changes - setting airbase to 120-SNAPSHOT in root pom.xml:
The gain is small (3s, ~1%) but visible.
I'm also attaching flame graphs from the async-profiler, that shows a 2% difference in how much time (samples) is used for the GC and JIT.
mvn-profiles.zip