You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by na...@apache.org on 2013/07/13 10:33:33 UTC

svn commit: r1502760 - in /hive/trunk: build.properties build.xml ql/build.xml ql/ivy.xml

Author: navis
Date: Sat Jul 13 08:33:33 2013
New Revision: 1502760

URL: http://svn.apache.org/r1502760
Log:
HIVE-4290 : Build profiles: Partial builds for quicker dev (Gunther Hagleitner via Navis)

Modified:
    hive/trunk/build.properties
    hive/trunk/build.xml
    hive/trunk/ql/build.xml
    hive/trunk/ql/ivy.xml

Modified: hive/trunk/build.properties
URL: http://svn.apache.org/viewvc/hive/trunk/build.properties?rev=1502760&r1=1502759&r2=1502760&view=diff
==============================================================================
--- hive/trunk/build.properties (original)
+++ hive/trunk/build.properties Sat Jul 13 08:33:33 2013
@@ -73,12 +73,30 @@ jsp.test.jar=${hadoop.root}/lib/jetty-ex
 common.jar=${hadoop.root}/lib/commons-httpclient-3.0.1.jar
 
 # module names needed for build process
-iterate.hive.all=ant,shims,common,serde,metastore,ql,contrib,service,cli,jdbc,beeline,hwi,hbase-handler,testutils,hcatalog
-iterate.hive.modules=shims,common,serde,metastore,ql,contrib,service,cli,jdbc,beeline,hwi,hbase-handler,testutils,hcatalog
-iterate.hive.tests=ql,contrib,hbase-handler,hwi,jdbc,beeline,metastore,odbc,serde,service,hcatalog
-iterate.hive.thrift=ql,service,metastore,serde
-iterate.hive.protobuf=ql
-iterate.hive.cpp=odbc
+
+# full profile
+iterate.hive.full.all=ant,shims,common,serde,metastore,ql,contrib,service,cli,jdbc,beeline,hwi,hbase-handler,testutils,hcatalog
+iterate.hive.full.modules=shims,common,serde,metastore,ql,contrib,service,cli,jdbc,beeline,hwi,hbase-handler,testutils,hcatalog
+iterate.hive.full.tests=ql,contrib,hbase-handler,hwi,jdbc,beeline,metastore,odbc,serde,service,hcatalog
+iterate.hive.full.thrift=ql,service,metastore,serde
+iterate.hive.full.protobuf=ql
+iterate.hive.full.cpp=odbc
+
+# no hcatalog profile
+iterate.hive.nohcat.all=ant,shims,common,serde,metastore,ql,contrib,service,cli,jdbc,beeline,hwi,hbase-handler,testutils
+iterate.hive.nohcat.modules=shims,common,serde,metastore,ql,contrib,service,cli,jdbc,beeline,hwi,hbase-handler,testutils
+iterate.hive.nohcat.tests=ql,contrib,hbase-handler,hwi,jdbc,beeline,metastore,odbc,serde,service
+iterate.hive.nohcat.thrift=ql,service,metastore,serde
+iterate.hive.nohcat.protobuf=ql
+iterate.hive.nohcat.cpp=odbc
+
+# core profile
+iterate.hive.core.all=ant,shims,common,serde,metastore,ql,cli
+iterate.hive.core.modules=shims,common,serde,metastore,ql,cli
+iterate.hive.core.tests=ql
+iterate.hive.core.thrift=ql
+iterate.hive.core.protobuf=ql
+iterate.hive.core.cpp=
 
 #
 # Test Properties

Modified: hive/trunk/build.xml
URL: http://svn.apache.org/viewvc/hive/trunk/build.xml?rev=1502760&r1=1502759&r2=1502760&view=diff
==============================================================================
--- hive/trunk/build.xml (original)
+++ hive/trunk/build.xml Sat Jul 13 08:33:33 2013
@@ -59,6 +59,51 @@
   <property name="rat.build.dir" location="${build.dir.hive}/rat"/>
   <property name="md5sum.format" value="{0}  {1}"/>
 
+  <taskdef resource="net/sf/antcontrib/antcontrib.properties">
+    <classpath>
+      <pathelement location="${hive.root}/testlibs/ant-contrib-1.0b3.jar"/>
+    </classpath>
+  </taskdef>
+
+  <if>
+    <equals arg1="${build.profile}" arg2="core"/>
+    <then>
+      <property name="iterate.hive.all" value="${iterate.hive.core.all}"/>
+      <property name="iterate.hive.modules" value="${iterate.hive.core.modules}"/>
+      <property name="iterate.hive.tests" value="${iterate.hive.core.tests}"/>
+      <property name="iterate.hive.thrift" value="${iterate.hive.core.thrift}"/>
+      <property name="iterate.hive.protobuf" value="${iterate.hive.core.protobuf}"/>
+      <property name="iterate.hive.cpp" value="${iterate.hive.core.cpp}"/>
+    </then>
+  </if>
+
+  <if>
+    <equals arg1="${build.profile}" arg2="nohcat"/>
+    <then>
+      <property name="iterate.hive.all" value="${iterate.hive.nohcat.all}"/>
+      <property name="iterate.hive.modules" value="${iterate.hive.nohcat.modules}"/>
+      <property name="iterate.hive.tests" value="${iterate.hive.nohcat.tests}"/>
+      <property name="iterate.hive.thrift" value="${iterate.hive.nohcat.thrift}"/>
+      <property name="iterate.hive.protobuf" value="${iterate.hive.nohcat.protobuf}"/>
+      <property name="iterate.hive.cpp" value="${iterate.hive.nohcat.cpp}"/>
+    </then>
+  </if>
+
+  <if>
+    <or>
+      <equals arg1="${build.profile}" arg2="full"/>
+      <not><isset property="build.profile"/></not>
+    </or>
+    <then>
+      <property name="iterate.hive.all" value="${iterate.hive.full.all}"/>
+      <property name="iterate.hive.modules" value="${iterate.hive.full.modules}"/>
+      <property name="iterate.hive.tests" value="${iterate.hive.full.tests}"/>
+      <property name="iterate.hive.thrift" value="${iterate.hive.full.thrift}"/>
+      <property name="iterate.hive.protobuf" value="${iterate.hive.full.protobuf}"/>
+      <property name="iterate.hive.cpp" value="${iterate.hive.full.cpp}"/>
+    </then>
+  </if>
+
   <!-- Check minimum ant version required -->
   <fail message="Please use ant version 1.8.0 or greater for building hive.">
     <condition>
@@ -477,18 +522,18 @@
         <exclude name="**/hive-anttasks*.jar"/>
         <exclude name="**/hive-testutils*.jar"/>
       </fileset>
-      <fileset file="${build.dir.hive}/beeline/hive-beeline-${version}.jar"/>
-      <fileset file="${build.dir.hive}/cli/hive-cli-${version}.jar"/>
-      <fileset file="${build.dir.hive}/common/hive-common-${version}.jar"/>
-      <fileset file="${build.dir.hive}/ql/hive-exec-${version}.jar"/>
-      <fileset file="${build.dir.hive}/metastore/hive-metastore-${version}.jar"/>
-      <fileset file="${build.dir.hive}/hwi/hive-hwi-${version}.war"/>
-      <fileset file="${build.dir.hive}/contrib/hive-contrib-${version}.jar"/>
+      <fileset file="${build.dir.hive}/beeline/hive-beeline-${version}.jar" erroronmissingdir="false"/>
+      <fileset file="${build.dir.hive}/cli/hive-cli-${version}.jar" erroronmissingdir="false"/>
+      <fileset file="${build.dir.hive}/common/hive-common-${version}.jar" erroronmissingdir="false"/>
+      <fileset file="${build.dir.hive}/ql/hive-exec-${version}.jar" erroronmissingdir="false"/>
+      <fileset file="${build.dir.hive}/metastore/hive-metastore-${version}.jar" erroronmissingdir="false"/>
+      <fileset file="${build.dir.hive}/hwi/hive-hwi-${version}.war" erroronmissingdir="false"/>
+      <fileset file="${build.dir.hive}/contrib/hive-contrib-${version}.jar" erroronmissingdir="false"/>
       <fileset dir="${build.dir.hive}/ivy/lib/default">
         <include name="*.jar"/>
         <exclude name="*.tar.gz"/>
         <exclude name="hadoop-*.jar" />
-	<exclude name="**/*high-scale-lib-*"/>
+        <exclude name="**/*high-scale-lib-*"/>
         <exclude name="**/hamcrest-core-*jar"/>
         <exclude name="**/junit*.jar"/>
         <exclude name="**/asm*.jar"/>
@@ -516,12 +561,17 @@
     </chmod>
 
     <!-- Package the hcat stuff and pull it up into Hive's build dir -->
-    <ant antfile="${hive.root}/hcatalog/build.xml" target="package"
-        inheritAll="false"/>
-    <mkdir dir="${target.dir}/hcatalog"/>
-    <copy todir="${target.dir}/hcatalog">
-        <fileset dir="${hive.root}/hcatalog/build/hcatalog-${hcatalog.version}"/>
-    </copy>
+    <if>
+      <matches string="${iterate.hive.all}" pattern="hcatalog"/>
+      <then>
+        <ant antfile="${hive.root}/hcatalog/build.xml" target="package"
+          inheritAll="false"/>
+        <mkdir dir="${target.dir}/hcatalog"/>
+        <copy todir="${target.dir}/hcatalog">
+          <fileset dir="${hive.root}/hcatalog/build/hcatalog-${hcatalog.version}"/>
+        </copy>
+      </then>
+    </if>
     <!--fix permissions since 'copy' looses them (known ant/Java issue)-->
     <chmod perm="ugo+x" type="file">
       <fileset dir="${target.dir}/hcatalog/bin"/>

Modified: hive/trunk/ql/build.xml
URL: http://svn.apache.org/viewvc/hive/trunk/ql/build.xml?rev=1502760&r1=1502759&r2=1502760&view=diff
==============================================================================
--- hive/trunk/ql/build.xml (original)
+++ hive/trunk/ql/build.xml Sat Jul 13 08:33:33 2013
@@ -82,19 +82,24 @@
               logDirectory="${test.log.dir}/clientpositive"
               hadoopVersion="${hadoopVersion}"/>
 
-    <qtestgen hiveRootDirectory="${hive.root}"
-              outputDirectory="${test.build.src}/org/apache/hive/beeline/util" 
-              templatePath="${ql.test.template.dir}" template="TestBeeLineDriver.vm" 
-              queryDirectory="${ql.test.query.clientpositive.dir}" 
-              queryFile="${qfile}"
-              excludeQueryFile="${ql.test.beelinepositive.exclude}"
-              queryFileRegex="${qfile_regex}"
-              clusterMode="${clustermode}"
-              runDisabled="${run_disabled}"
-              resultsDirectory="${ql.test.results.beelinepositive.dir}" className="TestBeeLineDriver"
-              logFile="${test.log.dir}/testbeelinedrivergen.log"
-              logDirectory="${test.log.dir}/beelinepositive"
-              hadoopVersion="${hadoopVersion}" />
+    <if>
+      <matches string="${iterate.hive.all}" pattern="beeline"/>
+      <then>
+        <qtestgen hiveRootDirectory="${hive.root}"
+                  outputDirectory="${test.build.src}/org/apache/hive/beeline/util" 
+                  templatePath="${ql.test.template.dir}" template="TestBeeLineDriver.vm" 
+                  queryDirectory="${ql.test.query.clientpositive.dir}" 
+                  queryFile="${qfile}"
+                  excludeQueryFile="${ql.test.beelinepositive.exclude}"
+                  queryFileRegex="${qfile_regex}"
+                  clusterMode="${clustermode}"
+                  runDisabled="${run_disabled}"
+                  resultsDirectory="${ql.test.results.beelinepositive.dir}" className="TestBeeLineDriver"
+                  logFile="${test.log.dir}/testbeelinedrivergen.log"
+                  logDirectory="${test.log.dir}/beelinepositive"
+                  hadoopVersion="${hadoopVersion}" />
+      </then>
+    </if>
 
     <if>
       <not>

Modified: hive/trunk/ql/ivy.xml
URL: http://svn.apache.org/viewvc/hive/trunk/ql/ivy.xml?rev=1502760&r1=1502759&r2=1502760&view=diff
==============================================================================
--- hive/trunk/ql/ivy.xml (original)
+++ hive/trunk/ql/ivy.xml Sat Jul 13 08:33:33 2013
@@ -34,6 +34,12 @@
                 conf="test->default" transitive="false"/>
     <dependency org="org.apache.hive" name="hive-testutils" rev="${version}"
                 conf="test->default" transitive="false"/>
+    <dependency org="org.apache.hbase" name="hbase" rev="${hbase.version}"
+                conf="test->default" transitive="false">
+      <artifact name="hbase" type="jar"/>
+      <artifact name="hbase" type="test-jar" ext="jar"
+                m:classifier="tests"/>
+    </dependency>
     <dependency org="com.google.protobuf" name="protobuf-java" 
                 rev="${protobuf.version}" transitive="false"/>
     <dependency org="org.iq80.snappy" name="snappy"