VXQUERY-181 - Move to Hyracks 0.2.16 The change is touches a many files since Hyracks is part of an incubating project now. Otherwise its a pretty small change to make they system work with 0.2.16 (A changes to the frame classes). Also includes the addition of benchmark queries for BaseX and images for the website.
Project: http://git-wip-us.apache.org/repos/asf/vxquery/repo Commit: http://git-wip-us.apache.org/repos/asf/vxquery/commit/4684567b Tree: http://git-wip-us.apache.org/repos/asf/vxquery/tree/4684567b Diff: http://git-wip-us.apache.org/repos/asf/vxquery/diff/4684567b Branch: refs/heads/master Commit: 4684567b4fe5d683e648f578e3d61fdb7b5b30cf Parents: ef31a81 Author: Preston Carman <[email protected]> Authored: Tue Oct 27 13:38:48 2015 -0700 Committer: Preston Carman <[email protected]> Committed: Tue Oct 27 13:38:48 2015 -0700 ---------------------------------------------------------------------- pom.xml | 45 +++-- src/site/apt/developer_get_started.apt | 8 +- src/site/apt/index.apt | 5 +- src/site/apt/user_cluster_installation.apt | 30 +++- .../images/eclipse_xml_editor_screen.png | Bin 0 -> 75948 bytes src/site/resources/images/vxquery_cluster.png | Bin 0 -> 22024 bytes .../images/vxquery_cluster_with_hdfs.png | Bin 0 -> 31459 bytes src/site/resources/images/vxquery_stack.png | Bin 0 -> 13264 bytes vxquery-benchmark/pom.xml | 1 - .../noaa-ghcn-daily/other_systems/basex/q00.xq | 32 ++++ .../noaa-ghcn-daily/other_systems/basex/q01.xq | 25 +++ .../noaa-ghcn-daily/other_systems/basex/q02.xq | 31 ++++ .../noaa-ghcn-daily/other_systems/basex/q03.xq | 25 +++ .../noaa-ghcn-daily/other_systems/basex/q04.xq | 30 ++++ .../noaa-ghcn-daily/other_systems/basex/q05.xq | 33 ++++ .../noaa-ghcn-daily/other_systems/basex/q06.xq | 30 ++++ .../noaa-ghcn-daily/other_systems/basex/q07.xq | 32 ++++ .../other_systems/basex_index/q00.xq | 32 ++++ .../other_systems/basex_index/q01.xq | 25 +++ .../other_systems/basex_index/q02.xq | 31 ++++ .../other_systems/basex_index/q03.xq | 25 +++ .../other_systems/basex_index/q04.xq | 30 ++++ .../other_systems/basex_index/q05.xq | 33 ++++ .../other_systems/basex_index/q06.xq | 30 ++++ .../other_systems/basex_index/q07.xq | 32 ++++ .../basex_index/sensors_database_add.bxs | 2 + .../basex_index/sensors_database_remove.bxs | 1 + .../basex_index/stations_database_add.bxs | 2 + .../basex_index/stations_database_remove.bxs | 1 + .../other_systems/basex_scripts/.basex | 0 .../other_systems/basex_scripts/README | 9 + .../basex_scripts/run_basex_index_tests.sh | 63 +++++++ .../basex_scripts/run_basex_tests.sh | 45 +++++ .../mrql_scripts/run_group_test.sh | 3 +- .../mrql_scripts/run_mrql_tests.sh | 2 +- .../saxon_scripts/run_saxon_tests.sh | 9 +- vxquery-cli/pom.xml | 16 +- .../java/org/apache/vxquery/cli/VXQuery.java | 49 +++--- vxquery-core/pom.xml | 12 +- .../vxquery/collations/CodepointCollation.java | 2 +- .../apache/vxquery/collations/Collation.java | 2 +- .../vxquery/compiler/CompilerControlBlock.java | 2 +- .../VXQueryBinaryBooleanInspectorFactory.java | 10 +- .../VXQueryBinaryIntegerInspectorFactory.java | 10 +- .../VXQueryComparatorFactoryProvider.java | 10 +- .../algebricks/VXQueryConstantValue.java | 4 +- .../VXQueryExpressionRuntimeProvider.java | 48 ++--- .../algebricks/VXQueryGlobalDataFactory.java | 6 +- .../algebricks/VXQueryNullWriterFactory.java | 10 +- .../algebricks/VXQueryPrinterFactory.java | 6 +- .../VXQueryPrinterFactoryProvider.java | 8 +- ...ueryLogicalExpressionPrettyPrintVisitor.java | 30 ++-- .../compiler/rewriter/RewriteRuleset.java | 84 ++++----- .../rewriter/VXQueryOptimizationContext.java | 18 +- .../rewriter/rules/AbstractCollectionRule.java | 30 ++-- ...tractRemoveRedundantTypeExpressionsRule.java | 14 +- .../AbstractUsedVariablesProcessingRule.java | 18 +- .../rules/AbstractVXQueryAggregateRule.java | 6 +- .../rewriter/rules/CollectionFileDomain.java | 2 +- .../rules/ConsolidateAssignAggregateRule.java | 34 ++-- .../rules/ConsolidateDescandantChild.java | 22 +-- .../rewriter/rules/ConsolidateUnnestsRule.java | 20 +-- ...tAssignSortDistinctNodesToOperatorsRule.java | 48 ++--- .../rules/ConvertAssignToAggregateRule.java | 36 ++-- .../rules/ConvertAssignToUnnestRule.java | 22 +-- .../ConvertFromAlgebricksExpressionsRule.java | 24 +-- .../ConvertToAlgebricksExpressionsRule.java | 26 +-- .../EliminateSubplanForSingleItemsRule.java | 32 ++-- .../EliminateSubplanForSinglePathsRule.java | 14 +- .../EliminateUnnestAggregateSequencesRule.java | 28 +-- .../EliminateUnnestAggregateSubplanRule.java | 30 ++-- .../rewriter/rules/IntroduceCollectionRule.java | 16 +- .../rules/IntroduceTwoStepAggregateRule.java | 28 +-- .../rules/PushChildIntoDataScanRule.java | 20 +-- .../rules/PushFunctionsOntoEqJoinBranches.java | 32 ++-- .../RemoveRedundantBooleanExpressionsRule.java | 2 +- .../RemoveRedundantCastExpressionsRule.java | 2 +- .../RemoveRedundantDataExpressionsRule.java | 2 +- .../RemoveRedundantPromoteExpressionsRule.java | 2 +- .../RemoveRedundantTreatExpressionsRule.java | 2 +- .../RemoveUnusedSortDistinctNodesRule.java | 32 ++-- .../rules/RemoveUnusedUnnestIterateRule.java | 28 +-- .../rules/ReplaceSourceMapInDocExpression.java | 26 +-- .../rules/SetCollectionDataSourceRule.java | 6 +- .../rules/SetVariableIdContextRule.java | 14 +- .../ExtractFunctionsFromJoinConditionRule.java | 32 ++-- .../InlineNestedVariablesRule.java | 26 +-- ...oveFreeVariableOperatorOutOfSubplanRule.java | 22 +-- .../ConstantPropertyPropagationPolicy.java | 2 +- .../IPropertyPropagationPolicy.java | 2 +- .../InputPropertyPropagationPolicy.java | 2 +- .../cardinality/Cardinality.java | 2 +- .../documentorder/DocumentOrder.java | 2 +- .../DocumentOrderNOPropagationPolicy.java | 2 +- .../DocumentOrderYESPropagationPolicy.java | 2 +- .../uniquenodes/UniqueNodes.java | 2 +- .../UniqueNodesNOPropagationPolicy.java | 2 +- .../UniqueNodesYESPropagationPolicy.java | 2 +- .../rules/util/CardinalityRuleToolbox.java | 8 +- .../rewriter/rules/util/ExpressionToolbox.java | 24 +-- .../rewriter/rules/util/OperatorToolbox.java | 22 +-- .../context/DefaultDocumentURIResolverImpl.java | 2 +- .../context/DelegatingStaticContextImpl.java | 2 +- .../vxquery/context/DocumentURIResolver.java | 2 +- .../apache/vxquery/context/DynamicContext.java | 6 +- .../vxquery/context/DynamicContextImpl.java | 8 +- .../context/DynamicContextImplFactory.java | 8 +- .../vxquery/context/IDynamicContextFactory.java | 4 +- .../vxquery/context/IStaticContextFactory.java | 2 +- .../vxquery/context/ModuleURIResolver.java | 2 +- .../context/RootStaticContextFactory.java | 2 +- .../vxquery/context/RootStaticContextImpl.java | 2 +- .../apache/vxquery/context/StaticContext.java | 2 +- .../vxquery/context/StaticContextImpl.java | 2 +- .../context/StaticContextImplFactory.java | 2 +- .../vxquery/context/ThinStaticContextImpl.java | 2 +- .../context/ThinStaticContextImplFactory.java | 2 +- .../apache/vxquery/context/XQueryVariable.java | 4 +- .../datamodel/accessors/PointableCache.java | 4 +- .../datamodel/accessors/PointablePool.java | 6 +- .../accessors/PointablePoolFactory.java | 20 +-- .../datamodel/accessors/SequencePointable.java | 14 +- .../accessors/TaggedValuePointable.java | 14 +- .../datamodel/accessors/TypedPointables.java | 16 +- .../accessors/atomic/CodedQNamePointable.java | 12 +- .../accessors/atomic/XSBinaryPointable.java | 8 +- .../accessors/atomic/XSDatePointable.java | 14 +- .../accessors/atomic/XSDateTimePointable.java | 16 +- .../accessors/atomic/XSDecimalPointable.java | 20 +-- .../accessors/atomic/XSDurationPointable.java | 14 +- .../accessors/atomic/XSQNamePointable.java | 10 +- .../accessors/atomic/XSTimePointable.java | 14 +- .../accessors/nodes/AbstractNodePointable.java | 4 +- .../accessors/nodes/AttributeNodePointable.java | 10 +- .../accessors/nodes/DocumentNodePointable.java | 10 +- .../accessors/nodes/ElementNodePointable.java | 14 +- .../accessors/nodes/NodeTreePointable.java | 22 +-- .../accessors/nodes/PINodePointable.java | 12 +- .../nodes/TextOrCommentNodePointable.java | 10 +- .../builders/atomic/StringValueBuilder.java | 4 +- .../builders/atomic/UTF8StringBuilder.java | 6 +- .../builders/base/AbstractBuilder.java | 4 +- .../builders/base/AbstractValueBuilder.java | 2 +- .../datamodel/builders/base/IValueBuilder.java | 2 +- .../builders/nodes/AbstractNodeBuilder.java | 4 +- .../builders/nodes/AttributeNodeBuilder.java | 6 +- .../builders/nodes/CommentNodeBuilder.java | 6 +- .../builders/nodes/DictionaryBuilder.java | 14 +- .../builders/nodes/DocumentNodeBuilder.java | 6 +- .../builders/nodes/ElementNodeBuilder.java | 12 +- .../builders/nodes/NodeSubTreeBuilder.java | 4 +- .../datamodel/builders/nodes/PINodeBuilder.java | 6 +- .../builders/nodes/TextNodeBuilder.java | 6 +- .../builders/sequence/SequenceBuilder.java | 8 +- .../vxquery/datamodel/values/ValueTag.java | 2 +- .../vxquery/datamodel/values/XDMConstants.java | 8 +- .../DefaultSystemExceptionFactory.java | 2 +- .../vxquery/exceptions/ErrorReporter.java | 2 +- .../vxquery/exceptions/SystemException.java | 2 +- .../exceptions/SystemExceptionFactory.java | 2 +- .../exceptions/VXQueryDataException.java | 2 +- .../vxquery/exceptions/WarningReporter.java | 2 +- .../vxquery/functions/BuiltinFunction.java | 2 +- .../vxquery/functions/ExternalFunction.java | 2 +- .../org/apache/vxquery/functions/Function.java | 10 +- .../org/apache/vxquery/functions/Operator.java | 2 +- .../org/apache/vxquery/functions/Signature.java | 2 +- .../functions/UserDefinedXQueryFunction.java | 4 +- .../vxquery/metadata/QueryResultDataSink.java | 12 +- .../metadata/QueryResultSetDataSink.java | 12 +- .../metadata/VXQueryCollectionDataSource.java | 16 +- .../VXQueryCollectionOperatorDescriptor.java | 42 ++--- .../vxquery/metadata/VXQueryIOFileFilter.java | 2 +- .../metadata/VXQueryMetadataProvider.java | 58 +++--- .../org/apache/vxquery/result/ResultUtils.java | 6 +- .../VXQueryRawBinaryHashFunctionFactory.java | 6 +- ...AbstractMaxMinAggregateEvaluatorFactory.java | 14 +- .../AbstractMaxMinScalarEvaluatorFactory.java | 14 +- .../AvgGlobalAggregateEvaluatorFactory.java | 16 +- .../AvgLocalAggregateEvaluatorFactory.java | 14 +- .../FnAvgAggregateEvaluatorFactory.java | 14 +- .../aggregate/FnAvgScalarEvaluatorFactory.java | 14 +- .../FnCountAggregateEvaluatorFactory.java | 14 +- .../FnCountScalarEvaluatorFactory.java | 14 +- .../FnMaxAggregateEvaluatorFactory.java | 4 +- .../aggregate/FnMaxScalarEvaluatorFactory.java | 4 +- .../FnMinAggregateEvaluatorFactory.java | 4 +- .../aggregate/FnMinScalarEvaluatorFactory.java | 4 +- .../FnSumAggregateEvaluatorFactory.java | 14 +- .../aggregate/FnSumScalarEvaluatorFactory.java | 16 +- .../arithmetic/AbstractArithmeticOperation.java | 10 +- ...bstractArithmeticScalarEvaluatorFactory.java | 12 +- .../functions/arithmetic/AddOperation.java | 12 +- .../arithmetic/AddScalarEvaluatorFactory.java | 4 +- .../functions/arithmetic/DivideOperation.java | 12 +- .../DivideScalarEvaluatorFactory.java | 4 +- .../arithmetic/IntegerDivideOperation.java | 12 +- .../IntegerDivideScalarEvaluatorFactory.java | 4 +- .../functions/arithmetic/ModOperation.java | 12 +- .../arithmetic/ModScalarEvaluatorFactory.java | 4 +- .../functions/arithmetic/MultiplyOperation.java | 12 +- .../MultiplyScalarEvaluatorFactory.java | 4 +- .../functions/arithmetic/SubtractOperation.java | 12 +- .../SubtractScalarEvaluatorFactory.java | 4 +- ...ctTaggedValueArgumentAggregateEvaluator.java | 10 +- ...dValueArgumentAggregateEvaluatorFactory.java | 14 +- ...tractTaggedValueArgumentScalarEvaluator.java | 10 +- ...ggedValueArgumentScalarEvaluatorFactory.java | 10 +- ...ctTaggedValueArgumentUnnestingEvaluator.java | 10 +- ...dValueArgumentUnnestingEvaluatorFactory.java | 14 +- .../bool/AndScalarEvaluatorFactory.java | 16 +- .../bool/FnBooleanScalarEvaluatorFactory.java | 26 +-- .../bool/FnFalseScalarEvaluatorFactory.java | 12 +- .../bool/FnNotScalarEvaluatorFactory.java | 14 +- .../bool/FnTrueScalarEvaluatorFactory.java | 12 +- .../bool/OrScalarEvaluatorFactory.java | 16 +- .../functions/cast/AbstractCastToOperation.java | 16 +- .../cast/CastScalarEvaluatorFactory.java | 14 +- .../functions/cast/CastToAnyURIOperation.java | 4 +- .../cast/CastToBase64BinaryOperation.java | 6 +- .../functions/cast/CastToBooleanOperation.java | 12 +- .../functions/cast/CastToByteOperation.java | 20 +-- .../cast/CastToDTDurationOperation.java | 8 +- .../functions/cast/CastToDateOperation.java | 4 +- .../functions/cast/CastToDateTimeOperation.java | 4 +- .../functions/cast/CastToDecimalOperation.java | 22 +-- .../functions/cast/CastToDoubleOperation.java | 20 +-- .../functions/cast/CastToDurationOperation.java | 8 +- .../functions/cast/CastToEntityOperation.java | 2 +- .../functions/cast/CastToFloatOperation.java | 20 +-- .../functions/cast/CastToGDayOperation.java | 4 +- .../cast/CastToGMonthDayOperation.java | 4 +- .../functions/cast/CastToGMonthOperation.java | 4 +- .../cast/CastToGYearMonthOperation.java | 4 +- .../functions/cast/CastToGYearOperation.java | 4 +- .../cast/CastToHexBinaryOperation.java | 6 +- .../functions/cast/CastToIDOperation.java | 2 +- .../functions/cast/CastToIDREFOperation.java | 2 +- .../functions/cast/CastToIntOperation.java | 20 +-- .../functions/cast/CastToIntegerOperation.java | 20 +-- .../functions/cast/CastToLanguageOperation.java | 2 +- .../functions/cast/CastToLongOperation.java | 2 +- .../functions/cast/CastToNCNameOperation.java | 2 +- .../functions/cast/CastToNMTokenOperation.java | 2 +- .../functions/cast/CastToNameOperation.java | 2 +- .../cast/CastToNegativeIntegerOperation.java | 2 +- .../cast/CastToNonNegativeIntegerOperation.java | 2 +- .../cast/CastToNonPositiveIntegerOperation.java | 2 +- .../cast/CastToNormalizedStringOperation.java | 2 +- .../functions/cast/CastToNotationOperation.java | 4 +- .../cast/CastToPositiveIntegerOperation.java | 2 +- .../functions/cast/CastToQNameOperation.java | 6 +- .../functions/cast/CastToShortOperation.java | 20 +-- .../functions/cast/CastToStringOperation.java | 22 +-- .../functions/cast/CastToTimeOperation.java | 4 +- .../functions/cast/CastToTokenOperation.java | 2 +- .../cast/CastToUnsignedByteOperation.java | 2 +- .../cast/CastToUnsignedIntOperation.java | 2 +- .../cast/CastToUnsignedLongOperation.java | 2 +- .../cast/CastToUnsignedShortOperation.java | 2 +- .../cast/CastToUntypedAtomicOperation.java | 2 +- .../cast/CastToYMDurationOperation.java | 8 +- .../castable/AbstractCastableAsOperation.java | 16 +- .../castable/CastableAsAnyURIOperation.java | 4 +- .../CastableAsBase64BinaryOperation.java | 6 +- .../castable/CastableAsBooleanOperation.java | 14 +- .../castable/CastableAsByteOperation.java | 16 +- .../castable/CastableAsDTDurationOperation.java | 10 +- .../castable/CastableAsDateOperation.java | 6 +- .../castable/CastableAsDateTimeOperation.java | 6 +- .../castable/CastableAsDecimalOperation.java | 14 +- .../castable/CastableAsDoubleOperation.java | 20 +-- .../castable/CastableAsDurationOperation.java | 10 +- .../castable/CastableAsFloatOperation.java | 20 +-- .../castable/CastableAsGDayOperation.java | 6 +- .../castable/CastableAsGMonthDayOperation.java | 6 +- .../castable/CastableAsGMonthOperation.java | 6 +- .../castable/CastableAsGYearMonthOperation.java | 6 +- .../castable/CastableAsGYearOperation.java | 6 +- .../castable/CastableAsHexBinaryOperation.java | 6 +- .../castable/CastableAsIntOperation.java | 20 +-- .../castable/CastableAsIntegerOperation.java | 20 +-- .../castable/CastableAsLongOperation.java | 2 +- .../CastableAsNegativeIntegerOperation.java | 2 +- .../CastableAsNonNegativeIntegerOperation.java | 2 +- .../CastableAsNonPositiveIntegerOperation.java | 2 +- .../castable/CastableAsNotationOperation.java | 14 +- .../CastableAsPositiveIntegerOperation.java | 2 +- .../castable/CastableAsQNameOperation.java | 4 +- .../castable/CastableAsShortOperation.java | 18 +- .../castable/CastableAsStringOperation.java | 14 +- .../castable/CastableAsTimeOperation.java | 6 +- .../CastableAsUnsignedByteOperation.java | 2 +- .../CastableAsUnsignedIntOperation.java | 2 +- .../CastableAsUnsignedLongOperation.java | 2 +- .../CastableAsUnsignedShortOperation.java | 2 +- .../CastableAsUntypedAtomicOperation.java | 2 +- .../castable/CastableAsYMDurationOperation.java | 10 +- .../CastableScalarEvaluatorFactory.java | 14 +- .../AbstractDisjunctiveComparisonOperation.java | 14 +- .../AbstractNegatingComparisonOperation.java | 14 +- .../AbstractValueComparisonOperation.java | 14 +- ...ctValueComparisonScalarEvaluatorFactory.java | 16 +- .../comparison/ValueEqComparisonOperation.java | 16 +- ...ValueEqComparisonScalarEvaluatorFactory.java | 4 +- .../comparison/ValueGeComparisonOperation.java | 2 +- ...ValueGeComparisonScalarEvaluatorFactory.java | 4 +- .../comparison/ValueGtComparisonOperation.java | 2 +- ...ValueGtComparisonScalarEvaluatorFactory.java | 4 +- .../comparison/ValueLeComparisonOperation.java | 2 +- ...ValueLeComparisonScalarEvaluatorFactory.java | 4 +- .../comparison/ValueLtComparisonOperation.java | 16 +- ...ValueLtComparisonScalarEvaluatorFactory.java | 4 +- .../comparison/ValueNeComparisonOperation.java | 2 +- ...ValueNeComparisonScalarEvaluatorFactory.java | 4 +- ...GeneralComparisonScalarEvaluatorFactory.java | 18 +- ...neralEqComparisonScalarEvaluatorFactory.java | 4 +- ...neralGeComparisonScalarEvaluatorFactory.java | 4 +- ...neralGtComparisonScalarEvaluatorFactory.java | 4 +- ...neralLeComparisonScalarEvaluatorFactory.java | 4 +- ...neralLtComparisonScalarEvaluatorFactory.java | 4 +- ...neralNeComparisonScalarEvaluatorFactory.java | 4 +- .../IfThenElseScalarEvaluatorFactory.java | 16 +- ...ValueFromDateTimeScalarEvaluatorFactory.java | 12 +- ...ValueFromDurationScalarEvaluatorFactory.java | 16 +- ...ateTimeToTimezoneScalarEvaluatorFactory.java | 14 +- ...ustDateToTimezoneScalarEvaluatorFactory.java | 14 +- ...ustTimeToTimezoneScalarEvaluatorFactory.java | 14 +- .../FnCurrentDateScalarEvaluatorFactory.java | 12 +- ...FnCurrentDateTimeScalarEvaluatorFactory.java | 14 +- .../FnCurrentTimeScalarEvaluatorFactory.java | 14 +- .../FnDateTimeScalarEvaluatorFactory.java | 12 +- .../FnDayFromDateScalarEvaluatorFactory.java | 2 +- ...FnDayFromDateTimeScalarEvaluatorFactory.java | 2 +- ...nDaysFromDurationScalarEvaluatorFactory.java | 2 +- ...HoursFromDateTimeScalarEvaluatorFactory.java | 2 +- ...HoursFromDurationScalarEvaluatorFactory.java | 2 +- .../FnHoursFromTimeScalarEvaluatorFactory.java | 2 +- ...nImplicitTimezoneScalarEvaluatorFactory.java | 12 +- ...nutesFromDateTimeScalarEvaluatorFactory.java | 2 +- ...nutesFromDurationScalarEvaluatorFactory.java | 2 +- ...FnMinutesFromTimeScalarEvaluatorFactory.java | 2 +- .../FnMonthFromDateScalarEvaluatorFactory.java | 2 +- ...MonthFromDateTimeScalarEvaluatorFactory.java | 2 +- ...onthsFromDurationScalarEvaluatorFactory.java | 2 +- ...condsFromDateTimeScalarEvaluatorFactory.java | 2 +- ...condsFromDurationScalarEvaluatorFactory.java | 2 +- ...FnSecondsFromTimeScalarEvaluatorFactory.java | 2 +- ...nTimezoneFromDateScalarEvaluatorFactory.java | 2 +- ...ezoneFromDateTimeScalarEvaluatorFactory.java | 2 +- ...nTimezoneFromTimeScalarEvaluatorFactory.java | 2 +- .../FnYearFromDateScalarEvaluatorFactory.java | 2 +- ...nYearFromDateTimeScalarEvaluatorFactory.java | 2 +- ...YearsFromDurationScalarEvaluatorFactory.java | 2 +- .../error/FnErrorScalarEvaluatorFactory.java | 16 +- .../misc/FnDataScalarEvaluatorFactory.java | 14 +- .../AbstractNodeConstructorScalarEvaluator.java | 12 +- .../AbstractNodePositionalCheckEvaluator.java | 6 +- ...AttributeNodeConstructorScalarEvaluator.java | 10 +- ...teNodeConstructorScalarEvaluatorFactory.java | 10 +- .../CommentNodeConstructorScalarEvaluator.java | 10 +- ...ntNodeConstructorScalarEvaluatorFactory.java | 10 +- .../ElementNodeConstructorScalarEvaluator.java | 14 +- ...ntNodeConstructorScalarEvaluatorFactory.java | 10 +- .../FnDocAvailableScalarEvaluatorFactory.java | 18 +- .../node/FnDocScalarEvaluatorFactory.java | 18 +- .../node/FnNumberScalarEvaluatorFactory.java | 12 +- .../node/IdFromNodeScalarEvaluatorFactory.java | 12 +- .../LocalIdFromNodeScalarEvaluatorFactory.java | 12 +- .../functions/node/OpNodeAfterEvaluator.java | 2 +- .../node/OpNodeAfterEvaluatorFactory.java | 8 +- .../functions/node/OpNodeBeforeEvaluator.java | 2 +- .../node/OpNodeBeforeEvaluatorFactory.java | 8 +- .../node/PINodeConstructorScalarEvaluator.java | 10 +- ...PINodeConstructorScalarEvaluatorFactory.java | 10 +- .../TextNodeConstructorScalarEvaluator.java | 10 +- ...xtNodeConstructorScalarEvaluatorFactory.java | 10 +- .../TreeIdFromNodeScalarEvaluatorFactory.java | 12 +- ...NodesAscOrAtomicsScalarEvaluatorFactory.java | 12 +- .../numeric/AbstractNumericOperation.java | 6 +- .../AbstractNumericScalarEvaluatorFactory.java | 16 +- .../functions/numeric/FnAbsOperation.java | 8 +- .../numeric/FnAbsScalarEvaluatorFactory.java | 4 +- .../functions/numeric/FnCeilingOperation.java | 8 +- .../FnCeilingScalarEvaluatorFactory.java | 4 +- .../functions/numeric/FnFloorOperation.java | 8 +- .../numeric/FnFloorScalarEvaluatorFactory.java | 4 +- ...FnRoundHalfToEvenScalarEvaluatorFactory.java | 26 +-- .../functions/numeric/FnRoundOperation.java | 8 +- .../numeric/FnRoundScalarEvaluatorFactory.java | 4 +- ...ocalNameFromQNameScalarEvaluatorFactory.java | 16 +- ...spaceUriFromQNameScalarEvaluatorFactory.java | 16 +- ...FnPrefixFromQNameScalarEvaluatorFactory.java | 16 +- .../qname/FnQNameScalarEvaluatorFactory.java | 16 +- .../ConcatenateScalarEvaluatorFactory.java | 16 +- .../FnDistinctValuesScalarEvaluatorFactory.java | 18 +- .../sequence/FnEmptyScalarEvaluatorFactory.java | 12 +- .../FnExactlyOneScalarEvaluatorFactory.java | 12 +- .../FnExistsScalarEvaluatorFactory.java | 12 +- .../FnIndexOfScalarEvaluatorFactory.java | 16 +- .../FnInsertBeforeScalarEvaluatorFactory.java | 18 +- .../FnOneOrMoreScalarEvaluatorFactory.java | 12 +- .../FnRemoveScalarEvaluatorFactory.java | 18 +- .../FnReverseScalarEvaluatorFactory.java | 16 +- .../FnSubsequenceScalarEvaluatorFactory.java | 20 +-- .../FnUnorderedScalarEvaluatorFactory.java | 12 +- .../FnZeroOrOneScalarEvaluatorFactory.java | 12 +- .../IterateUnnestingEvaluatorFactory.java | 14 +- .../sequence/OpToScalarEvaluatorFactory.java | 16 +- .../SequenceAggregateEvaluatorFactory.java | 16 +- ...stractDescendantPathStepScalarEvaluator.java | 8 +- .../step/AbstractForwardAxisPathStep.java | 8 +- .../step/AbstractPathStepScalarEvaluator.java | 10 +- .../AbstractSinglePathStepScalarEvaluator.java | 12 +- .../step/AttributePathStepScalarEvaluator.java | 6 +- ...AttributePathStepScalarEvaluatorFactory.java | 10 +- .../step/ChildPathStepOperatorDescriptor.java | 8 +- .../step/ChildPathStepScalarEvaluator.java | 12 +- .../ChildPathStepScalarEvaluatorFactory.java | 10 +- .../functions/step/ChildPathStepUnnesting.java | 10 +- .../step/ChildPathStepUnnestingEvaluator.java | 10 +- .../ChildPathStepUnnestingEvaluatorFactory.java | 12 +- ...DescendantOrSelfPathStepScalarEvaluator.java | 12 +- ...antOrSelfPathStepScalarEvaluatorFactory.java | 10 +- .../step/DescendantOrSelfPathStepUnnesting.java | 10 +- ...cendantOrSelfPathStepUnnestingEvaluator.java | 10 +- ...OrSelfPathStepUnnestingEvaluatorFactory.java | 12 +- .../step/DescendantPathStepScalarEvaluator.java | 12 +- ...escendantPathStepScalarEvaluatorFactory.java | 10 +- .../DescendantPathStepUnnestingEvaluator.java | 10 +- ...endantPathStepUnnestingEvaluatorFactory.java | 12 +- .../runtime/functions/step/NodeTestFilter.java | 8 +- .../step/SelfPathStepScalarEvaluator.java | 10 +- .../SelfPathStepScalarEvaluatorFactory.java | 10 +- ...stractCharacterIteratorCopyingEvaluator.java | 6 +- ...haracterIteratorCopyingEvaluatorFactory.java | 2 +- .../FnCodepointEqualEvaluatorFactory.java | 12 +- .../FnCodepointsToStringEvaluatorFactory.java | 16 +- .../strings/FnCompareEvaluatorFactory.java | 14 +- .../strings/FnConcatEvaluatorFactory.java | 14 +- .../strings/FnContainsEvaluatorFactory.java | 12 +- .../strings/FnEndsWithEvaluatorFactory.java | 12 +- .../strings/FnLowerCaseEvaluatorFactory.java | 10 +- .../strings/FnStartsWithEvaluatorFactory.java | 12 +- .../strings/FnStringJoinEvaluatorFactory.java | 14 +- .../strings/FnStringLengthEvaluatorFactory.java | 14 +- .../strings/FnStringScalarEvaluatorFactory.java | 14 +- .../FnStringToCodepointsEvaluatorFactory.java | 14 +- .../FnSubstringAfterEvaluatorFactory.java | 10 +- .../FnSubstringBeforeEvaluatorFactory.java | 10 +- .../strings/FnSubstringEvaluatorFactory.java | 16 +- .../strings/FnUpperCaseEvaluatorFactory.java | 10 +- .../strings/UTF8StringCharacterIterator.java | 2 +- .../AbstractTypeScalarEvaluatorFactory.java | 12 +- .../type/InstanceOfScalarEvaluatorFactory.java | 12 +- .../type/PromoteScalarEvaluatorFactory.java | 14 +- .../functions/type/SequenceTypeMatcher.java | 4 +- .../type/TreatScalarEvaluatorFactory.java | 12 +- .../unary/AbstractNumericUnaryOperation.java | 6 +- ...tractNumericUnaryScalarEvaluatorFactory.java | 16 +- .../unary/NumericUnaryMinusOperation.java | 8 +- ...NumericUnaryMinusScalarEvaluatorFactory.java | 4 +- .../unary/NumericUnaryPlusOperation.java | 8 +- .../NumericUnaryPlusScalarEvaluatorFactory.java | 4 +- .../functions/util/ArithmeticHelper.java | 8 +- .../runtime/functions/util/AtomizeHelper.java | 6 +- .../runtime/functions/util/FunctionHelper.java | 14 +- ...XQueryBinaryHashFunctionFactoryProvider.java | 6 +- ...VXQueryBinaryHashFunctionFamilyProvider.java | 8 +- .../vxquery/serializer/XMLSerializer.java | 26 +-- .../apache/vxquery/types/AbstractNodeType.java | 2 +- .../org/apache/vxquery/types/AnyNodeType.java | 2 +- .../org/apache/vxquery/types/AnySimpleType.java | 2 +- .../java/org/apache/vxquery/types/AnyType.java | 2 +- .../org/apache/vxquery/types/AtomicType.java | 2 +- .../org/apache/vxquery/types/AttributeType.java | 2 +- .../apache/vxquery/types/BuiltinAtomicType.java | 2 +- .../vxquery/types/BuiltinTypeConstants.java | 2 +- .../apache/vxquery/types/BuiltinTypeQNames.java | 2 +- .../vxquery/types/BuiltinTypeRegistry.java | 2 +- .../org/apache/vxquery/types/CommentType.java | 2 +- .../org/apache/vxquery/types/ComplexType.java | 2 +- .../apache/vxquery/types/DerivationProcess.java | 2 +- .../org/apache/vxquery/types/DocumentType.java | 2 +- .../org/apache/vxquery/types/ElementType.java | 2 +- .../apache/vxquery/types/EmptySequenceType.java | 2 +- .../java/org/apache/vxquery/types/ItemType.java | 2 +- .../java/org/apache/vxquery/types/NameTest.java | 4 +- .../java/org/apache/vxquery/types/NodeKind.java | 2 +- .../java/org/apache/vxquery/types/NodeType.java | 2 +- .../java/org/apache/vxquery/types/NoneType.java | 2 +- .../types/ProcessingInstructionType.java | 4 +- .../org/apache/vxquery/types/SchemaType.java | 2 +- .../org/apache/vxquery/types/SimpleType.java | 2 +- .../java/org/apache/vxquery/types/TextType.java | 2 +- .../org/apache/vxquery/types/TypeHelper.java | 2 +- .../org/apache/vxquery/types/TypeUtils.java | 2 +- .../java/org/apache/vxquery/types/XQType.java | 2 +- .../java/org/apache/vxquery/util/Filter.java | 2 +- .../apache/vxquery/util/GrowableIntArray.java | 2 +- .../org/apache/vxquery/util/SourceLocation.java | 2 +- .../vxquery/xmlparser/ITreeNodeIdProvider.java | 2 +- .../vxquery/xmlparser/SAXContentHandler.java | 77 ++++---- .../vxquery/xmlparser/TreeNodeIdProvider.java | 2 +- .../org/apache/vxquery/xmlparser/XMLParser.java | 28 ++- .../apache/vxquery/xmlquery/ast/ASTNode.java | 2 +- .../org/apache/vxquery/xmlquery/ast/ASTTag.java | 2 +- .../vxquery/xmlquery/ast/AnyNodeTestNode.java | 2 +- .../vxquery/xmlquery/ast/AtomicTypeNode.java | 2 +- .../vxquery/xmlquery/ast/AttributeTestNode.java | 2 +- .../vxquery/xmlquery/ast/AxisStepNode.java | 2 +- .../vxquery/xmlquery/ast/BaseUriDeclNode.java | 2 +- .../xmlquery/ast/BoundarySpaceDeclNode.java | 2 +- .../vxquery/xmlquery/ast/CDataSectionNode.java | 2 +- .../vxquery/xmlquery/ast/CaseClauseNode.java | 2 +- .../vxquery/xmlquery/ast/CommentTestNode.java | 2 +- .../ast/ComputedAttributeConstructorNode.java | 2 +- .../ast/ComputedCommentConstructorNode.java | 2 +- .../ast/ComputedDocumentConstructorNode.java | 2 +- .../ast/ComputedElementConstructorNode.java | 2 +- .../xmlquery/ast/ComputedPIConstructorNode.java | 2 +- .../ast/ComputedTextConstructorNode.java | 2 +- .../xmlquery/ast/ConstructionDeclNode.java | 2 +- .../vxquery/xmlquery/ast/ContentCharsNode.java | 2 +- .../xmlquery/ast/ContextItemExprNode.java | 2 +- .../xmlquery/ast/CopyNamespacesDeclNode.java | 2 +- .../ast/DQuotedAttributeContentNode.java | 2 +- .../xmlquery/ast/DefaultCollationDeclNode.java | 2 +- .../ast/DefaultElementNamespaceDeclNode.java | 2 +- .../ast/DefaultFunctionNamespaceDeclNode.java | 2 +- .../ast/DirectAttributeConstructorNode.java | 2 +- .../ast/DirectCommentConstructorNode.java | 2 +- .../ast/DirectElementConstructorNode.java | 2 +- .../xmlquery/ast/DirectPIConstructorNode.java | 2 +- .../vxquery/xmlquery/ast/DocumentTestNode.java | 2 +- .../vxquery/xmlquery/ast/ElementTestNode.java | 2 +- .../xmlquery/ast/EmptyOrderDeclNode.java | 2 +- .../xmlquery/ast/EmptySequenceTypeNode.java | 2 +- .../vxquery/xmlquery/ast/EnclosedExprNode.java | 2 +- .../apache/vxquery/xmlquery/ast/ExprNode.java | 2 +- .../vxquery/xmlquery/ast/ExtensionExprNode.java | 2 +- .../vxquery/xmlquery/ast/FLWORClauseNode.java | 2 +- .../vxquery/xmlquery/ast/FLWORExprNode.java | 2 +- .../vxquery/xmlquery/ast/FTOptionDeclNode.java | 2 +- .../vxquery/xmlquery/ast/FilterExprNode.java | 2 +- .../vxquery/xmlquery/ast/ForClauseNode.java | 2 +- .../vxquery/xmlquery/ast/ForVarDeclNode.java | 2 +- .../vxquery/xmlquery/ast/FunctionDeclNode.java | 2 +- .../vxquery/xmlquery/ast/FunctionExprNode.java | 2 +- .../apache/vxquery/xmlquery/ast/IfExprNode.java | 2 +- .../vxquery/xmlquery/ast/InfixExprNode.java | 2 +- .../vxquery/xmlquery/ast/ItemTestNode.java | 2 +- .../vxquery/xmlquery/ast/ItemTypeNode.java | 2 +- .../vxquery/xmlquery/ast/LetClauseNode.java | 2 +- .../vxquery/xmlquery/ast/LetVarDeclNode.java | 2 +- .../vxquery/xmlquery/ast/LibraryModuleNode.java | 2 +- .../vxquery/xmlquery/ast/LiteralNode.java | 2 +- .../vxquery/xmlquery/ast/MainModuleNode.java | 2 +- .../vxquery/xmlquery/ast/ModuleDeclNode.java | 2 +- .../vxquery/xmlquery/ast/ModuleImportNode.java | 2 +- .../apache/vxquery/xmlquery/ast/ModuleNode.java | 2 +- .../apache/vxquery/xmlquery/ast/NCNameNode.java | 2 +- .../vxquery/xmlquery/ast/NameTestNode.java | 2 +- .../vxquery/xmlquery/ast/NamespaceDeclNode.java | 2 +- .../vxquery/xmlquery/ast/OptionDeclNode.java | 2 +- .../vxquery/xmlquery/ast/OrderSpecNode.java | 2 +- .../vxquery/xmlquery/ast/OrderbyClauseNode.java | 2 +- .../vxquery/xmlquery/ast/OrderedExprNode.java | 2 +- .../xmlquery/ast/OrderingModeDeclNode.java | 2 +- .../apache/vxquery/xmlquery/ast/PITestNode.java | 2 +- .../apache/vxquery/xmlquery/ast/ParamNode.java | 2 +- .../xmlquery/ast/ParenthesizedExprNode.java | 2 +- .../vxquery/xmlquery/ast/PathExprNode.java | 2 +- .../apache/vxquery/xmlquery/ast/PragmaNode.java | 2 +- .../apache/vxquery/xmlquery/ast/PrologNode.java | 2 +- .../apache/vxquery/xmlquery/ast/QNameNode.java | 2 +- .../xmlquery/ast/QuantifiedExprNode.java | 2 +- .../xmlquery/ast/QuantifiedVarDeclNode.java | 2 +- .../vxquery/xmlquery/ast/QueryBodyNode.java | 2 +- .../xmlquery/ast/RelativePathExprNode.java | 2 +- .../ast/SQuotedAttributeContentNode.java | 2 +- .../xmlquery/ast/SchemaAttributeTestNode.java | 2 +- .../xmlquery/ast/SchemaElementTestNode.java | 2 +- .../vxquery/xmlquery/ast/SchemaImportNode.java | 2 +- .../vxquery/xmlquery/ast/SequenceTypeNode.java | 2 +- .../vxquery/xmlquery/ast/SingleTypeNode.java | 2 +- .../vxquery/xmlquery/ast/TextTestNode.java | 2 +- .../xmlquery/ast/TextualNodeContentNode.java | 2 +- .../vxquery/xmlquery/ast/TypeDeclNode.java | 2 +- .../vxquery/xmlquery/ast/TypeExprNode.java | 2 +- .../xmlquery/ast/TypeswitchExprNode.java | 2 +- .../vxquery/xmlquery/ast/UnaryExprNode.java | 2 +- .../vxquery/xmlquery/ast/UnorderedExprNode.java | 2 +- .../vxquery/xmlquery/ast/ValidateExprNode.java | 2 +- .../vxquery/xmlquery/ast/VarDeclNode.java | 2 +- .../apache/vxquery/xmlquery/ast/VarRefNode.java | 2 +- .../vxquery/xmlquery/ast/VersionDeclNode.java | 2 +- .../vxquery/xmlquery/ast/WhereClauseNode.java | 2 +- .../apache/vxquery/xmlquery/query/Module.java | 6 +- .../query/NoopXQueryCompilationListener.java | 2 +- .../vxquery/xmlquery/query/PrologVariable.java | 2 +- .../query/VXQueryCompilationListener.java | 10 +- .../xmlquery/query/XMLQueryCompiler.java | 64 +++---- .../vxquery/xmlquery/query/XMLQueryParser.java | 2 +- .../xmlquery/query/XMLQueryTypeChecker.java | 2 +- .../query/XQueryCompilationListener.java | 2 +- .../vxquery/xmlquery/query/XQueryConstants.java | 2 +- .../translator/VXQueryPositionWriter.java | 5 +- .../xmlquery/translator/XMLQueryTranslator.java | 175 ++++++++++--------- .../src/main/xslt/generate-fn-defns.xsl | 6 +- .../src/main/xslt/generate-op-defns.xsl | 6 +- .../xmlquery/query/SimpleXQueryTest.java | 2 +- vxquery-server/pom.xml | 10 +- .../vxquery/cli/VXQueryClusterShutdown.java | 4 +- vxquery-xtest/pom.xml | 10 +- .../vxquery/xtest/AbstractTestCaseFactory.java | 2 +- .../apache/vxquery/xtest/ExpectedResult.java | 2 +- .../vxquery/xtest/HTMLFileReporterImpl.java | 2 +- .../vxquery/xtest/LineFileReporterImpl.java | 2 +- .../java/org/apache/vxquery/xtest/Main.java | 2 +- .../apache/vxquery/xtest/ResultReporter.java | 2 +- .../vxquery/xtest/ServletReporterImpl.java | 2 +- .../java/org/apache/vxquery/xtest/TestCase.java | 2 +- .../apache/vxquery/xtest/TestCaseFactory.java | 2 +- .../apache/vxquery/xtest/TestCaseResult.java | 2 +- .../org/apache/vxquery/xtest/TestRunner.java | 56 +++--- .../apache/vxquery/xtest/TestRunnerFactory.java | 2 +- .../vxquery/xtest/XMLFileReporterImpl.java | 2 +- .../java/org/apache/vxquery/xtest/XTest.java | 2 +- .../org/apache/vxquery/xtest/XTestOptions.java | 2 +- .../vxquery/xtest/util/DiskPerformance.java | 6 +- .../vxquery/xtest/JUnitTestCaseFactory.java | 2 +- 632 files changed, 3255 insertions(+), 2649 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/pom.xml ---------------------------------------------------------------------- diff --git a/pom.xml b/pom.xml index 1862890..ca69e97 100644 --- a/pom.xml +++ b/pom.xml @@ -187,31 +187,31 @@ </dependency> <dependency> - <groupId>edu.uci.ics.hyracks</groupId> + <groupId>org.apache.hyracks</groupId> <artifactId>hyracks-client</artifactId> <version>${hyracks.version}</version> </dependency> <dependency> - <groupId>edu.uci.ics.hyracks</groupId> + <groupId>org.apache.hyracks</groupId> <artifactId>hyracks-control-common</artifactId> <version>${hyracks.version}</version> </dependency> <dependency> - <groupId>edu.uci.ics.hyracks</groupId> + <groupId>org.apache.hyracks</groupId> <artifactId>hyracks-control-cc</artifactId> <version>${hyracks.version}</version> </dependency> <dependency> - <groupId>edu.uci.ics.hyracks</groupId> + <groupId>org.apache.hyracks</groupId> <artifactId>hyracks-control-nc</artifactId> <version>${hyracks.version}</version> </dependency> <dependency> - <groupId>edu.uci.ics.hyracks</groupId> + <groupId>org.apache.hyracks</groupId> <artifactId>algebricks-compiler</artifactId> <version>${hyracks.version}</version> </dependency> @@ -223,55 +223,55 @@ </dependency> <dependency> - <groupId>edu.uci.ics.hyracks</groupId> + <groupId>org.apache.hyracks</groupId> <artifactId>algebricks-common</artifactId> <version>${hyracks.version}</version> </dependency> <dependency> - <groupId>edu.uci.ics.hyracks</groupId> + <groupId>org.apache.hyracks</groupId> <artifactId>algebricks-core</artifactId> <version>${hyracks.version}</version> </dependency> <dependency> - <groupId>edu.uci.ics.hyracks</groupId> + <groupId>org.apache.hyracks</groupId> <artifactId>algebricks-data</artifactId> <version>${hyracks.version}</version> </dependency> <dependency> - <groupId>edu.uci.ics.hyracks</groupId> + <groupId>org.apache.hyracks</groupId> <artifactId>algebricks-rewriter</artifactId> <version>${hyracks.version}</version> </dependency> <dependency> - <groupId>edu.uci.ics.hyracks</groupId> + <groupId>org.apache.hyracks</groupId> <artifactId>algebricks-runtime</artifactId> <version>${hyracks.version}</version> </dependency> <dependency> - <groupId>edu.uci.ics.hyracks</groupId> + <groupId>org.apache.hyracks</groupId> <artifactId>hyracks-api</artifactId> <version>${hyracks.version}</version> </dependency> <dependency> - <groupId>edu.uci.ics.hyracks</groupId> + <groupId>org.apache.hyracks</groupId> <artifactId>hyracks-data-std</artifactId> <version>${hyracks.version}</version> </dependency> <dependency> - <groupId>edu.uci.ics.hyracks</groupId> + <groupId>org.apache.hyracks</groupId> <artifactId>hyracks-dataflow-common</artifactId> <version>${hyracks.version}</version> </dependency> <dependency> - <groupId>edu.uci.ics.hyracks</groupId> + <groupId>org.apache.hyracks</groupId> <artifactId>hyracks-dataflow-std</artifactId> <version>${hyracks.version}</version> </dependency> @@ -375,8 +375,8 @@ <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> - <source>1.6</source> - <target>1.6</target> + <source>1.8</source> + <target>1.8</target> </configuration> </plugin> <plugin> @@ -388,7 +388,6 @@ <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-release-plugin</artifactId> - <version>2.4.2</version> <dependencies> <dependency> <groupId>org.apache.maven.scm</groupId> @@ -459,15 +458,15 @@ </plugin> </reportPlugins> </configuration> - <executions> - <execution> + <executions> + <execution> <id>attach-site</id> <phase>prepare-package</phase> <goals> <goal>jar</goal> - </goals> - </execution> - </executions> + </goals> + </execution> + </executions> </plugin> --> <plugin> @@ -530,7 +529,7 @@ <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> - <hyracks.version>0.2.15</hyracks.version> + <hyracks.version>0.2.16-incubating</hyracks.version> <apache-rat-plugin.version>0.11</apache-rat-plugin.version> </properties> http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/src/site/apt/developer_get_started.apt ---------------------------------------------------------------------- diff --git a/src/site/apt/developer_get_started.apt b/src/site/apt/developer_get_started.apt index 7a93d66..6d282f5 100644 --- a/src/site/apt/developer_get_started.apt +++ b/src/site/apt/developer_get_started.apt @@ -21,9 +21,9 @@ Get Started as a VXQuery Developer * Go through the community member steps. * {{{http://vxquery.apache.org/user_get_started.html}Community steps}}. - + * Setup your eclipse development environment. - + * {{{http://vxquery.apache.org/development_eclipse_setup.html}Setup instructions}}. * XQuery has a test suite to verify XQuery specifications. @@ -34,8 +34,8 @@ Get Started as a VXQuery Developer * Review the test structure. - * Code is found in the "VXQuery XTest" module. + * Code is found in the "VXQuery XTest" module. * Review open issues for the project. - + * {{{http://vxquery.apache.org/issue-tracking.html}Issues list}}. http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/src/site/apt/index.apt ---------------------------------------------------------------------- diff --git a/src/site/apt/index.apt b/src/site/apt/index.apt index 8b5777a..3986f81 100644 --- a/src/site/apt/index.apt +++ b/src/site/apt/index.apt @@ -22,6 +22,7 @@ Apache VXQuery There are lots of large collections of relatively small documents like e.g. the {{{http://www.sec.gov/info/edgar/ednews/dissemin.htm}EDGAR dataset}} or the {{{http://wiki.openstreetmap.org/wiki/Download}OpenStreetMap dataset}}. However there are no XQuery processors available today that are capable of processing these datasets in parallel and making the contained information accessible. - - \ No newline at end of file + +[images/vxquery_stack.png] VXQuery Stack Diagram + http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/src/site/apt/user_cluster_installation.apt ---------------------------------------------------------------------- diff --git a/src/site/apt/user_cluster_installation.apt b/src/site/apt/user_cluster_installation.apt index 1342908..0e756b0 100644 --- a/src/site/apt/user_cluster_installation.apt +++ b/src/site/apt/user_cluster_installation.apt @@ -15,6 +15,18 @@ Cluster Installation +* Architecture + + The VXQuery cluster is made up of two parts: a single cluster controller (cc) and many node controllers (nc). + The VXQuery CLI is used to parse the query and compile the job for the VXQuery cluster to process. + The CLI passes the job to the cc which manages the job and returns the result to the CLI. + The following diagram depicts the cluster layout. + +[images/vxquery_cluster.png] VXQuery Cluster Diagram + + The XML document are distributed between the ncs. + The query's collection function will identify XML file path for the ncs. + * Requirements @@ -28,7 +40,7 @@ Cluster Installation * Steps * <<Export JAVA_HOME>> - + --- $ export JAVA_HOME=/usr/java/latest --- @@ -36,7 +48,7 @@ $ export JAVA_HOME=/usr/java/latest * <<Unzip and build VXQuery>> ---- +--- $ unzip apache-vxquery-X.Y-source-release.zip $ cd apache-vxquery-X.Y $ mvn package -DskipTests @@ -45,7 +57,7 @@ $ cd .. * <<Create configuration file>> - + Create a configuration xml file containing the information of the vxquery cluster.Here is an example of a VXQuery configuration file for a cluster with 1 master and 3 slaves. --- @@ -75,7 +87,7 @@ $ cd .. * Fields that are required: * name : name of the cluster - + * username : user that will execute commands in all the machines of the cluster. Preferably a user that has passwordless ssh access to the machines. * id : hostname of the node @@ -94,12 +106,12 @@ $ cd .. * <<Deploy cluster>> To deploy the cluster you need to execute this command in the vxquery installation directory - + --- $python cluster_cli.py -c ../conf/cluster.xml -a deploy -d /apache-vxquery/vxquery-server --- - * Arguments: + * Arguments: * -c : path to the configuration file you created @@ -110,16 +122,16 @@ $python cluster_cli.py -c ../conf/cluster.xml -a deploy -d /apache-vxquery/vxque * <<Start cluster>> - The command to start the cluster is + The command to start the cluster is --- $python cluster_cli.py -c ../conf/cluster.xml -a start --- - + * <<Stop cluster>> - The command to stop the cluster is + The command to stop the cluster is --- $python cluster_cli.py -c ../conf/cluster.xml -a stop http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/src/site/resources/images/eclipse_xml_editor_screen.png ---------------------------------------------------------------------- diff --git a/src/site/resources/images/eclipse_xml_editor_screen.png b/src/site/resources/images/eclipse_xml_editor_screen.png new file mode 100644 index 0000000..db430f5 Binary files /dev/null and b/src/site/resources/images/eclipse_xml_editor_screen.png differ http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/src/site/resources/images/vxquery_cluster.png ---------------------------------------------------------------------- diff --git a/src/site/resources/images/vxquery_cluster.png b/src/site/resources/images/vxquery_cluster.png new file mode 100644 index 0000000..50cb26b Binary files /dev/null and b/src/site/resources/images/vxquery_cluster.png differ http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/src/site/resources/images/vxquery_cluster_with_hdfs.png ---------------------------------------------------------------------- diff --git a/src/site/resources/images/vxquery_cluster_with_hdfs.png b/src/site/resources/images/vxquery_cluster_with_hdfs.png new file mode 100644 index 0000000..2ec42b8 Binary files /dev/null and b/src/site/resources/images/vxquery_cluster_with_hdfs.png differ http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/src/site/resources/images/vxquery_stack.png ---------------------------------------------------------------------- diff --git a/src/site/resources/images/vxquery_stack.png b/src/site/resources/images/vxquery_stack.png new file mode 100644 index 0000000..01549a5 Binary files /dev/null and b/src/site/resources/images/vxquery_stack.png differ http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/pom.xml ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/pom.xml b/vxquery-benchmark/pom.xml index 81feaf8..d55f05e 100644 --- a/vxquery-benchmark/pom.xml +++ b/vxquery-benchmark/pom.xml @@ -49,7 +49,6 @@ </plugin> <plugin> <artifactId>maven-resources-plugin</artifactId> - <version>2.5</version> <executions> <execution> <id>copy-scripts</id> http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q00.xq ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q00.xq b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q00.xq new file mode 100644 index 0000000..21fc54a --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q00.xq @@ -0,0 +1,32 @@ +(: 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. :) + +(: +XQuery Filter Query +------------------- +See historical data for Key West International Airport, FL (USW00012836) +station by selecting the weather readings for December 25 over the last +10 years. +:) +let $collection := "../../../../../../../weather_data/dataset-tiny-local/data_links/local_speed_up/d0_p1_i0/sensors/" +for $r in collection($collection)/root/dataCollection/data +let $datetime := xs:dateTime(fn:data($r/date)) +where $r/station eq "GHCND:USW00012836" + and fn:year-from-dateTime($datetime) ge 2003 + and fn:month-from-dateTime($datetime) eq 12 + and fn:day-from-dateTime($datetime) eq 25 +return $r \ No newline at end of file http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q01.xq ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q01.xq b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q01.xq new file mode 100644 index 0000000..ba7f0f9 --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q01.xq @@ -0,0 +1,25 @@ +(: 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. :) + +(: XQuery Filter Query :) +(: Find all reading for hurricane force wind warning or extreme wind warning. :) +(: The warnings occur when the wind speed (AWND) exceeds 110 mph (49.1744 :) +(: meters per second). (Wind value is in tenth of a meter per second) :) +let $collection := "../../../../../../../weather_data/dataset-tiny-local/data_links/local_speed_up/d0_p1_i0/sensors/" +for $r in fn:collection($collection)/root/dataCollection/data +where $r/dataType eq "AWND" and xs:decimal($r/value) gt 491.744 +return $r http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q02.xq ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q02.xq b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q02.xq new file mode 100644 index 0000000..b089348 --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q02.xq @@ -0,0 +1,31 @@ +(: 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. :) + +(: +XQuery Aggregate Query +---------------------- +Find the annual precipitation (PRCP) for a Syracuse, NY using the airport +weather station (USW00014771) report for 1999. +:) +fn:sum( + let $collection := "../../../../../../../weather_data/dataset-tiny-local/data_links/local_speed_up/d0_p1_i0/sensors/" + for $r in collection($collection)/root/dataCollection/data + where $r/station eq "GHCND:USW00014771" + and $r/dataType eq "PRCP" + and fn:year-from-dateTime(xs:dateTime(fn:data($r/date))) eq 1999 + return $r/value +) div 10 http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q03.xq ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q03.xq b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q03.xq new file mode 100644 index 0000000..285bf21 --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q03.xq @@ -0,0 +1,25 @@ +(: 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. :) + +(: XQuery Aggregate Query :) +(: Find the highest recorded temperature (TMAX) in Celsius. :) +fn:max( + let $collection := "../../../../../../../weather_data/dataset-tiny-local/data_links/local_speed_up/d0_p1_i0/sensors/" + for $r in collection($collection)/root/dataCollection/data + where $r/dataType eq "TMAX" + return $r/value +) div 10 http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q04.xq ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q04.xq b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q04.xq new file mode 100644 index 0000000..9b69303 --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q04.xq @@ -0,0 +1,30 @@ +(: 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. :) + +(: XQuery Join Query :) +(: Find all the weather readings for King county for a specific day :) +(: 1976/7/4. :) +let $sensor_collection := "../../../../../../../weather_data/dataset-tiny-local/data_links/local_speed_up/d0_p1_i0/sensors/" +for $r in collection($sensor_collection)/root/dataCollection/data + +let $station_collection := "../../../../../../../weather_data/dataset-tiny-local/data_links/local_speed_up/d0_p1_i0/stations/" +for $s in collection($station_collection)/root/stationCollection/station + +where $s/id eq $r/station + and (some $x in $s/locationLabels satisfies ($x/type eq "ST" and fn:upper-case(fn:data($x/displayName)) eq "WASHINGTON")) + and xs:dateTime(fn:data($r/date)) eq xs:dateTime("1976-07-04T00:00:00.000") +return $r http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q05.xq ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q05.xq b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q05.xq new file mode 100644 index 0000000..68eed3a --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q05.xq @@ -0,0 +1,33 @@ +(: 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. :) + +(: XQuery Join Aggregate Query :) +(: Find the lowest recorded temperature (TMIN) in the state of Oregon for :) +(: 2001. :) +fn:min( + let $sensor_collection := "../../../../../../../weather_data/dataset-tiny-local/data_links/local_speed_up/d0_p1_i0/sensors/" + for $r in collection($sensor_collection)/root/dataCollection/data + + let $station_collection := "../../../../../../../weather_data/dataset-tiny-local/data_links/local_speed_up/d0_p1_i0/stations/" + for $s in collection($station_collection)/root/stationCollection/station + + where $s/id eq $r/station + and (some $x in $s/locationLabels satisfies ($x/type eq "CNTRY" and $x/id eq "FIPS:US")) + and $r/dataType eq "TMIN" + and fn:year-from-dateTime(xs:dateTime(fn:data($r/date))) eq 2001 + return $r/value +) div 10 http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q06.xq ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q06.xq b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q06.xq new file mode 100644 index 0000000..1e3061c --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q06.xq @@ -0,0 +1,30 @@ +(: 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. :) + +(: XQuery Join Query :) +(: Find the highest recorded temperature (TMAX) for each station for each :) +(: day over the year 2000. :) +let $sensor_collection := "../../../../../../../weather_data/dataset-tiny-local/data_links/local_speed_up/d0_p1_i0/sensors/" +for $r in collection($sensor_collection)/root/dataCollection/data + +let $station_collection := "../../../../../../../weather_data/dataset-tiny-local/data_links/local_speed_up/d0_p1_i0/stations/" +for $s in collection($station_collection)/root/stationCollection/station + +where $s/id eq $r/station + and $r/dataType eq "TMAX" + and fn:year-from-dateTime(xs:dateTime(fn:data($r/date))) eq 2000 +return ($s/displayName, $r/date, $r/value) \ No newline at end of file http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q07.xq ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q07.xq b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q07.xq new file mode 100644 index 0000000..23d4358 --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex/q07.xq @@ -0,0 +1,32 @@ +(: 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. :) + +(: XQuery Join Aggregate Query :) +(: Self join with all sensor readings after the year 2000. :) +fn:avg( +let $sensor_collection_min := "../../../../../../../weather_data/dataset-tiny-local/data_links/local_speed_up/d0_p1_i0/sensors/" +for $r_min in collection($sensor_collection_min)/root/dataCollection/data + +let $sensor_collection_max := "../../../../../../../weather_data/dataset-tiny-local/data_links/local_speed_up/d0_p1_i0/sensors/" +for $r_max in collection($sensor_collection_max)/root/dataCollection/data + +where $r_min/station eq $r_max/station + and $r_min/date eq $r_max/date + and $r_min/dataType eq "TMIN" + and $r_max/dataType eq "TMAX" +return ($r_max/value - $r_min/value) +) div 10 \ No newline at end of file http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q00.xq ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q00.xq b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q00.xq new file mode 100644 index 0000000..1d52f26 --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q00.xq @@ -0,0 +1,32 @@ +(: 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. :) + +(: +XQuery Filter Query +------------------- +See historical data for Key West International Airport, FL (USW00012836) +station by selecting the weather readings for December 25 over the last +10 years. +:) +let $collection := "db_sensors" +for $r in db:open($collection)/root/dataCollection/data +let $datetime := xs:dateTime(fn:data($r/date)) +where $r/station eq "GHCND:USW00012836" + and fn:year-from-dateTime($datetime) ge 2003 + and fn:month-from-dateTime($datetime) eq 12 + and fn:day-from-dateTime($datetime) eq 25 +return $r \ No newline at end of file http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q01.xq ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q01.xq b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q01.xq new file mode 100644 index 0000000..385689b --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q01.xq @@ -0,0 +1,25 @@ +(: 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. :) + +(: XQuery Filter Query :) +(: Find all reading for hurricane force wind warning or extreme wind warning. :) +(: The warnings occur when the wind speed (AWND) exceeds 110 mph (49.1744 :) +(: meters per second). (Wind value is in tenth of a meter per second) :) +let $collection := "db_sensors" +for $r in fn:db:open($collection)/root/dataCollection/data +where $r/dataType eq "AWND" and xs:decimal($r/value) gt 491.744 +return $r http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q02.xq ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q02.xq b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q02.xq new file mode 100644 index 0000000..6a22a3a --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q02.xq @@ -0,0 +1,31 @@ +(: 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. :) + +(: +XQuery Aggregate Query +---------------------- +Find the annual precipitation (PRCP) for a Syracuse, NY using the airport +weather station (USW00014771) report for 1999. +:) +fn:sum( + let $collection := "db_sensors" + for $r in db:open($collection)/root/dataCollection/data + where $r/station eq "GHCND:USW00014771" + and $r/dataType eq "PRCP" + and fn:year-from-dateTime(xs:dateTime(fn:data($r/date))) eq 1999 + return $r/value +) div 10 http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q03.xq ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q03.xq b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q03.xq new file mode 100644 index 0000000..f37bf6e --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q03.xq @@ -0,0 +1,25 @@ +(: 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. :) + +(: XQuery Aggregate Query :) +(: Find the highest recorded temperature (TMAX) in Celsius. :) +fn:max( + let $collection := "db_sensors" + for $r in db:open($collection)/root/dataCollection/data + where $r/dataType eq "TMAX" + return $r/value +) div 10 http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q04.xq ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q04.xq b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q04.xq new file mode 100644 index 0000000..6d4fa48 --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q04.xq @@ -0,0 +1,30 @@ +(: 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. :) + +(: XQuery Join Query :) +(: Find all the weather readings for King county for a specific day :) +(: 1976/7/4. :) +let $sensor_collection := "db_sensors" +for $r in db:open($sensor_collection)/root/dataCollection/data + +let $station_collection := "db_stations" +for $s in db:open($station_collection)/root/stationCollection/station + +where $s/id eq $r/station + and (some $x in $s/locationLabels satisfies ($x/type eq "ST" and fn:upper-case(fn:data($x/displayName)) eq "WASHINGTON")) + and xs:dateTime(fn:data($r/date)) eq xs:dateTime("1976-07-04T00:00:00.000") +return $r http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q05.xq ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q05.xq b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q05.xq new file mode 100644 index 0000000..737d6b4 --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q05.xq @@ -0,0 +1,33 @@ +(: 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. :) + +(: XQuery Join Aggregate Query :) +(: Find the lowest recorded temperature (TMIN) in the state of Oregon for :) +(: 2001. :) +fn:min( + let $sensor_collection := "db_sensors" + for $r in db:open($sensor_collection)/root/dataCollection/data + + let $station_collection := "db_stations" + for $s in db:open($station_collection)/root/stationCollection/station + + where $s/id eq $r/station + and (some $x in $s/locationLabels satisfies ($x/type eq "CNTRY" and $x/id eq "FIPS:US")) + and $r/dataType eq "TMIN" + and fn:year-from-dateTime(xs:dateTime(fn:data($r/date))) eq 2001 + return $r/value +) div 10 http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q06.xq ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q06.xq b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q06.xq new file mode 100644 index 0000000..3971d4e --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q06.xq @@ -0,0 +1,30 @@ +(: 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. :) + +(: XQuery Join Query :) +(: Find the highest recorded temperature (TMAX) for each station for each :) +(: day over the year 2000. :) +let $sensor_collection := "db_sensors" +for $r in db:open($sensor_collection)/root/dataCollection/data + +let $station_collection := "db_stations" +for $s in db:open($station_collection)/root/stationCollection/station + +where $s/id eq $r/station + and $r/dataType eq "TMAX" + and fn:year-from-dateTime(xs:dateTime(fn:data($r/date))) eq 2000 +return ($s/displayName, $r/date, $r/value) \ No newline at end of file http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q07.xq ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q07.xq b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q07.xq new file mode 100644 index 0000000..4f6f53a --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/q07.xq @@ -0,0 +1,32 @@ +(: 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. :) + +(: XQuery Join Aggregate Query :) +(: Self join with all sensor readings after the year 2000. :) +fn:avg( +let $sensor_collection_min := "db_sensors" +for $r_min in db:open($sensor_collection_min)/root/dataCollection/data + +let $sensor_collection_max := "db_sensors" +for $r_max in db:open($sensor_collection_max)/root/dataCollection/data + +where $r_min/station eq $r_max/station + and $r_min/date eq $r_max/date + and $r_min/dataType eq "TMIN" + and $r_max/dataType eq "TMAX" +return ($r_max/value - $r_min/value) +) div 10 \ No newline at end of file http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/sensors_database_add.bxs ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/sensors_database_add.bxs b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/sensors_database_add.bxs new file mode 100644 index 0000000..b56f86a --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/sensors_database_add.bxs @@ -0,0 +1,2 @@ +CREATE DB db_sensors +ADD /tmp/1.0_partition_ghcnd_all_xml/ http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/sensors_database_remove.bxs ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/sensors_database_remove.bxs b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/sensors_database_remove.bxs new file mode 100644 index 0000000..f923fd4 --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/sensors_database_remove.bxs @@ -0,0 +1 @@ +DROP DB db_sensors http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/stations_database_add.bxs ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/stations_database_add.bxs b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/stations_database_add.bxs new file mode 100644 index 0000000..cb1ea21 --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/stations_database_add.bxs @@ -0,0 +1,2 @@ +CREATE DB db_stations +ADD ../weather_data/dataset-tiny-local/data_links/local_speed_up/d0_p1_i0/stations/ http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/stations_database_remove.bxs ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/stations_database_remove.bxs b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/stations_database_remove.bxs new file mode 100644 index 0000000..33b9722 --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_index/stations_database_remove.bxs @@ -0,0 +1 @@ +DROP DB db_stations http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_scripts/.basex ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_scripts/.basex b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_scripts/.basex new file mode 100644 index 0000000..e69de29 http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_scripts/README ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_scripts/README b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_scripts/README new file mode 100644 index 0000000..1b910db --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_scripts/README @@ -0,0 +1,9 @@ +BaseX local configuration options for the weather benchmark. +The options attempt to match the processing and output of VXQuery. + + +# Local Options +CHOP = false +DBPATH = /path/to/basex/BaseXData +REPOPATH = /path/to/basex/BaseXRepo +WEBPATH = /path/to/basex/BaseXWeb http://git-wip-us.apache.org/repos/asf/vxquery/blob/4684567b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_scripts/run_basex_index_tests.sh ---------------------------------------------------------------------- diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_scripts/run_basex_index_tests.sh b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_scripts/run_basex_index_tests.sh new file mode 100755 index 0000000..63f0533 --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/basex_scripts/run_basex_index_tests.sh @@ -0,0 +1,63 @@ +#!/bin/bash +# +# 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. +# + +NODES=${2} +REPEAT=${3} +DATASET=${4} +EMAIL=${5} + + +mkdir -p ~/logs/basex_index/ + +# Add BaseX databases +for j in $(find ${1} -name '*add.bxs') +do + date + echo "Setup BaseX database: ${j}" + time JAVA_OPTS="-Xmx8g" java -cp BaseX823.jar org.basex.BaseX -V -x -w -r${REPEAT} ${j} >> ~/logs/basex_index/$(basename "${j}").log 2>&1 +done + + +for j in $(find ${1} -name '*q??.xq') +do + date + echo "Running BaseX query: ${j}" + time JAVA_OPTS="-Xmx8g" java -cp BaseX823.jar org.basex.BaseX -V -x -w -r${REPEAT} ${j} >> ~/logs/basex_index/$(basename "${j}").log 2>&1 +done + + +# Remove BaseX databases +for j in $(find ${1} -name '*remove.bxs') +do + date + echo "Setup BaseX database: ${j}" + time JAVA_OPTS="-Xmx8g" java -cp BaseX823.jar org.basex.BaseX -V -x -w -r${REPEAT} ${j} >> ~/logs/basex_index/$(basename "${j}").log 2>&1 +done + + +if which programname >/dev/null; +then + echo "Sending out e-mail notification." + SUBJECT="BaseX Tests Finished (${DATASET})" + /bin/mail -s "${SUBJECT}" "${EMAIL}" <<EOM + Completed all BaseX tests on ${DATASET}. + EOM +else + echo "No mail command to use." +fi;
