[GitHub] [incubator-druid] ccaominh commented on issue #7866: Moving project to Gradle

2019-07-19 Thread GitBox
ccaominh commented on issue #7866: Moving project to Gradle
URL: 
https://github.com/apache/incubator-druid/issues/7866#issuecomment-513397440
 
 
   For those interested, my branch that has a gradle build partially 
implemented: https://github.com/ccaominh/incubator-druid/tree/gradle. Sources 
and tests compile and unit tests run.
   
   I'm putting this work on hold as the speed gain does not seem to outweigh 
the cost of having everyone switch from maven. Remaining work includes: 
refactoring (dependency versions, creating plugins, etc.), integration tests, 
and converting the various maven plugins that are currently used.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

-
To unsubscribe, e-mail: commits-unsubscr...@druid.apache.org
For additional commands, e-mail: commits-h...@druid.apache.org



[GitHub] [incubator-druid] ccaominh commented on issue #7866: Moving project to Gradle

2019-07-17 Thread GitBox
ccaominh commented on issue #7866: Moving project to Gradle
URL: 
https://github.com/apache/incubator-druid/issues/7866#issuecomment-512540041
 
 
   For speeding up travis builds, we can potentially look into seeing which 
tests are compatible with maven parallel builds. For example, I've seen some 
tests that bind a fixed port, which would need to be modified or put into a CI 
job that does not execute test classes in parallel.


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

-
To unsubscribe, e-mail: commits-unsubscr...@druid.apache.org
For additional commands, e-mail: commits-h...@druid.apache.org



[GitHub] [incubator-druid] ccaominh commented on issue #7866: Moving project to Gradle

2019-07-16 Thread GitBox
ccaominh commented on issue #7866: Moving project to Gradle
URL: 
https://github.com/apache/incubator-druid/issues/7866#issuecomment-512060236
 
 
   My earlier measurements for maven were unfair as I have not converted most 
of the maven plugins to their gradle equivalents. The adjusted numbers for 
maven:
   - **Non-parallel:**`mvn install -DskipTests -Dcheckstyle.skip=true 
-Dforbiddenapis.skip=true -Dpmd.skip=true -Danimal.sniffer.skip=true 
-Denforcer.skip=true -Dspotbugs.skip=true `(3m 15s): 
https://scans.gradle.com/s/uetcuf7p57utq
   - **Parallel:**`mvn install -DskipTests -Dcheckstyle.skip=true 
-Dforbiddenapis.skip=true -Dpmd.skip=true -Danimal.sniffer.skip=true 
-Denforcer.skip=true -Dspotbugs.skip=true -T8` (1m 51s): 
https://scans.gradle.com/s/nbxz5xiwqtloa
   
   The build for `druid-console` takes 33-34 seconds (mostly front-end related 
compilation) and needs to be subtracted when comparing against gradle, as I 
have not translated that yet. After that is taken into account, **gradle 5.5 is 
2x faster than maven 3.6.1 for clean builds**.
   
   I was also able to fix the test runtime errors for gradle, but did not 
measure a significant difference in the test execution time between gradle and 
maven. **Probably the biggest performance advantage of using gradle over maven, 
is that gradle is very good at doing incremental builds.**


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

-
To unsubscribe, e-mail: commits-unsubscr...@druid.apache.org
For additional commands, e-mail: commits-h...@druid.apache.org



[GitHub] [incubator-druid] ccaominh commented on issue #7866: Moving project to Gradle

2019-07-15 Thread GitBox
ccaominh commented on issue #7866: Moving project to Gradle
URL: 
https://github.com/apache/incubator-druid/issues/7866#issuecomment-511571073
 
 
   @himanshug Gradle has a good article that describes some of the things they 
do to be faster than maven: 
https://gradle.org/gradle-vs-maven-performance/#performance-advantages-over-maven-that-make-this-possible
   
   Regarding the tests, I'm still working on fixing some build issues that 
cause runtime errors during the tests (test compilation completes without 
errors though). After I get the tests running successfully, I'll do a 
performance comparison.
   
   Philip Hauer's blog post does make several good points — probably the most 
relevant is his point about the steep learning curve (when compared to maven). 
The point about IDE support does not apply to gradle 5+ if Kotlin is used for 
the build scripts instead of groovy: 
https://docs.gradle.org/5.0/userguide/kotlin_dsl.html#sec:ide_support


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

-
To unsubscribe, e-mail: commits-unsubscr...@druid.apache.org
For additional commands, e-mail: commits-h...@druid.apache.org



[GitHub] [incubator-druid] ccaominh commented on issue #7866: Moving project to Gradle

2019-07-15 Thread GitBox
ccaominh commented on issue #7866: Moving project to Gradle
URL: 
https://github.com/apache/incubator-druid/issues/7866#issuecomment-511497489
 
 
   I've started looking into this and initial results show that gradle 5.5 is 
about 3.5-4x faster than maven 3.6.1 for a clean build:
   
   Non-parallel build:
   - `mvn install -DskipTests -Dcheckstyle.skip` (4m 44s): 
https://scans.gradle.com/s/4sen23iys23sg
   - `gradlew assemble publishToMavenLocal` (1m 20s / **3.5x speedup**): 
https://scans.gradle.com/s/oxuy353qrxkhw
   
   With parallel builds enabled on an 8 core machine:
   - `mvn install -DskipTests -Dcheckstyle.skip -T8` (2m 29s): 
https://scans.gradle.com/s/i3pkohokc4mtw
   - `gradlew assemble publishToMavenLocal --parallel` (36s / **4.1x 
speedup**): https://scans.gradle.com/s/oo3qlngwnmrr4
   
   Dependencies were downloaded before running measurements, and the gradle 
build cache was not enabled.
   
   


This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

-
To unsubscribe, e-mail: commits-unsubscr...@druid.apache.org
For additional commands, e-mail: commits-h...@druid.apache.org