You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@vxquery.apache.org by sj...@apache.org on 2016/05/17 23:09:35 UTC

[22/40] vxquery git commit: merge with upstream master

merge with upstream master


Project: http://git-wip-us.apache.org/repos/asf/vxquery/repo
Commit: http://git-wip-us.apache.org/repos/asf/vxquery/commit/b4bb8490
Tree: http://git-wip-us.apache.org/repos/asf/vxquery/tree/b4bb8490
Diff: http://git-wip-us.apache.org/repos/asf/vxquery/diff/b4bb8490

Branch: refs/heads/steven/hdfs
Commit: b4bb84900258cd8d03b7f566017142b924b72e29
Parents: 45c3843 7fc0d93
Author: efikalti <ka...@lab.grid.auth.gr>
Authored: Tue Aug 18 18:22:15 2015 +0300
Committer: efikalti <ka...@lab.grid.auth.gr>
Committed: Tue Aug 18 18:22:15 2015 +0300

----------------------------------------------------------------------
 doap.rdf                                        |    4 +-
 src/site/apt/cluster_installation.apt           |  149 -
 src/site/apt/development_contribution.apt       |  122 +
 src/site/apt/development_site_update.apt        |   80 +
 src/site/apt/development_xml_document.apt       |  607 ++
 src/site/apt/development_xml_node_details.apt   |   36 +-
 src/site/apt/user_cluster_installation.apt      |  149 +
 src/site/site.xml                               |   17 +-
 .../src/main/resources/exrt/README.md           |   29 +
 .../src/main/resources/exrt/queries/q01.xq      |   31 +
 .../src/main/resources/exrt/queries/q02.xq      |   27 +
 .../src/main/resources/exrt/queries/q03.xq      |   47 +
 .../src/main/resources/exrt/queries/q04.xq      |  118 +
 .../exrt/queries/q04_without_reconstruction.xq  |   21 +
 .../src/main/resources/exrt/queries/q05.xq      |   23 +
 .../src/main/resources/exrt/queries/q06.xq      |   22 +
 .../src/main/resources/exrt/queries/q07.xq      |   22 +
 .../src/main/resources/exrt/queries/q08.xq      |   25 +
 .../src/main/resources/exrt/queries/q09.xq      |   25 +
 .../other_systems/mrql_scripts/clear.sh         |   24 -
 .../other_systems/mrql_scripts/clear_hadoop.sh  |   24 +
 .../other_systems/mrql_scripts/clear_hadoop2.sh |   22 +
 .../mrql_scripts/run_group_test.sh              |   36 +-
 .../mrql_scripts/run_mrql_tests.sh              |    7 +-
 .../src/main/resources/xmark/README.md          |   41 +
 .../xmark/data/categories/micro_categories.xml  |   68 +
 .../xmark/data/catgraph/micro_catgraph.xml      |   24 +
 .../closed_auctions/micro_closed_auctions.xml   |  188 +
 .../data/open_auctions/micro_open_auctions.xml  |  154 +
 .../xmark/data/people/micro_people.xml          |   31 +
 .../xmark/data/regions/micro_regions.xml        |  394 ++
 .../src/main/resources/xmark/queries/q01.xq     |   23 +
 .../src/main/resources/xmark/queries/q02.xq     |   22 +
 .../src/main/resources/xmark/queries/q03.xq     |   26 +
 .../src/main/resources/xmark/queries/q04.xq     |   26 +
 .../src/main/resources/xmark/queries/q05.xq     |   25 +
 .../src/main/resources/xmark/queries/q06.xq     |   22 +
 .../src/main/resources/xmark/queries/q07.xq     |   22 +
 .../src/main/resources/xmark/queries/q08.xq     |   28 +
 .../src/main/resources/xmark/queries/q09.xq     |   33 +
 .../src/main/resources/xmark/queries/q10.xq     |   46 +
 .../src/main/resources/xmark/queries/q11.xq     |   27 +
 .../src/main/resources/xmark/queries/q12.xq     |   28 +
 .../src/main/resources/xmark/queries/q13.xq     |   22 +
 .../src/main/resources/xmark/queries/q14.xq     |   23 +
 .../src/main/resources/xmark/queries/q15.xq     |   29 +
 .../src/main/resources/xmark/queries/q16.xq     |   30 +
 .../src/main/resources/xmark/queries/q17.xq     |   23 +
 .../src/main/resources/xmark/queries/q18.xq     |   28 +
 .../src/main/resources/xmark/queries/q19.xq     |   24 +
 .../src/main/resources/xmark/queries/q20.xq     |   58 +
 .../java/org/apache/vxquery/cli/VXQuery.java    |  144 +-
 .../compiler/rewriter/RewriteRuleset.java       |   51 +-
 .../rules/ConsolidateDescandantChild.java       |  104 +
 .../rewriter/rules/ConsolidateUnnestsRule.java  |   79 +-
 .../rules/ConvertAssignToUnnestRule.java        |   31 +-
 .../ConvertFromAlgebricksExpressionsRule.java   |  103 +-
 .../ConvertToAlgebricksExpressionsRule.java     |  117 +-
 .../rules/InlineNestedVariablesRule.java        |   97 -
 .../rules/ReplaceSourceMapInDocExpression.java  |  168 +
 .../ExtractFunctionsFromJoinConditionRule.java  |  141 +
 .../InlineNestedVariablesRule.java              |   97 +
 ...oveFreeVariableOperatorOutOfSubplanRule.java |  178 +
 .../rewriter/rules/util/ExpressionToolbox.java  |   34 +-
 .../vxquery/context/StaticContextImpl.java      |    5 +-
 .../accessors/nodes/AbstractNodePointable.java  |   29 +
 .../accessors/nodes/AttributeNodePointable.java |   12 +-
 .../accessors/nodes/DocumentNodePointable.java  |   12 +-
 .../accessors/nodes/ElementNodePointable.java   |    5 +-
 .../accessors/nodes/PINodePointable.java        |   12 +-
 .../nodes/TextOrCommentNodePointable.java       |   13 +-
 .../vxquery/functions/builtin-operators.xml     |   14 +-
 .../metadata/VXQueryMetadataProvider.java       |    4 +
 ...GeneralComparisonScalarEvaluatorFactory.java |   12 +-
 .../IfThenElseScalarEvaluatorFactory.java       |   37 +-
 .../AbstractNodePositionalCheckEvaluator.java   |   58 +
 .../ElementNodeConstructorScalarEvaluator.java  |  115 +-
 .../functions/node/OpNodeAfterEvaluator.java    |   33 +
 .../node/OpNodeAfterEvaluatorFactory.java       |   41 +
 .../functions/node/OpNodeBeforeEvaluator.java   |   33 +
 .../node/OpNodeBeforeEvaluatorFactory.java      |   41 +
 .../step/DescendantOrSelfPathStepUnnesting.java |   33 +-
 .../strings/FnStringScalarEvaluatorFactory.java |   14 +-
 .../vxquery/serializer/XMLSerializer.java       |    9 +-
 .../vxquery/xmlparser/SAXContentHandler.java    |   20 +-
 .../query/VXQueryCompilationListener.java       |  115 +
 .../xmlquery/query/XMLQueryCompiler.java        |   10 +-
 .../xmlquery/translator/XMLQueryTranslator.java |   66 +-
 vxquery-xtest/pom.xml                           |  384 +-
 vxquery-xtest/results/xqts.txt                  | 1628 ++---
 .../vxquery/xtest/AbstractTestCaseFactory.java  |    7 +
 .../org/apache/vxquery/xtest/TestRunner.java    |   26 +-
 .../org/apache/vxquery/xtest/XTestOptions.java  |   46 +-
 .../vxquery/xtest/AbstractXQueryTest.java       |   78 +
 .../org/apache/vxquery/xtest/VXQueryTest.java   |   77 +-
 .../apache/vxquery/xtest/VXQueryXMarkTest.java  |   55 +
 .../org/apache/vxquery/xtest/XMarkTest.java     |   56 +
 .../java/org/apache/vxquery/xtest/XQTSTest.java |   56 +
 .../ExpectedTestResults/Simple/fn_doc.txt       |    1 +
 .../ExpectedTestResults/XMark/Modified/q01.txt  |    1 +
 .../ExpectedTestResults/XMark/Modified/q02.txt  |   25 +
 .../ExpectedTestResults/XMark/Modified/q03.txt  |    8 +
 .../ExpectedTestResults/XMark/Modified/q04.txt  |    1 +
 .../ExpectedTestResults/XMark/Modified/q05.txt  |    1 +
 .../ExpectedTestResults/XMark/Modified/q06.txt  |    1 +
 .../ExpectedTestResults/XMark/Modified/q07.txt  |    1 +
 .../ExpectedTestResults/XMark/Modified/q08.txt  |   53 +
 .../ExpectedTestResults/XMark/Modified/q09.txt  |   83 +
 .../ExpectedTestResults/XMark/Modified/q10.txt  |  440 ++
 .../ExpectedTestResults/XMark/Modified/q11.txt  |   53 +
 .../ExpectedTestResults/XMark/Modified/q12.txt  |   12 +
 .../ExpectedTestResults/XMark/Modified/q13.txt  |   55 +
 .../ExpectedTestResults/XMark/Modified/q14.txt  |    1 +
 .../ExpectedTestResults/XMark/Modified/q15.txt  |    3 +
 .../ExpectedTestResults/XMark/Modified/q16.txt  |    1 +
 .../ExpectedTestResults/XMark/Modified/q17.txt  |   27 +
 .../ExpectedTestResults/XMark/Modified/q18.txt  |    1 +
 .../ExpectedTestResults/XMark/Modified/q19.txt  |   44 +
 .../ExpectedTestResults/XMark/Modified/q20.txt  |    6 +
 .../ExpectedTestResults/XMark/Original/q01.txt  |    1 +
 .../ExpectedTestResults/XMark/Original/q02.txt  |   25 +
 .../ExpectedTestResults/XMark/Original/q03.txt  |    8 +
 .../ExpectedTestResults/XMark/Original/q04.txt  |    1 +
 .../ExpectedTestResults/XMark/Original/q05.txt  |    1 +
 .../ExpectedTestResults/XMark/Original/q06.txt  |    1 +
 .../ExpectedTestResults/XMark/Original/q07.txt  |    1 +
 .../ExpectedTestResults/XMark/Original/q08.txt  |   53 +
 .../ExpectedTestResults/XMark/Original/q09.txt  |   83 +
 .../ExpectedTestResults/XMark/Original/q10.txt  |  440 ++
 .../ExpectedTestResults/XMark/Original/q11.txt  |   53 +
 .../ExpectedTestResults/XMark/Original/q12.txt  |   12 +
 .../ExpectedTestResults/XMark/Original/q13.txt  |   55 +
 .../ExpectedTestResults/XMark/Original/q14.txt  |    1 +
 .../ExpectedTestResults/XMark/Original/q15.txt  |    3 +
 .../ExpectedTestResults/XMark/Original/q16.txt  |    1 +
 .../ExpectedTestResults/XMark/Original/q17.txt  |   27 +
 .../ExpectedTestResults/XMark/Original/q18.txt  |    1 +
 .../ExpectedTestResults/XMark/Original/q19.txt  |   44 +
 .../ExpectedTestResults/XMark/Original/q20.txt  |    6 +
 .../XMark/Original/simple_query1.txt            |    1 +
 .../XMark/Original/simple_query2.txt            |    4 +
 .../Queries/XQuery/Ghcnd/Partition-1/q01.xq     |    2 +-
 .../Queries/XQuery/Ghcnd/Partition-2/q01.xq     |    2 +-
 .../Queries/XQuery/Ghcnd/Partition-4/q01.xq     |    2 +-
 .../resources/Queries/XQuery/Simple/fn_doc.xq   |   19 +
 .../Queries/XQuery/XMark/Modified/q01.xq        |   23 +
 .../Queries/XQuery/XMark/Modified/q02.xq        |   22 +
 .../Queries/XQuery/XMark/Modified/q03.xq        |   26 +
 .../Queries/XQuery/XMark/Modified/q04.xq        |   26 +
 .../Queries/XQuery/XMark/Modified/q05.xq        |   25 +
 .../Queries/XQuery/XMark/Modified/q06.xq        |   22 +
 .../Queries/XQuery/XMark/Modified/q07.xq        |   22 +
 .../Queries/XQuery/XMark/Modified/q08.xq        |   28 +
 .../Queries/XQuery/XMark/Modified/q09.xq        |   33 +
 .../Queries/XQuery/XMark/Modified/q10.xq        |   46 +
 .../Queries/XQuery/XMark/Modified/q11.xq        |   27 +
 .../Queries/XQuery/XMark/Modified/q12.xq        |   28 +
 .../Queries/XQuery/XMark/Modified/q13.xq        |   22 +
 .../Queries/XQuery/XMark/Modified/q14.xq        |   23 +
 .../Queries/XQuery/XMark/Modified/q15.xq        |   29 +
 .../Queries/XQuery/XMark/Modified/q16.xq        |   30 +
 .../Queries/XQuery/XMark/Modified/q17.xq        |   23 +
 .../Queries/XQuery/XMark/Modified/q18.xq        |   28 +
 .../Queries/XQuery/XMark/Modified/q19.xq        |   24 +
 .../Queries/XQuery/XMark/Modified/q20.xq        |   58 +
 .../Queries/XQuery/XMark/Original/q01.xq        |   27 +
 .../Queries/XQuery/XMark/Original/q02.xq        |   22 +
 .../Queries/XQuery/XMark/Original/q03.xq        |   26 +
 .../Queries/XQuery/XMark/Original/q04.xq        |   27 +
 .../Queries/XQuery/XMark/Original/q05.xq        |   25 +
 .../Queries/XQuery/XMark/Original/q06.xq        |   21 +
 .../Queries/XQuery/XMark/Original/q07.xq        |   23 +
 .../Queries/XQuery/XMark/Original/q08.xq        |   26 +
 .../Queries/XQuery/XMark/Original/q09.xq        |   31 +
 .../Queries/XQuery/XMark/Original/q10.xq        |   46 +
 .../Queries/XQuery/XMark/Original/q11.xq        |   26 +
 .../Queries/XQuery/XMark/Original/q12.xq        |   27 +
 .../Queries/XQuery/XMark/Original/q13.xq        |   22 +
 .../Queries/XQuery/XMark/Original/q14.xq        |   23 +
 .../Queries/XQuery/XMark/Original/q15.xq        |   30 +
 .../Queries/XQuery/XMark/Original/q16.xq        |   30 +
 .../Queries/XQuery/XMark/Original/q17.xq        |   23 +
 .../Queries/XQuery/XMark/Original/q18.xq        |   28 +
 .../Queries/XQuery/XMark/Original/q19.xq        |   24 +
 .../Queries/XQuery/XMark/Original/q20.xq        |   45 +
 .../TestSources/XMark/SingleFile/auction.xml    | 5760 ++++++++++++++++++
 .../SplitFiles/categories/micro_categories.xml  |   56 +
 .../SplitFiles/catgraph/micro_catgraph.xml      |   23 +
 .../closed_auctions/micro_closed_auctions.xml   | 1192 ++++
 .../open_auctions/micro_open_auctions.xml       | 1944 ++++++
 .../XMark/SplitFiles/people/micro_people.xml    |  855 +++
 .../XMark/SplitFiles/regions/micro_regions.xml  | 2365 +++++++
 .../src/test/resources/VXQueryCatalog.xml       |   19 +-
 .../resources/VXQuerySingleAlternateCatalog.xml |    3 +-
 .../src/test/resources/VXQuerySingleCatalog.xml |    2 +-
 .../src/test/resources/VXQueryXMarkCatalog.xml  |   77 +
 .../src/test/resources/XMarkCatalog.xml         |   61 +
 .../FunctionsAndOperatorsOnNumericsQueries.xml  |    2 +-
 ...nctionsAndOperatorsThatGenerateSequences.xml |   28 +
 .../resources/cat/GhcndPartition2Queries.xml    |    2 +-
 .../cat/GhcndRecordsPartition2Queries.xml       |    5 +
 .../cat/GhcndRecordsPartition4Queries.xml       |    5 +
 .../test/resources/cat/SingleAlternateQuery.xml |    2 +-
 .../src/test/resources/cat/SingleQuery.xml      |    2 -
 .../test/resources/cat/XMarkOriginalQueries.xml |  123 +
 .../src/test/resources/cat/XMarkQueries.xml     |  123 +
 206 files changed, 21307 insertions(+), 1756 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/vxquery/blob/b4bb8490/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/RewriteRuleset.java
----------------------------------------------------------------------
diff --cc vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/RewriteRuleset.java
index 1affeed,c3d0358..1afdead
--- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/RewriteRuleset.java
+++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/RewriteRuleset.java
@@@ -116,8 -128,10 +129,11 @@@ public class RewriteRuleset 
          normalization.add(new SetCollectionDataSourceRule());
          normalization.add(new IntroduceCollectionRule());
          normalization.add(new RemoveUnusedAssignAndAggregateRule());
 +        normalization.add(new CollectionWithTagRule());
  
+         normalization.add(new ConsolidateDescandantChild());
+ 
+         normalization.add(new ReplaceSourceMapInDocExpression());
          // Adds child steps to the data source scan.
          // TODO Replace consolidate with a new child function that takes multiple paths.
          //        normalization.add(new ConsolidateUnnestsRule());

http://git-wip-us.apache.org/repos/asf/vxquery/blob/b4bb8490/vxquery-xtest/pom.xml
----------------------------------------------------------------------
diff --cc vxquery-xtest/pom.xml
index 44a4f67,9e83fd7..fa7cac2
--- a/vxquery-xtest/pom.xml
+++ b/vxquery-xtest/pom.xml
@@@ -1,214 -1,213 +1,228 @@@
- <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor 
- 	license agreements. See the NOTICE file distributed with this work for additional 
- 	information regarding copyright ownership. The ASF licenses this file to 
- 	You under the Apache License, Version 2.0 (the "License"); you may not use 
- 	this file except in compliance with the License. You may obtain a copy of 
- 	the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required 
- 	by applicable law or agreed to in writing, software distributed under the 
- 	License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS 
- 	OF ANY KIND, either express or implied. See the License for the specific 
- 	language governing permissions and limitations under the License. -->
- <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- 	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- 	<modelVersion>4.0.0</modelVersion>
- 
- 	<parent>
- 		<groupId>org.apache.vxquery</groupId>
- 		<artifactId>apache-vxquery</artifactId>
- 		<version>0.6-SNAPSHOT</version>
- 	</parent>
- 
- 	<artifactId>apache-vxquery-xtest</artifactId>
- 	<packaging>jar</packaging>
- 	<name>VXQuery XTest</name>
- 	<description>Apache VXQuery Test Driver</description>
- 
- 	<distributionManagement>
- 		<site>
- 			<id>vxquery.website</id>
- 			<name>VXQuery Website</name>
- 			<url>file:../site/vxquery-xtest/</url>
- 		</site>
- 	</distributionManagement>
- 
- 	<build>
- 		<plugins>
- 			<plugin>
- 				<groupId>org.codehaus.mojo</groupId>
- 				<artifactId>appassembler-maven-plugin</artifactId>
- 				<version>1.3</version>
- 				<executions>
- 					<execution>
- 						<configuration>
- 							<programs>
- 								<program>
- 									<mainClass>org.apache.vxquery.xtest.Main</mainClass>
- 									<name>xtest</name>
- 								</program>
- 								<program>
- 									<mainClass>org.apache.vxquery.xtest.util.DiskPerformance</mainClass>
- 									<name>diskperformance</name>
- 								</program>
- 							</programs>
- 							<repositoryLayout>flat</repositoryLayout>
- 							<repositoryName>lib</repositoryName>
- 						</configuration>
- 						<phase>package</phase>
- 						<goals>
- 							<goal>assemble</goal>
- 						</goals>
- 					</execution>
- 				</executions>
- 			</plugin>
- 			<plugin>
- 				<artifactId>maven-resources-plugin</artifactId>
- 				<executions>
- 					<execution>
- 						<id>copy-xtest-scripts</id>
- 						<phase>package</phase>
- 						<goals>
- 							<goal>copy-resources</goal>
- 						</goals>
- 						<configuration>
- 							<outputDirectory>target/appassembler/bin</outputDirectory>
- 							<resources>
- 								<resource>
- 									<directory>src/main/resources/scripts</directory>
- 								</resource>
- 							</resources>
- 						</configuration>
- 					</execution>
- 					<execution>
- 						<id>copy-xtest-conf</id>
- 						<phase>package</phase>
- 						<goals>
- 							<goal>copy-resources</goal>
- 						</goals>
- 						<configuration>
- 							<outputDirectory>target/appassembler/conf</outputDirectory>
- 							<resources>
- 								<resource>
- 									<directory>src/main/resources/conf</directory>
- 								</resource>
- 							</resources>
- 						</configuration>
- 					</execution>
- 				</executions>
- 			</plugin>
- 			<plugin>
- 				<artifactId>maven-antrun-plugin</artifactId>
- 				<executions>
- 					<execution>
- 						<id>generate-site</id>
- 						<phase>none</phase>
- 					</execution>
- 				</executions>
- 			</plugin>
- 			<plugin>
- 				<groupId>org.apache.maven.plugins</groupId>
- 				<artifactId>maven-surefire-plugin</artifactId>
- 				<configuration>
- 					<!-- <argLine>-agentpath:"${yourkit.home}/bin/mac/libyjpagent.jnilib=sampling"</argLine> -->
- 				</configuration>
- 			</plugin>
- 		</plugins>
- 	</build>
- 
- 	<dependencies>
- 		<dependency>
- 			<groupId>org.apache.vxquery</groupId>
- 			<artifactId>apache-vxquery-core</artifactId>
- 			<version>0.6-SNAPSHOT</version>
- 		</dependency>
+ <!--
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
  
- 		<dependency>
- 			<groupId>edu.uci.ics.hyracks</groupId>
- 			<artifactId>hyracks-api</artifactId>
- 		</dependency>
+       http://www.apache.org/licenses/LICENSE-2.0
  
- 		<dependency>
- 			<groupId>edu.uci.ics.hyracks</groupId>
- 			<artifactId>hyracks-client</artifactId>
- 		</dependency>
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+ -->
+ <project
+     xmlns="http://maven.apache.org/POM/4.0.0"
+     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+     <modelVersion>4.0.0</modelVersion>
  
- 		<dependency>
- 			<groupId>edu.uci.ics.hyracks</groupId>
- 			<artifactId>hyracks-control-cc</artifactId>
- 		</dependency>
+     <parent>
+         <groupId>org.apache.vxquery</groupId>
+         <artifactId>apache-vxquery</artifactId>
+         <version>0.6-SNAPSHOT</version>
+     </parent>
  
- 		<dependency>
- 			<groupId>edu.uci.ics.hyracks</groupId>
- 			<artifactId>hyracks-control-nc</artifactId>
- 		</dependency>
+     <artifactId>apache-vxquery-xtest</artifactId>
+     <packaging>jar</packaging>
+     <name>VXQuery XTest</name>
+     <description>Apache VXQuery Test Driver</description>
  
- 		<dependency>
- 			<groupId>edu.uci.ics.hyracks</groupId>
- 			<artifactId>hyracks-dataflow-std</artifactId>
- 		</dependency>
+     <distributionManagement>
+         <site>
+             <id>vxquery.website</id>
+             <name>VXQuery Website</name>
+             <url>file:../site/vxquery-xtest/</url>
+         </site>
+     </distributionManagement>
+ 
+     <build>
+         <plugins>
+             <plugin>
+                 <groupId>org.codehaus.mojo</groupId>
+                 <artifactId>appassembler-maven-plugin</artifactId>
+                 <version>1.3</version>
+                 <executions>
+                     <execution>
+                         <configuration>
+                             <programs>
+                                 <program>
+                                     <mainClass>org.apache.vxquery.xtest.Main</mainClass>
+                                     <name>xtest</name>
+                                 </program>
+                                 <program>
+                                     <mainClass>org.apache.vxquery.xtest.util.DiskPerformance</mainClass>
+                                     <name>diskperformance</name>
+                                 </program>
+                             </programs>
+                             <repositoryLayout>flat</repositoryLayout>
+                             <repositoryName>lib</repositoryName>
+                         </configuration>
+                         <phase>package</phase>
+                         <goals>
+                             <goal>assemble</goal>
+                         </goals>
+                     </execution>
+                 </executions>
+             </plugin>
+             <plugin>
+                 <artifactId>maven-resources-plugin</artifactId>
+                 <executions>
+                     <execution>
+                         <id>copy-xtest-scripts</id>
+                         <phase>package</phase>
+                         <goals>
+                             <goal>copy-resources</goal>
+                         </goals>
+                         <configuration>
+                             <outputDirectory>target/appassembler/bin</outputDirectory>
+                             <resources>
+                                 <resource>
+                                     <directory>src/main/resources/scripts</directory>
+                                 </resource>
+                             </resources>
+                         </configuration>
+                     </execution>
+                     <execution>
+                         <id>copy-xtest-conf</id>
+                         <phase>package</phase>
+                         <goals>
+                             <goal>copy-resources</goal>
+                         </goals>
+                         <configuration>
+                             <outputDirectory>target/appassembler/conf</outputDirectory>
+                             <resources>
+                                 <resource>
+                                     <directory>src/main/resources/conf</directory>
+                                 </resource>
+                             </resources>
+                         </configuration>
+                     </execution>
+                 </executions>
+             </plugin>
+             <plugin>
+                 <artifactId>maven-antrun-plugin</artifactId>
+                 <executions>
+                     <execution>
+                         <id>generate-site</id>
+                         <phase>none</phase>
+                     </execution>
+                 </executions>
+             </plugin>
+             <plugin>
+                 <groupId>org.apache.maven.plugins</groupId>
+                 <artifactId>maven-surefire-plugin</artifactId>
+                 <configuration>
+                      <!-- <argLine>-agentpath:"${yourkit.home}/bin/mac/libyjpagent.jnilib=sampling"</argLine> -->
+                     <excludes>
+                         <exclude>**/AbstractXQueryTest.java</exclude>
+                         <exclude>**/VXQueryXMarkTest.java</exclude>
+                         <exclude>**/XMarkTest.java</exclude>
+                         <exclude>**/XQTSTest.java</exclude>
+                     </excludes>
+                 </configuration>
+             </plugin>
+         </plugins>
+     </build>
+ 
+     <dependencies>
+         <dependency>
+             <groupId>org.apache.vxquery</groupId>
+             <artifactId>apache-vxquery-core</artifactId>
+             <version>0.6-SNAPSHOT</version>
+         </dependency>
+ 
+         <dependency>
+             <groupId>edu.uci.ics.hyracks</groupId>
+             <artifactId>hyracks-api</artifactId>
+         </dependency>
+ 
+         <dependency>
+             <groupId>edu.uci.ics.hyracks</groupId>
+             <artifactId>hyracks-client</artifactId>
+         </dependency>
+ 
+         <dependency>
+             <groupId>edu.uci.ics.hyracks</groupId>
+             <artifactId>hyracks-control-cc</artifactId>
+         </dependency>
+ 
+         <dependency>
+             <groupId>edu.uci.ics.hyracks</groupId>
+             <artifactId>hyracks-control-nc</artifactId>
+         </dependency>
+ 
+         <dependency>
+             <groupId>edu.uci.ics.hyracks</groupId>
+             <artifactId>hyracks-dataflow-std</artifactId>
+         </dependency>
  
 -        <dependency>
 -            <groupId>org.mortbay.jetty</groupId>
 -            <artifactId>jetty</artifactId>
 -            <scope>compile</scope>
 -        </dependency>
 -    </dependencies>
 +		<dependency>
 +			<groupId>edu.uci.ics.hyracks</groupId>
 +			<artifactId>hyracks-hdfs-2.x</artifactId>
 +		</dependency>
 +
 +		<dependency>
 +			<groupId>commons-io</groupId>
 +			<artifactId>commons-io</artifactId>
 +		</dependency>
 +
 +		<dependency>
 +			<groupId>org.apache.hadoop</groupId>
 +			<artifactId>hadoop-hdfs</artifactId>
 +		</dependency>
 +
 +		<dependency>
 +			<groupId>org.mortbay.jetty</groupId>
 +			<artifactId>jetty</artifactId>
 +			<scope>compile</scope>
 +		</dependency>
 +	</dependencies>
  
- 	<reporting>
- 		<plugins>
- 			<plugin>
- 				<groupId>org.apache.maven.plugins</groupId>
- 				<artifactId>maven-project-info-reports-plugin</artifactId>
- 				<reportSets>
- 					<reportSet>
- 						<reports>
- 							<report>index</report>
- 							<report>dependencies</report>
- 							<report>plugins</report>
- 						</reports>
- 					</reportSet>
- 				</reportSets>
- 				<configuration>
- 					<linkOnly>true</linkOnly>
- 					<dependencyLocationsEnabled>false</dependencyLocationsEnabled>
- 				</configuration>
- 			</plugin>
- 			<plugin>
- 				<groupId>org.apache.rat</groupId>
- 				<artifactId>apache-rat-plugin</artifactId>
- 				<version>${apache-rat-plugin.version}</version>
- 				<configuration>
- 					<excludes>
- 						<exclude>**/ExpectedTestResults/**/*</exclude>
- 						<exclude>**/xqts.txt</exclude>
- 						<exclude>test-suites/**/*</exclude>
- 					</excludes>
- 					<numUnapprovedLicenses>0</numUnapprovedLicenses>
- 					<maxmemory>2g</maxmemory>
- 				</configuration>
- 			</plugin>
- 			<plugin>
- 				<groupId>org.apache.maven.plugins</groupId>
- 				<artifactId>maven-javadoc-plugin</artifactId>
- 				<configuration>
- 					<notimestamp>true</notimestamp>
- 					<maxmemory>2g</maxmemory>
- 				</configuration>
- 			</plugin>
- 		</plugins>
- 	</reporting>
+     <reporting>
+         <plugins>
+             <plugin>
+                 <groupId>org.apache.maven.plugins</groupId>
+                 <artifactId>maven-project-info-reports-plugin</artifactId>
+                 <reportSets>
+                     <reportSet>
+                         <reports>
+                             <report>index</report>
+                             <report>dependencies</report>
+                             <report>plugins</report>
+                         </reports>
+                     </reportSet>
+                 </reportSets>
+                 <configuration>
+                     <linkOnly>true</linkOnly>
+                     <dependencyLocationsEnabled>false</dependencyLocationsEnabled>
+                 </configuration>
+             </plugin>
+             <plugin>
+                 <groupId>org.apache.rat</groupId>
+                 <artifactId>apache-rat-plugin</artifactId>
+                 <version>${apache-rat-plugin.version}</version>
+                 <configuration>
+                     <excludes>
+                         <exclude>**/ExpectedTestResults/**/*</exclude>
+                         <exclude>**/xqts.txt</exclude>
+                         <exclude>test-suite*/**/*</exclude>
+                     </excludes>
+                     <numUnapprovedLicenses>0</numUnapprovedLicenses>
+                     <maxmemory>2g</maxmemory>
+                 </configuration>
+             </plugin>
+             <plugin>
+                 <groupId>org.apache.maven.plugins</groupId>
+                 <artifactId>maven-javadoc-plugin</artifactId>
+                 <configuration>
+                     <notimestamp>true</notimestamp>
+                     <maxmemory>2g</maxmemory>
+                 </configuration>
+             </plugin>
+         </plugins>
+     </reporting>
  </project>

http://git-wip-us.apache.org/repos/asf/vxquery/blob/b4bb8490/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/XTestOptions.java
----------------------------------------------------------------------
diff --cc vxquery-xtest/src/main/java/org/apache/vxquery/xtest/XTestOptions.java
index 5ae4ba4,80fdd65..42845a1
--- a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/XTestOptions.java
+++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/XTestOptions.java
@@@ -41,15 -44,36 +44,36 @@@ public class XTestOptions 
      @Option(name = "-v", required = false, usage = "Verbose")
      boolean verbose;
  
-     @Option(name = "-keepalive", required = false, usage = "Milliseconds to keep server alive after tests have completed")
+     @Option(name = "-keepalive", required = false, usage = "Milliseconds to keep server alive after tests have completed.")
      long keepalive;
  
-     @Option(name = "-textreport", required = false, usage = "Text Report output file")
+     @Option(name = "-textreport", required = false, usage = "Text report output file.")
      String diffable;
  
-     @Option(name = "-xmlreport", required = false, usage = "XML Report output file")
+     @Option(name = "-xmlreport", required = false, usage = "XML report output file.")
      String xmlReport;
  
-     @Option(name = "-htmlreport", required = false, usage = "HTML Report output file")
+     @Option(name = "-htmlreport", required = false, usage = "HTML report output file.")
      String htmlReport;
+ 
+     @Option(name = "-showquery", usage = "Show query string.")
+     boolean showQuery;
+ 
+     @Option(name = "-showast", usage = "Show abstract syntax tree.")
+     boolean showAST;
+ 
+     @Option(name = "-showtet", usage = "Show translated expression tree.")
+     boolean showTET;
+ 
+     @Option(name = "-showoet", usage = "Show optimized expression tree.")
+     boolean showOET;
+ 
+     @Option(name = "-showrp", usage = "Show runtime plan.")
+     boolean showRP;
+ 
+     @Option(name = "-compileonly", usage = "Compile the query and stop.")
+     boolean compileOnly;
+ 
+     @Option(name = "-showresult", usage = "Show query result.")
+     boolean showResult;
 -}
 +    }

http://git-wip-us.apache.org/repos/asf/vxquery/blob/b4bb8490/vxquery-xtest/src/test/java/org/apache/vxquery/xtest/VXQueryTest.java
----------------------------------------------------------------------
diff --cc vxquery-xtest/src/test/java/org/apache/vxquery/xtest/VXQueryTest.java
index c4e1273,3704d07..4d0ddc0
--- a/vxquery-xtest/src/test/java/org/apache/vxquery/xtest/VXQueryTest.java
+++ b/vxquery-xtest/src/test/java/org/apache/vxquery/xtest/VXQueryTest.java
@@@ -16,27 -16,16 +16,20 @@@
  */
  package org.apache.vxquery.xtest;
  
- import static org.junit.Assert.fail;
- 
  import java.io.File;
 +import java.io.IOException;
  import java.util.Collection;
  
  import org.apache.commons.lang3.StringUtils;
- import org.junit.After;
 +import org.junit.AfterClass;
- import org.junit.Before;
 +import org.junit.BeforeClass;
- import org.junit.Test;
  import org.junit.runner.RunWith;
  import org.junit.runners.Parameterized;
  import org.junit.runners.Parameterized.Parameters;
  
  @RunWith(Parameterized.class)
- public class VXQueryTest {
-     private TestCase tc;
-     private TestRunner tr;
+ public class VXQueryTest extends AbstractXQueryTest {
 +    private static MiniDFS dfs;
  
      private static String VXQUERY_CATALOG = StringUtils.join(new String[] { "src", "test", "resources",
              "VXQueryCatalog.xml" }, File.separator);
@@@ -71,59 -41,15 +45,30 @@@
          return tests;
      }
  
-     public VXQueryTest(TestCase tc) throws Exception {
-         this.tc = tc;
-         tr = new TestRunner(getVXQueryOptions());
-     }
- 
-     @Before
-     public void beforeTest() throws Exception {
-         tr.open();
-     }
- 
-     @Test
-     public void test() throws Exception {
-         TestCaseResult result = tr.run(tc);
-         switch (result.state) {
-             case EXPECTED_ERROR_GOT_DIFFERENT_ERROR:
-             case EXPECTED_ERROR_GOT_FAILURE:
-             case EXPECTED_ERROR_GOT_RESULT:
-             case EXPECTED_RESULT_GOT_DIFFERENT_RESULT:
-             case EXPECTED_RESULT_GOT_ERROR:
-             case EXPECTED_RESULT_GOT_FAILURE:
-                 fail(result.state + " (" + result.time + " ms): " + result.testCase.getXQueryDisplayName());
-                 break;
-             case EXPECTED_ERROR_GOT_SAME_ERROR:
-             case EXPECTED_RESULT_GOT_SAME_RESULT:
-                 break;
-             case NO_RESULT_FILE:
-                 break;
-         }
+     public static XTestOptions getOptions() {
+         XTestOptions options = getDefaultTestOptions();
+         options.catalog = VXQUERY_CATALOG;
+         return options;
      }
  
-     @After
-     public void afterTest() throws Exception {
-         tr.close();
+     @Override
+     protected XTestOptions getTestOptions() {
+         return getOptions();
      }
  
 +    @BeforeClass
 +    public static void setupHDFS() {
 +        dfs = new MiniDFS();
 +        try {
 +            dfs.startHDFS();
 +        } catch (IOException e) {
 +            System.err.println(e);
 +        }
 +    }
 +
 +    @AfterClass
 +    public static void shutdownHDFS() {
 +        dfs.shutdownHDFS();
 +    }
 +
  }

http://git-wip-us.apache.org/repos/asf/vxquery/blob/b4bb8490/vxquery-xtest/src/test/resources/VXQueryCatalog.xml
----------------------------------------------------------------------
diff --cc vxquery-xtest/src/test/resources/VXQueryCatalog.xml
index 9691e6c,6f7acee..f75ce49
--- a/vxquery-xtest/src/test/resources/VXQueryCatalog.xml
+++ b/vxquery-xtest/src/test/resources/VXQueryCatalog.xml
@@@ -178,17 -193,4 +195,17 @@@
           &GhcndRecordsPartition4Queries;
        </test-group>
     </test-group>
 +   <test-group name="HDFSAggregateQueries" featureOwner="Efi Kaltirimidou">
 +      <GroupInfo>
 +         <title>Aggregate Partition Queries in HDFS</title>
 +         <description/>
 +      </GroupInfo>
 +      <test-group name="CollectionReadFromHDFSAggregateTests" featureOwner="Efi Kaltirimidou">
 +         <GroupInfo>
 +            <title>Aggregate HDFS Execution Tests</title>
 +            <description/>
 +         </GroupInfo>
 +        &HDFSAggregateQueries;
 +      </test-group>
 +   </test-group>
- </test-suite>
+ </test-suite>