Skip to content

Instantly share code, notes, and snippets.

@prasanthj
Last active October 16, 2017 23:44
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save prasanthj/9fd2bc7c116d4c0fedf0a71e7e0dc5de to your computer and use it in GitHub Desktop.
Save prasanthj/9fd2bc7c116d4c0fedf0a71e7e0dc5de to your computer and use it in GitHub Desktop.
Apache Hive sub-minute maven dev build
Build times for Apache Hive master on my Mac Book Pro
# No source code changes (first build not considered as mvn will download all dependencies and cache it locally)
# Base: Clean offline quite build
$ time mvn clean install -DskipTests -o -q
real 3m9.005s
user 7m14.864s
sys 0m40.295s
# Parallel (using 1C gave best build times) build
$ time mvn clean install -DskipTests -T 1C -o -q
real 2m24.415s
user 8m12.243s
sys 0m54.905s
# With MAVEN_OPTS
$ time MAVEN_OPTS="-XX:+TieredCompilation -XX:TieredStopAtLevel=1" mvn clean install -DskipTests -T 1C -o -q
real 2m12.872s
user 7m46.879s
sys 0m49.696s
# Skip clean
$ MAVEN_OPTS="-XX:+TieredCompilation -XX:TieredStopAtLevel=1"
$ time MAVEN_OPTS="-XX:+TieredCompilation -XX:TieredStopAtLevel=1" mvn install -DskipTests -T 1C -o -q
real 1m31.403s
user 5m13.439s
sys 0m37.885s
# Skip shade for jdbc and druid-handler (requires HIVE-17822)
# NOTE: if you are changing/testing jdbc or druid you may want to skip this step
$ time MAVEN_OPTS="-XX:+TieredCompilation -XX:TieredStopAtLevel=1" mvn install -DskipShade -DskipTests -T 1C -o -q
real 1m20.130s
user 4m37.645s
sys 0m39.897s
# Skip remote resource plugin
$ time MAVEN_OPTS="-XX:+TieredCompilation -XX:TieredStopAtLevel=1" mvn install -DskipShade -DskipTests -Dremoteresources.skip=true -T 1C -o -q
real 0m37.485s
user 0m52.652s
sys 0m14.118s
# Build ql and downstream modules
$ time MAVEN_OPTS="-XX:+TieredCompilation -XX:TieredStopAtLevel=1" mvn install -DskipShade -DskipTests -Dremoteresources.skip=true -T 1C -o -q -pl ql -amd
real 0m31.827s
user 1m50.349s
sys 0m9.494s
# Build llap-server and downstream modules
$ time MAVEN_OPTS="-XX:+TieredCompilation -XX:TieredStopAtLevel=1" mvn install -DskipShade -DskipTests -Dremoteresources.skip=true -T 1C -o -q -pl llap-server -amd
real 0m9.147s
user 0m20.189s
sys 0m3.056s
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment