> On May 21, 2014, 3:01 p.m., Maxim Khutornenko wrote: > > Does it bring anything else besides parentheses checks that findbugs does > > not already do? My only concern is build performance. That said, if it does > > not take long to run I am in. > > Bill Farner wrote: > http://lmgtfy.com/?q=difference+between+findbugs+and+pmd > > :-)
Short answer — yes, it does a lot more than check parens, we're just not tripping anything else apparently (or the default config is conservative). PMD does things findbugs can't, since it operates on source rather than bytecode. Regarding timing, below the task timing summary produced by `./gradlew clean build --profile` on my macbook air. PMD adds ~18 seconds. Task Duration Result : 9m16.16s (total) :findbugsGenerated 2m42.26s :findbugsMain 1m55.74s :findbugsTest 1m38.54s :test 1m21.69s :pmdMain 18.258s :compileJava 14.238s :compileGeneratedJava 10.855s :compileTestJava 10.255s :checkstyleMain 9.906s :jsHint 9.782s :jacocoTestReport 6.871s :checkstyleTest 5.303s :jar 4.100s :about 2.808s :processResources 1.826s :generateSources 1.231s :licenseGenerated 0.932s UP-TO-DATE :licenseTest 0.441s UP-TO-DATE :clean 0.403s :licenseMain 0.357s UP-TO-DATE :processTestResources 0.301s :check 0.035s Did No Work :processGeneratedResources 0.012s UP-TO-DATE :bootstrapThrift 0.006s UP-TO-DATE :build 0.002s Did No Work :testClasses 0.002s Did No Work :checkPython 0.001s :classes 0.001s Did No Work :generatedClasses 0.001s Did No Work :license 0.001s UP-TO-DATE :assemble 0s Did No Work - Bill ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/21754/#review43617 ----------------------------------------------------------- On May 21, 2014, 6:05 a.m., Bill Farner wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/21754/ > ----------------------------------------------------------- > > (Updated May 21, 2014, 6:05 a.m.) > > > Review request for Aurora, David McLaughlin, Kevin Sweeney, and Maxim > Khutornenko. > > > Repository: aurora > > > Description > ------- > > Added this mostly as an experiment, interested in what you think about the > changes required by the vanilla config. For those of you that don't know, > PMD [1] is a source code analyzer. Checkstyle, findbugs, and PMD tend to be > complementary despite some overlaps. > > [1] http://pmd.sourceforge.net/ > > > Diffs > ----- > > build.gradle ac54257a0342e1f1a162189191d5f7b27e1651c9 > src/main/java/org/apache/aurora/scheduler/UserTaskLauncher.java > fd2644172e3814e8cf5f976753b07f6196368d71 > src/main/java/org/apache/aurora/scheduler/async/HistoryPruner.java > 59f615c89ba1fad1656934da7dca6bd4ed741739 > src/main/java/org/apache/aurora/scheduler/async/OfferQueue.java > b85e42b41e1466213be0e6a25c39f5b0d78cd53e > src/main/java/org/apache/aurora/scheduler/base/Numbers.java > 54739e02e03918180445290daab2a2ca5330beb6 > src/main/java/org/apache/aurora/scheduler/base/Query.java > 1e586c5ecc52ea32e50468942fd00a2d85463281 > > src/main/java/org/apache/aurora/scheduler/configuration/ConfigurationManager.java > e5ad4614071f232183db579465bf7a4c9127b49d > src/main/java/org/apache/aurora/scheduler/configuration/Resources.java > 5e3015dc9aa63c59d3ba8ae7b3e885e76f76174e > src/main/java/org/apache/aurora/scheduler/events/PubsubEvent.java > 26697814d4ccdb6ac74794755976087187ff1c9f > src/main/java/org/apache/aurora/scheduler/filter/SchedulingFilter.java > f428be434766a9dbb7091637d4881e902096568f > src/main/java/org/apache/aurora/scheduler/filter/SchedulingFilterImpl.java > 7c6e9bafac2a858bd9d233f5bd00339d4eb60888 > src/main/java/org/apache/aurora/scheduler/http/TransformationUtils.java > e99d41cc89d016ff25298840298971ac19d70694 > > src/main/java/org/apache/aurora/scheduler/local/IsolatedSchedulerModule.java > 1bfd4b69584122f62616ce93098a56fe3cf195d8 > src/main/java/org/apache/aurora/scheduler/metadata/NearestFit.java > c328ff870c87e3f042c6b5d03dacd48cf86d84a5 > src/main/java/org/apache/aurora/scheduler/state/StateManagerImpl.java > c0c34b6ce510e6e244aa1d1783039d5d41df9532 > src/main/java/org/apache/aurora/scheduler/state/TaskStateMachine.java > 6072a2446811fca1a3e6c6c3db03116930c11e0b > src/main/java/org/apache/aurora/scheduler/state/TransitionResult.java > 15174bdfa09fd4f3b7e0875cb454613c54c8f16b > src/main/java/org/apache/aurora/scheduler/storage/mem/MemTaskStore.java > 85890106f623435ae367ab788feb6698c071cba3 > > Diff: https://reviews.apache.org/r/21754/diff/ > > > Testing > ------- > > ./gradlew build > > > Thanks, > > Bill Farner > >