diff --git a/doap.rdf b/doap.rdf index 475715263..d690c74cf 100644 --- a/doap.rdf +++ b/doap.rdf @@ -38,8 +38,8 @@ Apache VXQuery - 2015-03-05 - 0.5 + 2014-09-07 + 0.4 @@ -55,9 +55,9 @@ - XQuery 1.0: An XML Query Language + XQuery 1.0 W3C - XQuery 1.0 + diff --git a/pom.xml b/pom.xml index ca69e9717..2719aa520 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ org.apache.vxquery apache-vxquery - 0.6-SNAPSHOT + 0.5 pom VXQuery A Versatile XQuery Processor @@ -50,7 +50,7 @@ scm:git:https://git-wip-us.apache.org/repos/asf/vxquery.git scm:git:https://git-wip-us.apache.org/repos/asf/vxquery.git https://git-wip-us.apache.org/repos/asf/vxquery.git - HEAD + apache-vxquery-0.5 @@ -187,31 +187,31 @@ - org.apache.hyracks + edu.uci.ics.hyracks hyracks-client ${hyracks.version} - org.apache.hyracks + edu.uci.ics.hyracks hyracks-control-common ${hyracks.version} - org.apache.hyracks + edu.uci.ics.hyracks hyracks-control-cc ${hyracks.version} - org.apache.hyracks + edu.uci.ics.hyracks hyracks-control-nc ${hyracks.version} - org.apache.hyracks + edu.uci.ics.hyracks algebricks-compiler ${hyracks.version} @@ -223,55 +223,55 @@ - org.apache.hyracks + edu.uci.ics.hyracks algebricks-common ${hyracks.version} - org.apache.hyracks + edu.uci.ics.hyracks algebricks-core ${hyracks.version} - org.apache.hyracks + edu.uci.ics.hyracks algebricks-data ${hyracks.version} - org.apache.hyracks + edu.uci.ics.hyracks algebricks-rewriter ${hyracks.version} - org.apache.hyracks + edu.uci.ics.hyracks algebricks-runtime ${hyracks.version} - org.apache.hyracks + edu.uci.ics.hyracks hyracks-api ${hyracks.version} - org.apache.hyracks + edu.uci.ics.hyracks hyracks-data-std ${hyracks.version} - org.apache.hyracks + edu.uci.ics.hyracks hyracks-dataflow-common ${hyracks.version} - org.apache.hyracks + edu.uci.ics.hyracks hyracks-dataflow-std ${hyracks.version} @@ -375,8 +375,8 @@ org.apache.maven.plugins maven-compiler-plugin - 1.8 - 1.8 + 1.6 + 1.6 @@ -388,6 +388,7 @@ org.apache.maven.plugins maven-release-plugin + 2.4.2 org.apache.maven.scm @@ -458,15 +459,15 @@ - - + + attach-site prepare-package jar - - - + + + --> @@ -529,7 +530,7 @@ UTF-8 UTF-8 - 0.2.16-incubating + 0.2.15 0.11 diff --git a/src/site/apt/developer_get_started.apt b/src/site/apt/developer_get_started.apt index 6d282f50e..7a93d66bb 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}}. diff --git a/src/site/apt/development_eclipse_setup.apt b/src/site/apt/development_eclipse_setup.apt index 14b30bd7d..e713a04e4 100644 --- a/src/site/apt/development_eclipse_setup.apt +++ b/src/site/apt/development_eclipse_setup.apt @@ -62,7 +62,9 @@ $ mvn install $ cd .. ---------------------------------------- - The mvn "-DskipTests" option can be used to save about 20 minutes, but will skip the verification tests. + Note: On Windows based machines, it is likely that the post-installation verification tests will fail. + + Therefore, the mvn "-DskipTests" option can be used to save about 20 minutes, but will skip the verification tests. Finally, from Eclipse's File menu "import" the Maven Hyracks project you have just downloaded through git. diff --git a/src/site/apt/index.apt b/src/site/apt/index.apt index 3986f814a..8b5777a08 100644 --- a/src/site/apt/index.apt +++ b/src/site/apt/index.apt @@ -22,7 +22,6 @@ 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. + - -[images/vxquery_stack.png] VXQuery Stack Diagram - + \ No newline at end of file diff --git a/src/site/apt/user_cluster_installation.apt b/src/site/apt/user_cluster_installation.apt index 0e756b09f..134290844 100644 --- a/src/site/apt/user_cluster_installation.apt +++ b/src/site/apt/user_cluster_installation.apt @@ -15,18 +15,6 @@ 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 @@ -40,7 +28,7 @@ Cluster Installation * Steps * <> - + --- $ export JAVA_HOME=/usr/java/latest --- @@ -48,7 +36,7 @@ $ export JAVA_HOME=/usr/java/latest * <> ---- +--- $ unzip apache-vxquery-X.Y-source-release.zip $ cd apache-vxquery-X.Y $ mvn package -DskipTests @@ -57,7 +45,7 @@ $ cd .. * <> - + 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. --- @@ -87,7 +75,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 @@ -106,12 +94,12 @@ $ cd .. * <> 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 @@ -122,16 +110,16 @@ $python cluster_cli.py -c ../conf/cluster.xml -a deploy -d /apache-vxquery/vxque * <> - The command to start the cluster is + The command to start the cluster is --- $python cluster_cli.py -c ../conf/cluster.xml -a start --- - + * <> - The command to stop the cluster is + The command to stop the cluster is --- $python cluster_cli.py -c ../conf/cluster.xml -a stop diff --git a/src/site/apt/user_query.apt b/src/site/apt/user_query.apt index a0228250d..ddcf84985 100644 --- a/src/site/apt/user_query.apt +++ b/src/site/apt/user_query.apt @@ -23,10 +23,13 @@ sh ./apache-vxquery-X.Y/vxquery-cli/target/appassembler/bin/vxq ---------------------------------------- * Commands On Windows Based Systems - + ---------------------------------------- -cd apache-vxquery-X.Y/vxquery-cli/target/appassembler/bin -vxq.bat +set JAVA_OPTS=-Xmx1024m + +set PATH=%PATH%;"path-to"\apache-vxquery-X.Y\vxquery-cli\target\appassembler\bin\ + +vxq "path-to"\test.xq ---------------------------------------- * Command Line Options @@ -76,3 +79,5 @@ return $x/title ---------------------------------------- JAVA_OPTS="-Xmx1024m" sh ./apache-vxquery-X.Y/vxquery-cli/target/appassembler/bin/vxq test.xq ---------------------------------------- + + diff --git a/src/src/main/assembly/source.xml b/src/src/main/assembly/source.xml new file mode 100644 index 000000000..435cea53f --- /dev/null +++ b/src/src/main/assembly/source.xml @@ -0,0 +1,45 @@ + + + source-release + + zip + + + + ${project.basedir} + / + true + + **/DISCLAIMER + **/LICENSE + **/NOTICE + **/README + **/src/** + **/results/** + **/pom.xml + **/build*.xml + **/findbugs*.xml + + + **/${project.build.directory}/** + + + + diff --git a/src/src/site/apt/developer_get_started.apt b/src/src/site/apt/developer_get_started.apt new file mode 100644 index 000000000..7a93d66bb --- /dev/null +++ b/src/src/site/apt/developer_get_started.apt @@ -0,0 +1,41 @@ +~~ 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. + +Get Started as a VXQuery Developer + + The following steps outline how to get up to speed with VXQuery developer community. + These steps will connect you with the community and give you a place to start with developing for VXQuery. + + * 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. + + * Run the test suite for XQTS. + + * {{{http://vxquery.apache.org/user_running_tests.html}Testing instructions}}. + + * Review the test structure. + + * Code is found in the "VXQuery XTest" module. + + * Review open issues for the project. + + * {{{http://vxquery.apache.org/issue-tracking.html}Issues list}}. diff --git a/src/src/site/apt/development_benchmarks.apt b/src/src/site/apt/development_benchmarks.apt new file mode 100644 index 000000000..40c02c704 --- /dev/null +++ b/src/src/site/apt/development_benchmarks.apt @@ -0,0 +1,24 @@ +~~ 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. + +Benchmarks + +* Weather Benchmark + + Instructions will be added shortly. All the code can be found in the vxquery-benchmark project. + +* XMark Benchmark + + Work in progress. diff --git a/src/src/site/apt/development_contribution.apt b/src/src/site/apt/development_contribution.apt new file mode 100644 index 000000000..f767cfda6 --- /dev/null +++ b/src/src/site/apt/development_contribution.apt @@ -0,0 +1,122 @@ +~~ 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. + +Contributing Code + + The following steps outline how to submit code to the VXQuery community for inclusion. + Please read the Developer {{{http://vxquery.apache.org/developer_get_started.html}Get Started}} Guide + to answer question about getting start as a developer. + VXQuery community supports two methods for contributing code to the project. + + [[1]] <> + + This method works well for small bug fixes. + + [[1]] <> + + The pull request will allow the community to give the developer (you) feedback + and support in creating a quality submission. + The following steps outline the github pull request process for the VXQuery community. + +* Github Pull Request Process + +** Developer + + * Pre-contribution steps to follow. + + * {{{http://vxquery.apache.org/user_get_started.html}Community steps}}. + + * {{{http://vxquery.apache.org/developer_get_started.html}Developer steps}}. + + * Create a {{{https://github.com/}github}} account. + + + * Create a github fork of {{{https://github.com/apache/vxquery}Apache VXQuery}} project. + + Go to {{{https://github.com/apache/vxquery}Apache VXQuery}} github mirror. + Create a fork by clicking on the fork button. + Then clone the fork to your local machine for development. + + + * Create a branch for your changes. + + VXQuery uses the following convention when creating a branch: authors_username/topic_or_issue + (examples: prestonc/vxquery_142 or tillw/group_by_clause). + The following branch name helps keep branches separated and keeps it easy to determine the author and topic. + + + * Make the change. + + :-) + + + * Add new tests. (optional) + + If the change is not covered in the XQTS, please create a new test in the VXQuery test suite + to cover the code changes made to VXQuery. + + + * Test your changes. + + Once the change is ready, test the branch against known passing Apache VXQuery tests. + The patch must not break any of the existing test suites, either the VXQuery or currently passing XQTS. + + * {{{http://vxquery.apache.org/user_running_tests.html} Run the Test Suites}} + + * {{{http://vxquery.apache.org/development_update_xqts_results.html}Update Passing Tests}} + + + * Clean up your code. + + Remove an extra debug code and verify the patch only includes code for the change. + + + * Create a github Pull Request. + + Once the work has been tested, a pull request can be created for the change branch. + Please use the Apache VXQuery master as branch to compare the change branch. + The branch should be up-to-date with the lastest Apache VXQuery master branch. + + + * Post your Pull Request. + + Post the Pull Request to the mailing list or issue to allow the VXQuery community to give feedback on the change. + At least one other member of the community should review the change. + If there is any feedback, address this and repeat the posting process. + +** Code Reviewer + + * Review the Pull Request. + + Post inline or global comments for the developer. + Be polite in your suggestions. + Guide the developer to bring the code up to VXQuery's code standards. + + * Double check the VXQuery and XQTS tests. + + +** VXQuery Committer (author or sponsor of the change) + + The VXQuery committer will be responsible for the change made to the ASF git repository. + While they do not need to be the author, the committer should have some understanding of the change + they are pushing on to the repository. + Often the committer will also be the reviewer for non-committer changes. + + * Double check the VXQuery and XQTS tests. + + * Merge the change with ASF master. + + When merging the change, do not rebase. + Instead do a single merge commit into Apache VXQuery master. diff --git a/src/src/site/apt/development_data_handling.apt b/src/src/site/apt/development_data_handling.apt new file mode 100644 index 000000000..a16160819 --- /dev/null +++ b/src/src/site/apt/development_data_handling.apt @@ -0,0 +1,162 @@ +~~ 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. + +Developer Data Handling + + +* Hyracks Data Mapping + + {{{http://hyracks.org}Hyracks}} supports several basic data types stored in + byte arrays. The byte arrays can be accessed through objects referred to as + pointables. The pointable helps with tracking the bytes stored in a larger + storage array. Some pointables support converting the byte array into a + desired format such as for numeric type. The most basic pointable has three + values stored in the object. + + * byte array + + * starting offset + + * length + + [] + + In Apache VXQuery\x99 the TaggedValuePointable is used to read a result from this byte + array. The first byte defines the data type and alerts us to what pointable + to use for reading the rest of the data. + +** Fixed Length Data + + Fixed length data types can be stored in a set field size. The following + outlines the Hyracks data type or custom VXQuery definition with the + details about the implementation. + +*-------------------------+----------------------+---------------+ +| <> | <> | <> | +*-------------------------+----------------------+---------------: +| xs:boolean | BooleanPointable | 1 | +*-------------------------+----------------------+---------------: +| xs:byte | BytePointable | 1 | +*-------------------------+----------------------+---------------: +| xs:date | {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDatePointable.java}XSDatePointable}} | 6 | +*-------------------------+----------------------+---------------: +| xs:dateTime | {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDateTimePointable.java}XSDateTimePointable}} | 12 | +*-------------------------+----------------------+---------------: +| xs:dayTimeDuration | LongPointable | 8 | +*-------------------------+----------------------+---------------: +| xs:decimal | {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDecimalPointable.java}XSDecimalPointable}} | 9 | +*-------------------------+----------------------+---------------: +| xs:double | DoublePointable | 8 | +*-------------------------+----------------------+---------------: +| xs:duration | {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDurationPointable.java}XSDurationPointable}} | 12 | +*-------------------------+----------------------+---------------: +| xs:float | FloatPointable | 4 | +*-------------------------+----------------------+---------------: +| xs:gDay | {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDatePointable.java}XSDatePointable}} | 6 | +*-------------------------+----------------------+---------------: +| xs:gMonth | {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDatePointable.java}XSDatePointable}} | 6 | +*-------------------------+----------------------+---------------: +| xs:gMonthDay | {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDatePointable.java}XSDatePointable}} | 6 | +*-------------------------+----------------------+---------------: +| xs:gYear | {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDatePointable.java}XSDatePointable}} | 6 | +*-------------------------+----------------------+---------------: +| xs:gYearMonth | {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDatePointable.java}XSDatePointable}} | 6 | +*-------------------------+----------------------+---------------: +| xs:int | IntegerPointable | 4 | +*-------------------------+----------------------+---------------: +| xs:integer | LongPointable | 8 | +*-------------------------+----------------------+---------------: +| xs:negativeInteger | LongPointable | 8 | +*-------------------------+----------------------+---------------: +| xs:nonNegativeInteger | LongPointable | 8 | +*-------------------------+----------------------+---------------: +| xs:nonPositiveInteger | LongPointable | 8 | +*-------------------------+----------------------+---------------: +| xs:positiveInteger | LongPointable | 8 | +*-------------------------+----------------------+---------------: +| xs:short | ShortPointable | 2 | +*-------------------------+----------------------+---------------: +| xs:time | {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSTimePointable.java}XSTimePointable}} | 8 | +*-------------------------+----------------------+---------------: +| xs:unsignedByte | ShortPointable | 2 | +*-------------------------+----------------------+---------------: +| xs:unsignedInt | LongPointable | 8 | +*-------------------------+----------------------+---------------: +| xs:unsignedLong | LongPointable | 8 | +*-------------------------+----------------------+---------------: +| xs:unsignedShort | IntegerPointable | 4 | +*-------------------------+----------------------+---------------: +| xs:yearMonthDuration | IntegerPointable | 4 | +*-------------------------+----------------------+---------------: + +** Variable Length Data + + Some information can not be stored in a fixed length value. The following + data types are stored in variable length values. Because the size varies, + the first two bytes are used to store the length of the total value in + bytes. QName is one exception to this rule because the QName field has + three distinct variable length fields. In this case we basically are + storing three strings right after each other. + + Please note that all strings are stored in UTF8. The UTF8 characters range + in size from one to three bytes. UTF8StringWriter supports writing a + character sequence into the UTF8StringPointable format. + +*-------------------------+----------------------+---------------+ +| <> | <> | <> | +*-------------------------+----------------------+---------------: +| xs:anyURI | UTF8StringPointable | 2 + length | +*-------------------------+----------------------+---------------: +| xs:base64Binary | {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSBinaryPointable.java}XSBinaryPointable}} | 2 + length | +*-------------------------+----------------------+---------------: +| xs:hexBinary | {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSBinaryPointable.java}XSBinaryPointable}} | 2 + length | +*-------------------------+----------------------+---------------: +| xs:NOTATION | UTF8StringPointable | 2 + length | +*-------------------------+----------------------+---------------: +| xs:QName | {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSQNamePointable.java}XSQNamePointable}} | 6 + length | +*-------------------------+----------------------+---------------: +| xs:string | UTF8StringPointable | 2 + length | +*-------------------------+----------------------+---------------: + + +* String Iterators + + For many string functions, we have used string iterators to traverse the + string. The iterator allows the user to ignore the details about the byte + size and number of characters. The iterator returns the next character or + an end of string value. Stacking iterators can be used to alter the string + into a desired form. + + * {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/ICharacterIterator.java}ICharacterIterator}} + + * {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/LowerCaseCharacterIterator.java}LowerCaseStringCharacterIterator}} + + * {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/SubstringAfterCharacterIterator.java}SubstringAfterStringCharacterIterator}} + + * {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/SubstringBeforeCharacterIterator.java}SubstringBeforeStringCharacterIterator}} + + * {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/SubstringCharacterIterator.java}SubstringStringCharacterIterator}} + + * {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/UTF8StringCharacterIterator.java}UTF8StringCharacterIterator}} + + * {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/UpperCaseCharacterIterator.java}UpperCaseStringCharacterIterator}} + +* Array Backed Value Store + + The array back value store is a key design element of Hyracks. The object + is used to manage an output array. The system creates an array large enough + to hold your output. Adding to the result, if necessary. The array can be + reused and can hold multiple pointable results due to the starting offset + parameter in the pointable. diff --git a/src/src/site/apt/development_eclipse_setup.apt b/src/src/site/apt/development_eclipse_setup.apt new file mode 100644 index 000000000..e713a04e4 --- /dev/null +++ b/src/src/site/apt/development_eclipse_setup.apt @@ -0,0 +1,112 @@ +~~ 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. + +Eclipse Setup + + Eclipse is a nice IDE for developing in Java and below are the instructions to setting up + Eclipse for Apache VXQuery\x99 development. + +* Installation + + * Install Java Development Kit (JDK) 1.7 or Later + + * Install Classic Eclipse + + Follow the instruction for eclipse on from {{{http://www.eclipse.org}www.eclipse.org}} for + the "Classic" eclipse version. + + * Install Apache Maven + + * Install Maven Integration (m2e) + + VXQuery uses {{{http://maven.apache.org/}Maven}} to define external libraries and build instructions. + The Eclipse plugin for Maven integeration can be found at {{{http://eclipse.org/m2e/}m2e}}. + +* Code Formatter Setup + + For VXQuery, the Hyracks project Eclipse formating template has been adopted as the standard. The + template file can be found at {{{http://hyracks.googlecode.com/files/HyracksCodeFormatProfile.xml}http://hyracks.googlecode.com/files/HyracksCodeFormatProfile.xml}} + + Menu Options from Preferences: + + * Java + + * Code Style + + * Formatter + +* Code Import Setup + + [[1]] Import Hyracks Code Base + + Download and install the Hyracks Full Stack Staging branch to get the latest Hyracks support + for development. This is required since some new features being build are affecting Hyracks + development. + +---------------------------------------- +$ git clone https://code.google.com/p/hyracks/ +$ cd hyracks +$ mvn install +$ cd .. +---------------------------------------- + + Note: On Windows based machines, it is likely that the post-installation verification tests will fail. + + Therefore, the mvn "-DskipTests" option can be used to save about 20 minutes, but will skip the verification tests. + + Finally, from Eclipse's File menu "import" the Maven Hyracks project you have just downloaded through git. + + [[1]] Import VXQuery Code Base + + The VXQuery code base must be installed so eclipse has full access. Similar to the Hyracks + installation, VXQuery needs to be downloaded from Apache's git repository. + +---------------------------------------- +$ git clone https://git-wip-us.apache.org/repos/asf/vxquery.git apache-vxquery +(Accept the certificate information for *.apache.org.) +$ cd apache-vxquery +$ mvn package +$ cd .. +---------------------------------------- + + Finally, from Eclipse's File menu "import" the Maven VXQuery project you have just downloaded through git. + + [[1]] Additional Project Configuration + + Some eclipse build errors will show up. To remove these display errors, add + "target/generated-sources/javacc" as a source folder in VXQuery Core. + + +* Debugging + + Eclipse can be used to debug VXQuery. Using the following java option will allow eclipse to pause the + execution and allow eclipse to step through the code. + + "-Xdebug -Xrunjdwp:transport=dt_socket,address=127.0.0.1:8000,server=y,suspend=y" + + Realize you may need to update the address for your system. More details can be found at + {{{http://www.ibm.com/developerworks/opensource/library/os-eclipse-javadebug/index.html}IBM}} + + In eclipse create a debug configuration for VXQuery using Java remote application settings. The default + setting will most likely work out of the box. To show all the source code for debugging, add all the + source code for the eclipse workspace. + + To begin the debug process, execute the command below. In eclipse select the new debug configuration + to start the eclipse debugger. + +---------------------------------------- +JAVA_OPTS="-Xmx1024m -Xdebug -Xrunjdwp:transport=dt_socket,address=127.0.0.1:8000,server=y,suspend=y" sh vxquery-cli/target/appassembler/bin/vxq ../test.xq -showoet +---------------------------------------- + diff --git a/src/src/site/apt/development_release.apt b/src/src/site/apt/development_release.apt new file mode 100644 index 000000000..5c0d83a4d --- /dev/null +++ b/src/src/site/apt/development_release.apt @@ -0,0 +1,217 @@ +~~ 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. + +Releasing Apache VXQuery\x99 + +* One time steps + + * set up directory structure + + There usually are 3 directories at the same level + + * the source directory <<>>, + + * the <<>> directory, and + + * the distribution directory <<>>. + + The source directory is version-controlled by <<>>, the other two + are version controlled by <<>>. + While the source directory and the distribution directory can have + arbitrary names and locations, the <<>> directory has to be called + <<>> and it needs to be at the same level as the source directory + to enable site deployment. + + Assuming that the source directory is available one can create the + directory structure by going to the directory that contains the + source directory and checking out the distribution and site + directories: + +--- +$ svn co https://dist.apache.org/repos/dist/release/vxquery dist +$ svn co https://svn.apache.org/repos/asf/vxquery/site +--- + + * create a code signing key with the Apache {{{http://www.apache.org/dev/openpgp.html#generate-key}instructions}} and example settings + + * add your key to the <<>> file + + Change into the <<>> directory and run + +--- +(gpg2 --list-sigs && gpg2 --armor --export ) >> KEYS +--- + + and then check the new <<>> file into svn + +--- +$ svn ci -m "add [YOUR NAME]'s key to KEYS file" +--- + + * create an encrypted version of your Apache LDAP password for the nexus repository at {{{https://repository.apache.org/}https://repository.apache.org/}} + + Follow the steps in the {{{http://maven.apache.org/guides/mini/guide-encryption.html}Password Encryption}} + guide to encrypt a master password and to encrypt your Apache LDAP password. + (It's nicer if you have maven > 3.2.1 to do this.) + + * add to <<<~/.m2/settings.xml>>> + + * for the upload to the nexus repository + +--- + +... + + ... + + + apache.snapshots.https + [YOUR APACHE LDAP USERNAME] + [YOUR APACHE LDAP PASSWORD (encrypted)] + + + + apache.releases.https + [YOUR APACHE LDAP USERNAME] + [YOUR APACHE LDAP PASSWORD (encrypted)] + + ... + +... + +--- + + * to sign the artifacts + +--- + + + apache-release + + gpg2 + ... + + + +--- + + * Download Apache Rat from {{{https://creadur.apache.org/rat/download_rat.cgi}https://creadur.apache.org/rat/download_rat.cgi}}. + + * Add your ssh key to {{{https://id.apache.org}id.apache.org}} (required to create a website on {{{https://people.apache.org}people.apache.org}}). + + * Login and update your profile details. + +* Each time steps + + * clean up + +--- +$ mvn clean +--- + + * run rat (always do this on a clean source folder): + +--- +$ java -jar ~/Downloads/apache-rat-0.11/apache-rat-0.11.jar -d . -E .rat-excludes +--- + + * test your setup + +--- +$ mvn install -Papache-release +--- + + * dry run of the release process + +--- +$ mvn release:prepare -DdryRun=true +--- + + * check (and fix) the content of the <<>> and <<>> files (especially the date) and the copyright dates in changed files + + * release to the staging repository + +--- +$ mvn release:prepare +$ mvn release:perform +--- + + * close the staging repository at {{{https://repository.apache.org/}https://repository.apache.org/}} + + * Log into the website and look at the "Staging Repositories". + + * Find the VXQuery repository and click the "close" button. + + * Add a message: "Apache VXQuery X.Y-rc#" + + * check that the artifacts are available in the repository + + * send out <<<[VOTE]>>> e-mail on dev@vxquery.apache.org + + * {{{http://mail-archives.apache.org/mod_mbox/vxquery-dev/201409.mbox/%3CCAGZxfJUZDczuZR5jQResE4B7%2Bv4QQgwMpAd%2B-_Kt-U_RjCyReA%40mail.gmail.com%3E}example e-mail}} + + * after successful vote release staging repository {{{https://repository.apache.org/}https://repository.apache.org/}} + + * Log into the website and look at the "Staging Repositories". + + * Find the VXQuery repository and click the "release" button. + + * Add a message: "Apache VXQuery X.Y Release" + + * add new source artifacts (archive + signature + hashes) to svn {{{https://dist.apache.org/repos/dist/release/vxquery}https://dist.apache.org/repos/dist/release/vxquery}} and remove old release dirctory + + * commit changes to svn + + * update the <<>> branch in git from the from the release-tag + + * build a new site and deploy it to <<<../site>>> + +--- +$ mvn site site:deploy +--- + + * submit the site to svn + +--- +$ cd ../site +$ svn st | awk '/\?/ { print $2 }' | xargs svn add # add all new files +$ svn ci -m"updated site" +$ cd - +--- + + * wait a few days for the mirroring of the release artifacts + + * send <<<[ANNOUNCE]>>> e-mail to announce@apache.org and dev@vxquery.apache.org + + * {{{http://mail-archives.apache.org/mod_mbox/www-announce/201405.mbox/%3C537AD473.9080505@apache.org%3E}example e-mail}} + +* References + + * {{{https://docs.sonatype.org/display/Repository/How+To+Generate+PGP+Signatures+With+Maven}How To Generate PGP Signatures With Maven}} + + * {{{https://www.apache.org/dev/publishing-maven-artifacts.html}Publishing Maven Artifacts}} + +~~ * Handling issues +~~ +~~ ** Undo release plugin: +~~ +~~ --- +~~ $ svn merge -r 1526098:1524606 https://svn.apache.org/repos/asf/vxquery/branches/vxquery_0_2_staging +~~ $ svn del -m "re-releasing build" https://svn.apache.org/repos/asf/vxquery/tags/apache-vxquery-0.2-incubating +~~ --- + diff --git a/src/src/site/apt/development_site_update.apt b/src/src/site/apt/development_site_update.apt new file mode 100644 index 000000000..7358cdbd5 --- /dev/null +++ b/src/src/site/apt/development_site_update.apt @@ -0,0 +1,80 @@ +~~ 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. + +Updating the Apache VXQuery\x99 site + +* One time steps + + * set up directory structure + + There usually are 2 directories at the same level + + * the source directory <<>>, + + * the <<>> directory, and + + The source directory is version-controlled by <<>>, the other is + version controlled by <<>>. + While the source directory can have an arbitrary name and location, + the <<>> directory has to be called <<>> and it needs to + be at the same level as the source directory to enable site deployment. + + Assuming that the source directory is available one can create the + directory structure by going to the directory that contains the + source directory and checking out the distribution and site + directories: + +--- +$ svn co https://dist.apache.org/repos/dist/release/vxquery dist +$ svn co https://svn.apache.org/repos/asf/vxquery/site +--- + +* For each update + + * update the <<>> branch in git + + * New release steps + + Please switch to the {{{http://vxquery.apache.org/development_release.html}release steps}} + and follow their directions. + + * Incremental site update + + When pushing changes to the site without a code release, the following git + commands will create a patch of only differences within the src/site folder. + Please verify the patch before applying it the site + +----- +git checkout master +git diff site src/site/ > ../site.patch" +git checkout site +git apply ../site.patch +---- + + * build a new site and deploy it to <<<../site>>> + +--- +$ mvn site site:deploy +--- + + * submit the site to svn + +--- +$ cd ../site +$ svn st | awk '/\?/ { print $2 }' | xargs svn add # add all new files +$ svn ci -m"updated site" +$ cd - +--- + diff --git a/src/src/site/apt/development_update_xqts_results.apt b/src/src/site/apt/development_update_xqts_results.apt new file mode 100644 index 000000000..115a1788f --- /dev/null +++ b/src/src/site/apt/development_update_xqts_results.apt @@ -0,0 +1,55 @@ +~~ 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. + +Update the XQTS Results + + VXQuery stores the latest XQTS result for the last release. + The file can be used to verify that all the previous test still passing. + The following instructions show how to update the XQTS results file. + +* Instructions + + * Verify current XQTS results are all passing before updating to the new XQTS test results. + The XQTS should be located in "vxquery-xtest/test-suites/xqts", as explained in the {{{Running the Test Suite}http://vxquery.apache.org/user_running_tests.html}} + The following command should produce all passing results. + They can be viewed at {{{file:///tmp/previous_report.html}file:///tmp/previous_report.html}}. + +---------------------------------------- +sh ./vxquery-xtest/target/appassembler/bin/xtest -catalog vxquery-xtest/test-suites/xqts/XQTSCatalog.xml -htmlreport /tmp/previous_report.html -previous-test-results vxquery-xtest/results/xqts.txt +---------------------------------------- + + * Remove the old results file. + +---------------------------------------- +rm vxquery-xtest/results/xqts.txt +---------------------------------------- + + * Generate the new XQTS result file and save it in the text format. + +---------------------------------------- +sh ./vxquery-xtest/target/appassembler/bin/xtest -catalog vxquery-xtest/test-suites/xqts/XQTSCatalog.xml -textreport vxquery-xtest/results/xqts_temp.txt +---------------------------------------- + + * Sort the results so they can be compared with previous results. + +---------------------------------------- +sort vxquery-xtest/results/xqts_temp.txt --output=vxquery-xtest/results/xqts.txt +---------------------------------------- + + * Clean up (remove) the temporary results files. + +---------------------------------------- +rm vxquery-xtest/results/xqts_temp.txt +---------------------------------------- diff --git a/src/src/site/apt/development_xmark_status.apt b/src/src/site/apt/development_xmark_status.apt new file mode 100644 index 000000000..a7a6f6cef --- /dev/null +++ b/src/src/site/apt/development_xmark_status.apt @@ -0,0 +1,76 @@ +~~ 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. + + +XMark Benchmark Documentation + + In the following table, XMark queries are listed to show the current status of + each query in VXQuery. The column represents the XMark query + number. column represents the original XMark query from the XMark Benchmark site. Original query + works if it has a status in the column. If the original query does not work, then + the column displays the error type. column represents + the parallel optimized version for the original XMark query. The optimized version of the query + has been written to increase performance. Optimized query + works if it has a status in the column. If the optimized query does not work, then + the column displays the error or displays . + column represents the frame size that VXQuery needs to run the query. + The column represents the JIRA issues for the query or are related to the query. + All queries that do not work with the default frame size + are related to {{{https://issues.apache.org/jira/browse/VXQUERY-167} VXQuery Issue 167 }}. + + +*------------------+--------------------+---------------------+-----------------+-----------+ +| <> | <> | <> | <> | <> | +*------------------+--------------------+---------------------+-----------------+-----------: +| 1 | Working | Working | Working with default size | None | +*------------------+--------------------+---------------------+-----------------+-----------: +| 2 | Working | Working | Working with default size | None | +*------------------+--------------------+---------------------+-----------------+-----------: +| 3 | Working | Working | Working with default size | None | +*------------------+--------------------+---------------------+-----------------+-----------: +| 4 | Working | Working| Working with default size | None | +*------------------+--------------------+---------------------+-----------------+-----------: +| 5 | Working | Working | Working with default size | None | +*------------------+--------------------+---------------------+-----------------+-----------: +| 6 | Error in the Query Plan | Same Error as Original Query | Cannot be determined | {{{https://issues.apache.org/jira/browse/VXQUERY-170} VXQuery Issue 170 }} | +*------------------+--------------------+---------------------+-----------------+-----------: +| 7 | Error in the Query Plan | Same Error as Original Query | Cannot be determined | {{{https://issues.apache.org/jira/browse/VXQUERY-170} VXQuery Issue 170 }} | +*------------------+--------------------+---------------------+-----------------+-----------: +| 8 | Working | Working | Working with default size | {{{https://issues.apache.org/jira/browse/VXQUERY-171} VXQuery Issue 171 }} | +*------------------+--------------------+---------------------+-----------------+-----------: +| 9 | Array Out Of bounds Exception | Same Error as Original Query | Cannot be determined | {{{https://issues.apache.org/jira/browse/VXQUERY-173} VXQuery Issue 173 }} | +*------------------+--------------------+---------------------+-----------------+-----------: +| 10 | Times out while execution | Same Error as Original Query | Cannot be determined | {{{https://issues.apache.org/jira/browse/VXQUERY-176} VXQuery Issue 176 }} | +*------------------+--------------------+---------------------+-----------------+-----------: +| 11 | Working | Working | Working with default size | {{{https://issues.apache.org/jira/browse/VXQUERY-171} VXQuery Issue 171 }} | +*------------------+--------------------+---------------------+-----------------+-----------: +| 12 | Working | Working |Working with default size | {{{https://issues.apache.org/jira/browse/VXQUERY-172} VXQuery Issue 172 }} | +*------------------+--------------------+---------------------+-----------------+-----------: +| 13 | Working | Working |Working with default size | None | +*------------------+--------------------+---------------------+-----------------+-----------: +| 14 | Working | Working |Working with max size | None | +*------------------+--------------------+---------------------+-----------------+-----------: +| 15 | Working | Working | Working with max size | {{{https://issues.apache.org/jira/browse/VXQUERY-174} VXQuery Issue 174 }} | +*------------------+--------------------+---------------------+-----------------+-----------: +| 16 | Working | Working |Working with max size | None | +*------------------+--------------------+---------------------+-----------------+-----------: +| 17 | Working | Working | Working with default size | {{{https://issues.apache.org/jira/browse/VXQUERY-171} VXQuery Issue 171 }} | +*------------------+--------------------+---------------------+-----------------+-----------: +| 18 | Use defined functions | Same Error as Original Query | Cannot be determined | {{{https://issues.apache.org/jira/browse/VXQUERY-154} VXQuery Issue 154 }} | +*------------------+--------------------+---------------------+-----------------+-----------: +| 19 | Working | Working | Working with default size | {{{https://issues.apache.org/jira/browse/VXQUERY-172} VXQuery Issue 172 }} | +*------------------+--------------------+---------------------+-----------------+-----------: +| 20 | Empty results | Same Error as Original Query | Working with frame size | {{{https://issues.apache.org/jira/browse/VXQUERY-175} VXQuery Issue 175 }} | +*------------------+--------------------+---------------------+-----------------+-----------: \ No newline at end of file diff --git a/src/src/site/apt/development_xml_document.apt b/src/src/site/apt/development_xml_document.apt new file mode 100644 index 000000000..3d4c2843b --- /dev/null +++ b/src/src/site/apt/development_xml_document.apt @@ -0,0 +1,607 @@ +~~ 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. + +XML Data Model Example + + +*Byte Array Break Down + + Every XML document in VXQuery is stored in memory as one continuous array of + bytes. Pointables are used to refer to these bytes in the memory. + This document covers VXQuery's representation of all the different types of + elements of an XML document. As a result, we use a lots of pointables + (same and different) through out the document. To simplify explanations, + each pointable is explicitly assigned a NodeID only on this web page. + Refer to the following link for details on the various pointables used: + {{{http://vxquery.apache.org/development_xml_node_details.html} XML Node Details }}. + +**XML Document + + We use the following XML document as an example to explain VXQuery's node + types. The different node types are Node Tree Pointable (NTP), + Document Node Pointable (DNP), Element Node Pointable (ENP), + Attribute Node Pointable (ANP), Text Node Pointable (TNP), + Comment Node Pointable (CNP) and Processing Instruction Node Pointable (PINP). + +--- + + + + + Macbeth + + + +--- + +** {Bytes} + + Following are the bytes for the XML document above. Elements in VXQuery are + accessed using Tagged Value Pointables. Similarly, the XML document is also + accessed using a Tagged Value Pointable. The first byte is represents the + value tag. It indicates the type of the bytes that follow. + +*** <<<107, 3, 0, 0, 0, 0, 0, 0, 0, -109, 0, 0, 0, 7, 0, 0, 0, 6, 0, 0, 0, 19, 0, 0, 0, 44, 0, 0, 0, 54, 0, 0, 0, 62, 0, 0, 0, 72, 0, 0, 0, 83, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 4, 0, 0, 0, 2, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 7, 99, 97, 116, 97, 108, 111, 103, 0, 0, 0, 1, 0, 19, 104, 116, 116, 112, 58, 47, 47, 101, 120, 97, 109, 112, 108, 101, 46, 111, 114, 103, 47, 0, 0, 0, 2, 0, 4, 98, 111, 111, 107, 0, 0, 0, 3, 0, 2, 101, 120, 0, 0, 0, 4, 0, 4, 105, 115, 98, 110, 0, 0, 0, 5, 0, 5, 116, 105, 116, 108, 101, 0, 0, 0, 6, 101, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 102, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 10, 0, 0, 0, -42, 0, 0, 0, -34, 104, 0, 0, 0, 2, 0, 3, 10, 32, 32, 102, 6, 0, 0, 0, 4, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 30, 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 4, 14, 0, 10, 48, 56, 49, 50, 52, 49, 54, 49, 51, 57, 0, 0, 0, 7, 0, 0, 0, 12, 0, 0, 0, 29, 0, 0, 0, 41, 0, 0, 0, 81, 0, 0, 0, 93, 0, 0, 0, 106, 0, 0, 0, 116, 104, 0, 0, 0, 5, 0, 5, 10, 32, 32, 32, 32, 105, 0, 0, 0, 6, 0, 10, 116, 111, 112, 32, 115, 101, 99, 114, 101, 116, 104, 0, 0, 0, 7, 0, 5, 10, 32, 32, 32, 32, 102, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 8, 0, 0, 0, 1, 0, 0, 0, 14, 104, 0, 0, 0, 9, 0, 7, 77, 97, 99, 98, 101, 116, 104, 104, 0, 0, 0, 10, 0, 5, 10, 32, 32, 32, 32, 106, 0, 0, 0, 11, 0, 4, 104, 105, 100, 101, 0, 0, 104, 0, 0, 0, 12, 0, 3, 10, 32, 32, 104, 0, 0, 0, 13, 0, 1, 10>>> + + +========================================================================= + +** {Node Tree} + + <<<107>>> The first byte as described above is the value tag for Node Tree + Pointable. + + The rest of the bytes represent a Node Tree Pointable. Refer to this link + to view the {{Bytes}} for the Node Tree Pointable(NTP). + + XML Documents in VXQuery are wrapped in Node Tree Pointables. As a side note, + every result produced as an output of a function is also wrapped in a NTP. + + Following are the bytes and contents of the Node Tree Pointable for this XML + document. + + <<< 3 >>> Header byte (One byte) that uses the lowest three bit to denote if + + ** bit exists: + + ** bit exists: + + ** bit
exists: + + <<< 0, 0, 0, 0 >>> These 4 bytes represent the + which has value <<0>> + + Following are the byte contents of the {{Dictionary}}. The byte array break + down is explained in details further ahead. + +*** <<<0, 0, 0, -109, 0, 0, 0, 7, 0, 0, 0, 6, 0, 0, 0, 19, 0, 0, 0, 44, 0, 0, 0, 54, 0, 0, 0, 62, 0, 0, 0, 72, 0, 0, 0, 83, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 4, 0, 0, 0, 2, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 7, 99, 97, 116, 97, 108, 111, 103, 0, 0, 0, 1, 0, 19, 104, 116, 116, 112, 58, 47, 47, 101, 120, 97, 109, 112, 108, 101, 46, 111, 114, 103, 47, 0, 0, 0, 2, 0, 4, 98, 111, 111, 107, 0, 0, 0, 3, 0, 2, 101, 120, 0, 0, 0, 4, 0, 4, 105, 115, 98, 110, 0, 0, 0, 5, 0, 5, 116, 105, 116, 108, 101, 0, 0, 0, 6>>> + + Element Node in NTP(root node): + + In this NTP, the Element Node or the root node is a Document Node Pointable + (DNP) ({{NodeID:0}}). <<101>> is the for Document Node Pointable. + Note that this root node can represent any pointable type. For example: + ElementNodePointable, Attribute Node Pointable or Text Node Pointable. + + Following are the byte contents for the Document Node Pointable + ({{NodeID:0}}). The byte array break down is explained further ahead. + +*** <<<0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 102, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 10, 0, 0, 0, -42, 0, 0, 0, -34, 104, 0, 0, 0, 2, 0, 3, 10, 32, 32, 102, 6, 0, 0, 0, 4, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 30, 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 4, 14, 0, 10, 48, 56, 49, 50, 52, 49, 54, 49, 51, 57, 0, 0, 0, 7, 0, 0, 0, 12, 0, 0, 0, 29, 0, 0, 0, 41, 0, 0, 0, 81, 0, 0, 0, 93, 0, 0, 0, 106, 0, 0, 0, 116, 104, 0, 0, 0, 5, 0, 5, 10, 32, 32, 32, 32, 105, 0, 0, 0, 6, 0, 10, 116, 111, 112, 32, 115, 101, 99, 114, 101, 116, 104, 0, 0, 0, 7, 0, 5, 10, 32, 32, 32, 32, 102, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 8, 0, 0, 0, 1, 0, 0, 0, 14, 104, 0, 0, 0, 9, 0, 7, 77, 97, 99, 98, 101, 116, 104, 104, 0, 0, 0, 10, 0, 5, 10, 32, 32, 32, 32, 106, 0, 0, 0, 11, 0, 4, 104, 105, 100, 101, 0, 0, 104, 0, 0, 0, 12, 0, 3, 10, 32, 32, 104, 0, 0, 0, 13, 0, 1, 10>>> + +========================================================================= + +** {Dictionary} + + Byte Array for the Dictionary + +*** <<<0, 0, 0, -109, 0, 0, 0, 7, 0, 0, 0, 6, 0, 0, 0, 19, 0, 0, 0, 44, 0, 0, 0, 54, 0, 0, 0, 62, 0, 0, 0, 72, 0, 0, 0, 83, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 4, 0, 0, 0, 2, 0, 0, 0, 5, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 7, 99, 97, 116, 97, 108, 111, 103, 0, 0, 0, 1, 0, 19, 104, 116, 116, 112, 58, 47, 47, 101, 120, 97, 109, 112, 108, 101, 46, 111, 114, 103, 47, 0, 0, 0, 2, 0, 4, 98, 111, 111, 107, 0, 0, 0, 3, 0, 2, 101, 120, 0, 0, 0, 4, 0, 4, 105, 115, 98, 110, 0, 0, 0, 5, 0, 5, 116, 105, 116, 108, 101, 0, 0, 0, 6>>> + +*** <<< 0, 0, 0, -109 >>> + + These 4 bytes represent the in signed integer format. + After conversion to unsigned integer format the value is <<147>>. + +*** <<<0, 0, 0, 7>>> + + These 4 bytes represent the in the dictionary: <<7>> + +*** <<<0, 0, 0, 6, 0, 0, 0, 19, 0, 0, 0, 44, 0, 0, 0, 54, 0, 0, 0, 62, 0, 0, 0, 72, 0, 0, 0, 83>>> + + This is a list of for each item in the dictionary. + There are 7 offsets. Each offset is 4 bytes long. Following are + the 7 offsets: <<6, 19, 44, 54, 62, 72, 83>> + +*** <<<0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 4, 0, 0, 0, 2, 0, 0, 0, 5, 0, 0, 0, 6>>> + + This is a sorted list of keys in alphabetical order. Each key is 4 byte long. + Each key is mapped to a string in the dictionary. The keys + are the numbers <<1>> through <<6>>. + + Following are the data values in the dictionary.Each data value is a + StringPointable. Each StringPointable maps to XML document strings. + +*** <<<0, 0, 0, 0, 0, 0>>> + + The of the string is <<0>>. The is <>. + The StringPointable is followed by the key which is <<0>>. + +*** <<<0, 7, 99, 97, 116, 97, 108, 111, 103, 0, 0, 0, 1>>> + + The of the string is <<7>>. The is <>. + The StringPointable is followed by the key which is <<1>>. + +*** <<<0, 19, 104, 116, 116, 112, 58, 47, 47, 101, 120, 97, 109, 112, 108, 101, 46, 111, 114, 103, 47, 0, 0, 0, 2>>> + + The of the string is <<19>>. + The is <>. + The StringPointable is followed by the key which is <<2>>. + +*** <<<0, 4, 98, 111, 111, 107, 0, 0, 0, 3>>> + + The of the string is <<4>>. The is <>. + The StringPointable is followed by the key which is <<3>>. + +*** <<<0, 2, 101, 120, 0, 0, 0, 4>>> + + The of the string is <<2>>. The is <>. + The StringPointable is followed by the key which is <<4>>. + +*** <<<0, 4, 105, 115, 98, 110, 0, 0, 0, 5>>> + + The of the string is <<4>>. The is <>. + The StringPointable is followed by the key which is <<5>>. + +*** <<<0, 5, 116, 105, 116, 108, 101, 0, 0, 0, 6>>> + + The of the string is <<4>>. The is <>. + The StringPointable is followed by the key which is <<6>>. + + +================================================================ + + +** Document Node ({NodeID:0}) + + This child is contained in the parent {{Node Tree}}. + + Byte Array for Document Node (NodeID:0) + +*** <<<101, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 102, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 10, 0, 0, 0, -42, 0, 0, 0, -34, 104, 0, 0, 0, 2, 0, 3, 10, 32, 32, 102, 6, 0, 0, 0, 4, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 30, 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 4, 14, 0, 10, 48, 56, 49, 50, 52, 49, 54, 49, 51, 57, 0, 0, 0, 7, 0, 0, 0, 12, 0, 0, 0, 29, 0, 0, 0, 41, 0, 0, 0, 81, 0, 0, 0, 93, 0, 0, 0, 106, 0, 0, 0, 116, 104, 0, 0, 0, 5, 0, 5, 10, 32, 32, 32, 32, 105, 0, 0, 0, 6, 0, 10, 116, 111, 112, 32, 115, 101, 99, 114, 101, 116, 104, 0, 0, 0, 7, 0, 5, 10, 32, 32, 32, 32, 102, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 8, 0, 0, 0, 1, 0, 0, 0, 14, 104, 0, 0, 0, 9, 0, 7, 77, 97, 99, 98, 101, 116, 104, 104, 0, 0, 0, 10, 0, 5, 10, 32, 32, 32, 32, 106, 0, 0, 0, 11, 0, 4, 104, 105, 100, 101, 0, 0, 104, 0, 0, 0, 12, 0, 3, 10, 32, 32, 104, 0, 0, 0, 13, 0, 1, 10>>> + + <<<101>>> is the value tag for the Document Node Pointable. + + Following are the bytes and contents of the Document Node Pointable. + + <<< 0, 0, 0, 0 >>> These 4 bytes represent the <Node Id> + which has value <<0>> + + Every Document Node Pointable contains a Sequence Pointable. This is analogous + to a collection of items(data). In VXQuery, the items(data) + in the Sequence Pointable are preceded by the number of items in the sequence + and item size. + + Sequence Content: + + <<<0, 0, 0, 1>>> These 4 bytes represents the <Number of Items> + in the sequence which is <<1>> + + <<<0, 0, 1, 0>>> These 4 bytes represents + the <Size of the item> which is <<257>> + + <Data in the Sequence>: Here the (item)data in the sequence is an + Element Node Pointable ({{NodeID:1}}). Note that the data can represent any + type of pointable or element. + +*** <<<102, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 10, 0, 0, 0, -42, 0, 0, 0, -34, 104, 0, 0, 0, 2, 0, 3, 10, 32, 32, 102, 6, 0, 0, 0, 4, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 30, 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 4, 14, 0, 10, 48, 56, 49, 50, 52, 49, 54, 49, 51, 57, 0, 0, 0, 7, 0, 0, 0, 12, 0, 0, 0, 29, 0, 0, 0, 41, 0, 0, 0, 81, 0, 0, 0, 93, 0, 0, 0, 106, 0, 0, 0, 116, 104, 0, 0, 0, 5, 0, 5, 10, 32, 32, 32, 32, 105, 0, 0, 0, 6, 0, 10, 116, 111, 112, 32, 115, 101, 99, 114, 101, 116, 104, 0, 0, 0, 7, 0, 5, 10, 32, 32, 32, 32, 102, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 8, 0, 0, 0, 1, 0, 0, 0, 14, 104, 0, 0, 0, 9, 0, 7, 77, 97, 99, 98, 101, 116, 104, 104, 0, 0, 0, 10, 0, 5, 10, 32, 32, 32, 32, 106, 0, 0, 0, 11, 0, 4, 104, 105, 100, 101, 0, 0, 104, 0, 0, 0, 12, 0, 3, 10, 32, 32, 104, 0, 0, 0, 13, 0, 1, 10>>> + + +================================================================ + + +** Element Node ({NodeID:1}) + + This child is contained in the parent Document Node ({{NodeID:0}}). + + Byte Array for Element Node NodeID:1 + +*** <<<102, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 10, 0, 0, 0, -42, 0, 0, 0, -34, 104, 0, 0, 0, 2, 0, 3, 10, 32, 32, 102, 6, 0, 0, 0, 4, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 30, 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 4, 14, 0, 10, 48, 56, 49, 50, 52, 49, 54, 49, 51, 57, 0, 0, 0, 7, 0, 0, 0, 12, 0, 0, 0, 29, 0, 0, 0, 41, 0, 0, 0, 81, 0, 0, 0, 93, 0, 0, 0, 106, 0, 0, 0, 116, 104, 0, 0, 0, 5, 0, 5, 10, 32, 32, 32, 32, 105, 0, 0, 0, 6, 0, 10, 116, 111, 112, 32, 115, 101, 99, 114, 101, 116, 104, 0, 0, 0, 7, 0, 5, 10, 32, 32, 32, 32, 102, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 8, 0, 0, 0, 1, 0, 0, 0, 14, 104, 0, 0, 0, 9, 0, 7, 77, 97, 99, 98, 101, 116, 104, 104, 0, 0, 0, 10, 0, 5, 10, 32, 32, 32, 32, 106, 0, 0, 0, 11, 0, 4, 104, 105, 100, 101, 0, 0, 104, 0, 0, 0, 12, 0, 3, 10, 32, 32, 104, 0, 0, 0, 13, 0, 1, 10>>> + + <<<102>>> is the value tag for Element Node Pointable. + + Following are the bytes and contents of the Element Node Pointable. + + <<< 4 >>> Header byte (One byte) that uses the lowest three bits to denote if + + ** bit <Namespace Chunk> exists: <No> + + ** bit <Attribute Chunk> exists: <No> + + ** bit <Children Chunk> exists: <Yes> + + <<<0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1>>> This is a <Name Pointer> which is an + array of integers(4 bytes) of size <<3>> + + <<<0, 0, 0, 1>>> This is the <Local Node Id> which uses 4 bytes. + + Children Chunk is a Sequence Pointable. This is analogous to a collection + of items(data). In VXQuery, the items(data) + in the Sequence Pointable are preceded by the number of items + in the sequence and item size. + + Sequence Content childrenChunk: + + <<<0, 0, 0, 3>>> <Number of Items> in the + SequencePointable <children chunk> is <<3>> + + <<<0, 0, 0, 10>>> <Offset> of the first item is <<10>> + + <<<0, 0, 0, -42>>> <Offset> of the second item is <<214>> + + <<<0, 0, 0, -34>>> <Offset> of the third item is <<222>> + + <Data in the Sequence>: Here the items(data) in the sequence are Text + Node Pointables ({{NodeID:2}}), ({{NodeID:13}}) and Element Node Pointable + ({{NodeID:3}}). Note that the data can represent any type of pointable + or element. + +*** <<<104, 0, 0, 0, 2, 0, 3, 10, 32, 32, 102, 6, 0, 0, 0, 4, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 30, 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 4, 14, 0, 10, 48, 56, 49, 50, 52, 49, 54, 49, 51, 57, 0, 0, 0, 7, 0, 0, 0, 12, 0, 0, 0, 29, 0, 0, 0, 41, 0, 0, 0, 81, 0, 0, 0, 93, 0, 0, 0, 106, 0, 0, 0, 116, 104, 0, 0, 0, 5, 0, 5, 10, 32, 32, 32, 32, 105, 0, 0, 0, 6, 0, 10, 116, 111, 112, 32, 115, 101, 99, 114, 101, 116, 104, 0, 0, 0, 7, 0, 5, 10, 32, 32, 32, 32, 102, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 8, 0, 0, 0, 1, 0, 0, 0, 14, 104, 0, 0, 0, 9, 0, 7, 77, 97, 99, 98, 101, 116, 104, 104, 0, 0, 0, 10, 0, 5, 10, 32, 32, 32, 32, 106, 0, 0, 0, 11, 0, 4, 104, 105, 100, 101, 0, 0, 104, 0, 0, 0, 12, 0, 3, 10, 32, 32, 104, 0, 0, 0, 13, 0, 1, 10>>> + + +================================================================ + + +** Text Node ({NodeID:2}) + + This child is contained in the parent Element Node ({{NodeID:1}}). + + Byte Array for Text Node NodeID:2 + +*** <<<104, 0, 0, 0, 2, 0, 3, 10, 32, 32>>> + + <<<104>>> is the value tag for the Text Node Pointable. + + Following are the bytes and contents of the Text Node Pointable. + + <<<0, 0, 0, 2>>> This is the <Node Id> that uses 4 bytes and has value <<2>> + + <<<0, 3, 10, 32, 32>>> This is the <UTF8String> which has a size <<3>> + and value represents a <<new line>> and 2 <<spaces>> + +================================================================ + + +** Element Node ({NodeID:3}) + + This child is contained in the parent Element Node ({{NodeID:1}}). + + Byte Array for Element Node NodeID:3 + +*** <<<102, 6, 0, 0, 0, 4, 0, 0, 0, 2, 0, 0, 0, 3, 0, 0, 0, 3, 0, 0, 0, 1, 0, 0, 0, 30, 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 4, 14, 0, 10, 48, 56, 49, 50, 52, 49, 54, 49, 51, 57, 0, 0, 0, 7, 0, 0, 0, 12, 0, 0, 0, 29, 0, 0, 0, 41, 0, 0, 0, 81, 0, 0, 0, 93, 0, 0, 0, 106, 0, 0, 0, 116, 104, 0, 0, 0, 5, 0, 5, 10, 32, 32, 32, 32, 105, 0, 0, 0, 6, 0, 10, 116, 111, 112, 32, 115, 101, 99, 114, 101, 116, 104, 0, 0, 0, 7, 0, 5, 10, 32, 32, 32, 32, 102, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 8, 0, 0, 0, 1, 0, 0, 0, 14, 104, 0, 0, 0, 9, 0, 7, 77, 97, 99, 98, 101, 116, 104, 104, 0, 0, 0, 10, 0, 5, 10, 32, 32, 32, 32, 106, 0, 0, 0, 11, 0, 4, 104, 105, 100, 101, 0, 0, 104, 0, 0, 0, 12, 0, 3, 10, 32, 32>>> + + <<<102>>> is the value tag for the Element Node Pointable. + + Following are the bytes and contents of the Element Node Pointable. + + <<< 6 >>> Header byte (One byte) that uses the three lowest bit to denote if + + ** bit <Namespace Chunk> exists: <No> + + ** bit <Attribute Chunk> exists: <Yes> + + ** bit <Children Chunk> exists: <Yes> + + <<<0, 0, 0, 4, 0, 0, 0, 2, 0, 0, 0, 3>>> This is a <Name Pointer> which is an + array of integers(4 bytes) of size <<3>> + + <<<0, 0, 0, 3>>> This is the <Local Node Id> which uses 4 bytes. + + Attribute Chunk is a Sequence Pointable. + + Sequence Content attributeChunk: + + <<<0, 0, 0, 1>>> <Number of Items> in the + SequencePointable <attribute chunk> is <<1>> + + <<<0, 0, 0, 30>>> <Size> of the first item is <<30>> + + <Data in the Sequence>: Here the item(data) in the sequence is an + Attribute Node Pointable ({{NodeID:4}}). Note that the data + can represent any type of pointable or element. + +*** <<< 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 4, 14, 0, 10, 48, 56, 49, 50, 52, 49, 54, 49, 51, 57>>> + + Children Chunk is a Sequence Pointable. This is analogous to a collection of + items(data). In VXQuery, the items(data) + in the Sequence Pointable are preceded by the number of + items in the sequence and item size. + + Sequence Content childrenChunk: + + <<<0, 0, 0, 7>>> <Number of Items> in the + SequencePointable <children chunk> is <<3>> + + <<<0, 0, 0, 12>>> <Offset> of the first item is <<12>> + + <<<0, 0, 0, 29>>> <Offset> of the second item is <<12>> + + <<<0, 0, 0, 41>>> <Offset> of the third item is <<41>> + + <<<0, 0, 0, 81>>> <Offset> of the fourth item is <<81>> + + <<<0, 0, 0, 93>>> <Offset> of the fifth item is <<93>> + + <<<0, 0, 0, 106>>> <Offset> of the sixth item is <<106>> + + <<<0, 0, 0, 116>>> <Offset> of the seventh item is <<116>> + + <Data in the Sequence>: Here the items(data) in the sequence are Text Node + ({{NodeID:5}}), ({{NodeID:7}}), ({{NodeID:10}}), ({{NodeID:12}}), + Element Node ({{NodeID:8}}), Comment Node ({{NodeID:6}}) and + Processing Instruction Node ({{NodeID:11}}). + +*** <<<104, 0, 0, 0, 5, 0, 5, 10, 32, 32, 32, 32, 105, 0, 0, 0, 6, 0, 10, 116, 111, 112, 32, 115, 101, 99, 114, 101, 116, 104, 0, 0, 0, 7, 0, 5, 10, 32, 32, 32, 32, 102, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 8, 0, 0, 0, 1, 0, 0, 0, 14, 104, 0, 0, 0, 9, 0, 7, 77, 97, 99, 98, 101, 116, 104, 104, 0, 0, 0, 10, 0, 5, 10, 32, 32, 32, 32, 106, 0, 0, 0, 11, 0, 4, 104, 105, 100, 101, 0, 0, 104, 0, 0, 0, 12, 0, 3, 10, 32, 32, 104, 0, 0, 0, 13, 0, 1, 10>>> + + +================================================================ + + +** Attribute Node ({NodeID:3}) + + This child is contained in the parent Element Node ({{NodeID:3}}). + + Byte Array for Attribute Node NodeID:3 + +*** <<<103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 4, 14, 0, 10, 48, 56, 49, 50, 52, 49, 54, 49, 51, 57>>> + + <<<103>>> is the value tag for the Attribute Node Pointable. + + Following are the bytes and contents of the Attribute Node Pointable. + + <<<0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5,>>> This is a <Name Pointer> + which is an array of integers(4 bytes) of size <<3>>. It consists of + <PrefixCode>, <NamespaceCode>, <LocalCode>. + + <<<0, 0, 0, 4>>> This is the <NodeId> which has a value of <<4>>. + + <<<14, 0, 10, 48, 56, 49, 50, 52, 49, 54, 49, 51, 57 >>> This is a + string of length <<10>> and the length of the string is <<0812416139>> + + +================================================================ + + +** Text Node Pointable ({NodeID:5}) + + This child is contained in the parent Element Node ({{NodeID:3}}) + childrenChunk. + + Byte Array for Text Node NodeID:5 + +*** <<<104, 0, 0, 0, 5, 0, 5, 10, 32, 32, 32, 32>>> + + <<<104>>> is the value tag for the Text Node Pointable. + + Following are the bytes and contents of the Text Node Pointable. + + <<<0, 0, 0, 5>>> This is the <Node Id> that uses 4 bytes and has value <<2>> + + <<< 0, 5, 10, 32, 32, 32, 32>>> This is the <UTF8String> which has + a size <<5>> and value represents a <<new line>> and 4 <<spaces>> + + +================================================================ + + +** Comment Node Pointable ({NodeID:6}) + + This child is contained in the parent Element Node ({{NodeID:3}}) + childrenChunk. + + Byte Array for Comment Node NodeID:6 + +*** <<<105, 0, 0, 0, 6, 0, 10, 116, 111, 112, 32, 115, 101, 99, 114, 101, 116>>> + + <<<105>>> is the value tag for the Comment Node Pointable. + + Following are the bytes and contents of the Comment Node Pointable. + + <<<0, 0, 0, 6>>> This is the <Node Id> that uses 4 bytes and has value <<6>> + + <<< 0, 10, 116, 111, 112, 32, 115, 101, 99, 114, 101, 116>>> + This is the <UTF8String> which has a size <<10>> and value <<top secret>> + + +================================================================ + + +** Text Node Pointable ({NodeID:7}) + + This child is contained in the parent Element Node ({{NodeID:3}}) + childrenChunk. + + Byte Array for Text Node NodeID:7 + +*** <<< 104, 0, 0, 0, 7, 0, 5, 10, 32, 32, 32, 32>>> + + <<<104>>> is the value tag for the Text Node Pointable. + + Following are the bytes and contents of the Text Node Pointable. + + <<<0, 0, 0, 7>>> This is the <Node Id> that uses 4 bytes and has value <<7>> + + <<< 0, 5, 10, 32, 32, 32, 32>>> This is the <UTF8String> + which has a size <<5>> and value represents a <<new line>> and 4 <<spaces>> + + +================================================================ + + +** Element Node ({NodeID:8}) + + This child is contained in the parent Element Node ({{NodeID:3}}) + childrenChunk. + + Byte Array for Element Node NodeID:8 + +*** <<<102, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 8, 0, 0, 0, 1, 0, 0, 0, 14, 104, 0, 0, 0, 9, 0, 7, 77, 97, 99, 98, 101, 116, 104>>> + + <<<102>>> is the value tag for the Element Node Pointable. + + Following are the bytes and contents of the Element Node Pointable. + + <<< 4 >>> Header byte (One byte) that uses the lowest three bits to denote if + + ** bit <Namespace Chunk> exists: <No> + + ** bit <Attribute Chunk> exists: <No> + + ** bit <Children Chunk> exists: <Yes> + + <<<0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6>>> This is a <Name Pointer> + which is an array of integers(4 bytes) of size <<3>> + + <<<0, 0, 0, 8>>> This is the <Node Id> that uses 4 bytes and has value <<8>> + + Following is a SequencePointable. + + Sequence Content childrenChunk + + <<<0, 0, 0, 1>>> <Number of Items> in the + SequencePointable <children chunk> is <<1>> + + <<<0, 0, 0, 14>>> <Offset> of the first item is <<14>> + + <Data in the Sequence>: Here the (item)data in the sequence is a + Text Node Pointable ({{NodeID:9}}). + +*** <<< 104, 0, 0, 0, 9, 0, 7, 77, 97, 99, 98, 101, 116, 104>>> + + +================================================================ + + +** Text Node Pointable ({NodeID:9}) + + This child is contained in the parent Element Node ({{NodeID:8}}). + + Byte Array for Text NodeID:9 + +*** <<<104, 0, 0, 0, 9, 0, 7, 77, 97, 99, 98, 101, 116, 104>>> + + <<<104>>> is the value tag for the Text Node Pointable. + + Following are the bytes and contents of the Text Node Pointable. + + <<<0, 0, 0, 9>>> This is the <Node Id> that uses 4 bytes and has value <<9>> + + <<<0, 7, 77, 97, 99, 98, 101, 116, 104>>> This is the <UTF8String> + which has a size <<7>> and value <<Macbeth>> + + +================================================================ + + +** Text Node Pointable ({NodeID:10}) + + This child is contained in the parent Element Node ({{NodeID:3}}) + childrenChunk. + + Byte Array for Text Node NodeID:10 + +*** <<<104, 0, 0, 0, 10, 0, 5, 10, 32, 32, 32, 32>>> + + <<<104>>> + and the rest of the bytes represent a Text Node Pointable. + + Following are the bytes and contents of the Text Node Pointable. + + <<<0, 0, 0, 10>>> This is the <Node Id> that uses 4 bytes and has value <<2>> + + <<<0, 5, 10, 32, 32, 32, 32>>> This is the <UTF8String> which has a size <<5>> + and value represents a <<new line>> and 4 <<spaces>> + + +================================================================ + + +** Processing Instruction Node ({NodeID:11}) + + This child is contained in the parent Element Node ({{NodeID:3}}) + childrenChunk. + + Byte Array for Processing Instruction Node NodeID:11 + +*** <<<106, 0, 0, 0, 11, 0, 4, 104, 105, 100, 101>>> + + Note that this is a Tagged Value Pointable in which the value tag is <<106>> + and the rest of the bytes represent a Processing Instruction Node Pointable. + + Following are the bytes and contents of the Processing + Instruction Node Pointable. + + <<<0, 0, 0, 11>>> This is the <Node Id> that uses 4 bytes and has value <<11>> + + <<<0, 4, 104, 105, 100, 101>>> This is the <UTF8String> + which has a size <<4>> and value <<hide>> + + <<<0, 0>>> This is also a string representing content. + It is a <<null string>>. + + +================================================================ + + +** Text Node Pointable ({NodeID:12}) + + This child is contained in the parent Element Node ({{NodeID:3}}) + childrenChunk. + + Byte Array for Text Node NodeID:12 + +*** <<<104, 0, 0, 0, 12, 0, 3, 10, 32, 32>>> + + Note that this is a Tagged Value Pointable in which the value tag is <<104>> + and the rest of the bytes represent a Text Node Pointable. + + Following are the bytes and contents of the Text Node Pointable. + + <<<0, 0, 0, 12>>> This is the <Node Id> that uses 4 bytes and has value <<12>> + + <<<0, 3, 10, 32, 32>>> This is the <UTF8String> which has a size <<3>> + and value represents a <<new line>> and 2 <<spaces>>. + + +================================================================ + + +** Text Node Pointable ({NodeID:13}) + + This child is contained in the parent Element Node ({{NodeID:1}}). + + Byte Array for Text Node NodeID:13 + +*** <<<104, 0, 0, 0, 13, 0, 1, 10>>> + + <<<104>>> is the value tag for the Text Node Pointable. + + Following are the bytes and contents of the Text Node Pointable. + + <<<0, 0, 0, 13>>> This is the <Node Id> that uses 4 bytes and has value <<13>> + + <<<0, 1, 10>>> This is the <UTF8String> which has a size <<1>> + and value represents a <<new line>>. + + +================================================================ \ No newline at end of file diff --git a/src/src/site/apt/development_xml_node_details.apt b/src/src/site/apt/development_xml_node_details.apt new file mode 100644 index 000000000..7483b0e86 --- /dev/null +++ b/src/src/site/apt/development_xml_node_details.apt @@ -0,0 +1,162 @@ +~~ 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. + +XML Data and Node Types + + XML is used as the data source for XQuery and must be parsed into Hyracks data. Each + node type defined in XPath and XQuery can be mapped into pointable defined in Apache + VXQuery\x99. + +* XPath Node Types + +*-----------------------------------+----------------------+---------------+ +| <<Data Type>> | <<Pointable Name>> | <<Data Size>> | +*-----------------------------------+----------------------+---------------: +| Attribute Nodes(ANP) | {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/AttributeNodePointable.java}AttributeNodePointable}} | 1 + length | +*-----------------------------------+----------------------+---------------: +| Document Nodes(DNP) | {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/DocumentNodePointable.java}DocumentNodePointable}} | 1 + length | +*-----------------------------------+----------------------+---------------: +| Element Nodes(ENP) | {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/ElementNodePointable.java}ElementNodePointable}} | 1 + length | +*-----------------------------------+----------------------+---------------: +| Node Tree(NTP) | {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/NodeTreePointable.java}NodeTreePointable}} | 1 + length | +*-----------------------------------+----------------------+---------------: +| Processing Instruction Node(PINP) | {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/PINodePointable.java}PINodePointable}} | 1 + length | +*-----------------------------------+----------------------+---------------: +| Comment Node(CNP) | {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/TextOrCommentNodePointable.java}TextOrCommentNodePointable}} | 1 + length | +*-----------------------------------+----------------------+---------------: +| Text Node(TNP) | {{{https://git-wip-us.apache.org/repos/asf?p=vxquery.git;a=blob;f=vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/TextOrCommentNodePointable.java}TextOrCommentNodePointable}} | 1 + length | +*-----------------------------------+----------------------+---------------: + + +* XML Mapping + + The XML mapping to Hyracks pointables is fairly straight forward. The following example + shows how each node is mapped and saved into a byte array used by Hyracks. + +** Example XML File + + The example XML file comes from W3School XQuery tutorial. + +---------------------------------------- +<?xml version="1.0" encoding="ISO-8859-1"?> +<!-- Edited by XMLSpyÆ --> +<bookstore> + + <book category="COOKING"> + <title lang="en">Everyday Italian + Giada De Laurentiis + 2005 + 30.00 + + + + Harry Potter + J K. Rowling + 2005 + 29.99 + + + + XQuery Kick Start + James McGovern + Per Bothner + Kurt Cagle + James Linn + Vaidyanathan Nagarajan + 2003 + 49.99 + + + + Learning XML + Erik T. Ray + 2003 + 39.95 + + + +---------------------------------------- + +** Example Hyracks Mapping + + The mapping is explained through using some short hand for the above example XML file. + Realize the direct bytes will not be explained although the pointable names are used for + each piece of information. + +---------------------------------------- +NodeTree { + DocumentNode {bookstore} + sequence (children) { + ElementNode {book} + sequence (attributes) { + AttributeNode {category} + } + sequence (children) { + ElementNode {title:Everyday Italian} + sequence (attributes) { + AttributeNode {lang} + } + ElementNode {author} + ElementNode {year} + ElementNode {price} + } + ElementNode {book} + sequence (attributes) { + AttributeNode {category} + } + sequence (children) { + ElementNode {title:Harry Potter} + sequence (attributes) { + AttributeNode {lang} + } + ElementNode {author} + ElementNode {year} + ElementNode {price} + } + ElementNode {book} + sequence (attributes) { + AttributeNode {category} + } + sequence (children) { + ElementNode {title:XQuery Kick Start} + sequence (attributes) { + AttributeNode {lang} + } + ElementNode {author} + ElementNode {author} + ElementNode {author} + ElementNode {author} + ElementNode {author} + ElementNode {year} + ElementNode {price} + } + ElementNode {book} + sequence (attributes) { + AttributeNode {category} + } + sequence (children) { + ElementNode {title:Learning XML} + sequence (attributes) { + AttributeNode {lang} + } + ElementNode {author} + ElementNode {year} + ElementNode {price} + } + } +} +---------------------------------------- + + \ No newline at end of file diff --git a/src/src/site/apt/index.apt b/src/src/site/apt/index.apt new file mode 100644 index 000000000..8b5777a08 --- /dev/null +++ b/src/src/site/apt/index.apt @@ -0,0 +1,27 @@ +~~ 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. + +Apache VXQuery + + Apache VXQuery\x99 will be a standards compliant XML Query processor implemented in Java. + The focus is on the evaluation of queries on large amounts of XML data. + Specifically the goal is to evaluate queries on large collections of relatively small XML documents. + To achieve this queries will be evaluated on a cluster of shared nothing machines. + + 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 diff --git a/src/src/site/apt/user_cluster_installation.apt b/src/src/site/apt/user_cluster_installation.apt new file mode 100644 index 000000000..134290844 --- /dev/null +++ b/src/src/site/apt/user_cluster_installation.apt @@ -0,0 +1,149 @@ +~~ 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. + +Cluster Installation + + +* Requirements + + * Apache VXQuery\x99 source archive (apache-vxquery-X.Y-source-release.zip) + + * JDK >= 1.7 + + * Apache Maven >= 3.2 + + +* Steps + + * <> + +--- +$ export JAVA_HOME=/usr/java/latest +--- + + + * <> + +--- +$ unzip apache-vxquery-X.Y-source-release.zip +$ cd apache-vxquery-X.Y +$ mvn package -DskipTests +$ cd .. +--- + + + * <> + + 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. + +--- + + local + joe + + master + 128.195.52.177 + 192.168.100.0 + + + nodeA + 192.168.100.1 + + + nodeB + 192.168.100.2 + + + nodeC + 192.168.100.3 + + +--- + + * 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 + + * cluster_ip : ip of the host in the cluster + + * client_ip : ip of the master + + * Some optional fields: + + * CCPORT : port for the Cluster Controller + + * J_OPTS : define the java options you want, for Cluster Controller and Node Controller + + + * <> + + 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: + + * -c : path to the configuration file you created + + * -a : action you want to perform + + * -d : directory in the system to deploy the cluster + + + * <> + + The command to start the cluster is + +--- +$python cluster_cli.py -c ../conf/cluster.xml -a start +--- + + + * <> + + The command to stop the cluster is + +--- +$python cluster_cli.py -c ../conf/cluster.xml -a stop +--- + + + * <> + + You can try these commands to check on the status of the processes + +--- +$ps -ef|grep ${USER}|grep java|grep 'Dapp.name=vxquerycc' +--- + + + * <> + +--- +$ps -ef|grep ${USER}|grep java|grep 'Dapp.name=vxquerync' +--- + + + * <> + +--- +$ps -ef|grep ${USER}|grep java|grep 'hyracks' +--- \ No newline at end of file diff --git a/src/src/site/apt/user_get_started.apt b/src/src/site/apt/user_get_started.apt new file mode 100644 index 000000000..f84c5e218 --- /dev/null +++ b/src/src/site/apt/user_get_started.apt @@ -0,0 +1,35 @@ +~~ 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. + +Get Started with the VXQuery Community + + The following steps outline how to get involved with Apache VXQuery community. + These steps will connect you with the community and give you a place to start with XQuery. + + * Sign up for the dev mailing list. + + * {{{http://vxquery.apache.org/mail-lists.html}Mailing list}} + + * Download the latest release and run a few queries. + + * {{{http://vxquery.apache.org/user_installation.html}Installation instructions}}. + + * {{{http://vxquery.apache.org/user_query.html}Execute a query}}. + + * If you want more information on XQuery: + + * Go through the {{{http://www.w3schools.com/xquery/}W3Schools XQuery tutorial}}. + + * Review the {{{http://www.w3.org/TR/xquery/}XQuery specification}}. diff --git a/src/src/site/apt/user_installation.apt b/src/src/site/apt/user_installation.apt new file mode 100644 index 000000000..3005885a5 --- /dev/null +++ b/src/src/site/apt/user_installation.apt @@ -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. + +Installation + +* Requirements + + * Apache VXQuery\x99 source archive (apache-vxquery-X.Y-source-release.zip) + + * JDK >= 1.7 + + * Apache Maven >= 3.2 + +* Steps + +--- +$ unzip apache-vxquery-X.Y-source-release.zip +$ cd apache-vxquery-X.Y +$ mvn package -DskipTests +$ cd .. +--- diff --git a/src/src/site/apt/user_query.apt b/src/src/site/apt/user_query.apt new file mode 100644 index 000000000..ddcf84985 --- /dev/null +++ b/src/src/site/apt/user_query.apt @@ -0,0 +1,83 @@ +~~ 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. + +Executing a Query + + +* Command On *nix Based Systems + +---------------------------------------- +sh ./apache-vxquery-X.Y/vxquery-cli/target/appassembler/bin/vxq +---------------------------------------- + +* Commands On Windows Based Systems + +---------------------------------------- +set JAVA_OPTS=-Xmx1024m + +set PATH=%PATH%;"path-to"\apache-vxquery-X.Y\vxquery-cli\target\appassembler\bin\ + +vxq "path-to"\test.xq +---------------------------------------- + +* Command Line Options + + Command line options for all systems. + +---------------------------------------- +-O N : Optimization Level. Default: Full Optimization +-available-processors N : Number of available processors. (default java's available processors) +-client-net-ip-address VAL : IP Address of the ClusterController +-client-net-port N : Port of the ClusterController (default 1098) +-compileonly : Compile the query and stop +-frame-size N : Frame size in bytes. (default 65536) +-local-node-controllers N : Number of local node controllers (default 1) +-repeatexec N : Number of times to repeat execution +-showast : Show abstract syntax tree +-showoet : Show optimized expression tree +-showquery : Show query string +-showrp : Show Runtime plan +-showtet : Show translated expression tree +-timing : Produce timing information +---------------------------------------- + +* Java Options + +---------------------------------------- +JAVA_OPTS="-Xmx1024m" +---------------------------------------- + + +* Example + + The following example query is from {{{http://www.w3schools.com/xquery/default.asp}W3Schools XQuery Tutorial}}. + If you are new to XQuery, the W3Schools tutorial is a great place to start. + + [[i]] Query file (test.xq) + +---------------------------------------- +for $x in doc("books.xml")/bookstore/book +where $x/price>30 +order by $x/title +return $x/title +---------------------------------------- + + [[i]] Command line + +---------------------------------------- +JAVA_OPTS="-Xmx1024m" sh ./apache-vxquery-X.Y/vxquery-cli/target/appassembler/bin/vxq test.xq +---------------------------------------- + + diff --git a/src/src/site/apt/user_running_tests.apt b/src/src/site/apt/user_running_tests.apt new file mode 100644 index 000000000..d5e97b2af --- /dev/null +++ b/src/src/site/apt/user_running_tests.apt @@ -0,0 +1,126 @@ +~~ 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. + +Running the Test Suite + + +* Command On *nix Based Systems + +---------------------------------------- +sh ./vxquery/vxquery-xtest/target/appassembler/bin/xtest +---------------------------------------- + +* Command On Windows Based Systems + + First navigate to "apache-vxquery-X.Y/vxquery-cli/target/appassembler/bin" and then run the following file. + +---------------------------------------- +xtest.bat +---------------------------------------- + +* Command Line Options + +---------------------------------------- + -O N : Optimization Level + -catalog VAL : Test Catalog XML + -exclude VAL : Exclude filter regular expression + -htmlreport VAL : HTML Report output file + -include VAL : Include filter regular expression + -keepalive N : Milliseconds to keep server alive after tests have completed + -port N : Port for web server to listen on + -textreport VAL : Text Report output file + -threads N : Number of threads + -v : Verbose + -xmlreport VAL : XML Report output file +---------------------------------------- + +* Java Options + + The command can be run with Java options to increase the amount of memory to one gigabyte. + Also helps to use a logging properties file that only output serious errors. This will reduce the + output to only a few "LINE 7:" lines. Should help with the speed in running the test. + +---------------------------------------- +JAVA_OPTS="-Xmx1024m -Djava.util.logging.config.file=/path/to/logging.properties" +---------------------------------------- + +* VXQuery Testing Options + + * VXQuery Test Suite + + The VXQuery test suite focuses on parallel processing tests used in our weather benchmark. + +---------------------------------------- +sh ./vxquery-xtest/target/appassembler/bin/xtest -catalog vxquery-xtest/src/test/resources/VXQueryCatalog.xml -htmlreport /tmp/vxquery_report.html +---------------------------------------- + + * view the results at {{{file:///tmp/vxquery_report.html}file:///tmp/vxquery_report.html}}. + + * XQTS (XQuery Test Suite) + To run the complete XQTS on VXQuery. + + * Create a folder to hold the XQTS. + If you use "vxquery-xtest/test-suites/xqts", then maven will utilize the XQTS to verify VXQuery's passing functions during the build process. + +---------------------------------------- +$ mkdir -p vxquery-xtest/test-suites +$ cd vxquery-xtest/test-suites +---------------------------------------- + + * Get the archive {{{http://dev.w3.org/2006/xquery-test-suite/PublicPagesStagingArea/XQTS_1_0_3.zip}XQTS_1_0_3.zip}} (e.g. using wget), + +---------------------------------------- +$ wget http://dev.w3.org/2006/xquery-test-suite/PublicPagesStagingArea/XQTS_1_0_3.zip +---------------------------------------- + + * unpack it, + +---------------------------------------- +$ mkdir xqts +$ cd xqts +$ unzip ../XQTS_1_0_3.zip +$ cd .. +---------------------------------------- + + * go back to the project root, + +---------------------------------------- +$ cd ../.. +---------------------------------------- + + * run the tests, and + +---------------------------------------- +sh ./vxquery-xtest/target/appassembler/bin/xtest -catalog vxquery-xtest/test-suites/xqts/XQTSCatalog.xml -htmlreport /tmp/full_report.html +---------------------------------------- + + * view the results at {{{file:///tmp/full_report.html}file:///tmp/full_report.html}}. + + * Optional: Add JAVA_OPTS for additional java parameters. + + * XQTS (XQuery Test Suite) Option 2 + The following command will run the XQTS for test that are known to pass in VXQuery. + The command is intend for developer to check their build and ensure all previous test continue to pass. + All the tests should pass. + + * run the tests, and + +---------------------------------------- +sh ./vxquery-xtest/target/appassembler/bin/xtest -catalog vxquery-xtest/test-suites/xqts/XQTSCatalog.xml -htmlreport /tmp/previous_report.html -previous-test-results vxquery-xtest/results/xqts.txt +---------------------------------------- + + * view the results at {{{file:///tmp/previous_report.html}file:///tmp/previous_report.html}}. + + \ No newline at end of file diff --git a/src/src/site/resources/images/VXQuery.png b/src/src/site/resources/images/VXQuery.png new file mode 100644 index 000000000..58b49213d Binary files /dev/null and b/src/src/site/resources/images/VXQuery.png differ diff --git a/src/src/site/resources/images/asf_logo_wide.png b/src/src/site/resources/images/asf_logo_wide.png new file mode 100644 index 000000000..56a436924 Binary files /dev/null and b/src/src/site/resources/images/asf_logo_wide.png differ diff --git a/src/src/site/site.xml b/src/src/site/site.xml new file mode 100644 index 000000000..b9612c111 --- /dev/null +++ b/src/src/site/site.xml @@ -0,0 +1,112 @@ + + + + VXQuery + images/VXQuery.png + http://vxquery.apache.org/ + + + Apache Software Foundation + images/asf_logo_wide.png + http://www.apache.org/ + + + org.apache.maven.skins + maven-fluido-skin + 1.3.1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
Apache VXQuery, VXQuery, Apache, the Apache feather logo, and the Apache VXQuery project logo + are either registered trademarks or trademarks of The Apache Software Foundation in the United States + and other countries. All other marks mentioned may be trademarks or registered trademarks of their + respective owners. +
+
+ + \ No newline at end of file diff --git a/vxquery-benchmark/pom.xml b/vxquery-benchmark/pom.xml index d55f05ed1..08e7156b1 100644 --- a/vxquery-benchmark/pom.xml +++ b/vxquery-benchmark/pom.xml @@ -20,7 +20,7 @@ org.apache.vxquery apache-vxquery - 0.6-SNAPSHOT + 0.5 apache-vxquery-benchmark @@ -49,6 +49,7 @@ maven-resources-plugin + 2.5 copy-scripts diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/mrql_scripts/clear.sh b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/mrql_scripts/clear.sh new file mode 100644 index 000000000..9a912b274 --- /dev/null +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/mrql_scripts/clear.sh @@ -0,0 +1,24 @@ +#!/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. +# + +# Remove data +rm -rf disk1/hadoop/data +rm -rf disk2/hadoop/data +rm -rf disk1/hadoop/tmp +rm -rf disk1/hadoop/logs diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/mrql_scripts/run_group_test.sh b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/mrql_scripts/run_group_test.sh index 0c14d5fec..84028e506 100755 --- a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/mrql_scripts/run_group_test.sh +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/mrql_scripts/run_group_test.sh @@ -31,24 +31,15 @@ fi DATASET=${1} NODES=${2} -EMAIL=${3} REPEAT=1 DATA_FILES=${NODES} +#DATA_FILES=8 # Start Hadoop -# sh saved/hadoop/hadoop-1.2.1/bin/start-all.sh -sh saved/hadoop/hadoop-2.5.1/sbin/hadoop-daemon.sh start namenode -sh saved/hadoop/hadoop-2.5.1/sbin/hadoop-daemons.sh start datanode -sh saved/hadoop/hadoop-2.5.1/sbin/yarn-daemon.sh start resourcemanager -sh saved/hadoop/hadoop-2.5.1/sbin/yarn-daemons.sh start nodemanager -sh saved/hadoop/hadoop-2.5.1/sbin/mr-jobhistory-daemon.sh start historyserver +sh saved/hadoop/hadoop-1.2.1/bin/start-all.sh sleep 10 -# Start Flink -sh saved/flink/flink-yarn-0.6.1-incubating/bin/yarn-session.sh -n $((4*${NODES})) -tm 1024 & -FLINK_PID=$! - # Prepare hadoop file system hadoop fs -mkdir ${DATASET} hadoop fs -ls @@ -56,12 +47,19 @@ hadoop fs -mkdir ${DATASET}/sensors hadoop fs -mkdir ${DATASET}/stations hadoop fs -ls ${DATASET} +# Prepare hadoop file system 2 +hadoop fs -mkdir ${DATASET}2 +hadoop fs -ls +hadoop fs -mkdir ${DATASET}2/sensors +hadoop fs -mkdir ${DATASET}2/stations +hadoop fs -ls ${DATASET}2 + hadoop balancer # Upload test data COUNTER=0 -while [ ${COUNTER} -lt ${DATA_FILES} ]; +while [ ${COUNTER} -lt ${NODES} ]; do sh vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/mrql_scripts/load_node_file.sh ${DATASET} ${COUNTER} let COUNTER=COUNTER+1 @@ -69,18 +67,9 @@ done # Start test -sh vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/mrql_scripts/run_mrql_tests.sh vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/mrql/ ${NODES} ${REPEAT} ${DATASET} ${EMAIL} - -# Stop Flink -kill ${FLINK_PID} -jobs -p -kill $(jobs -p) +sh vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/mrql_scripts/run_mrql_tests.sh \ + vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/mrql/ ${NODES} ${REPEAT} ${DATASET} # Stop Hadoop -# sh saved/hadoop/hadoop-1.2.1/bin/stop-all.sh -sh saved/hadoop/hadoop-2.5.1/sbin/mr-jobhistory-daemon.sh stop historyserver -sh saved/hadoop/hadoop-2.5.1/sbin/yarn-daemons.sh stop nodemanager -sh saved/hadoop/hadoop-2.5.1/sbin/yarn-daemon.sh stop resourcemanager -sh saved/hadoop/hadoop-2.5.1/sbin/hadoop-daemons.sh stop datanode -sh saved/hadoop/hadoop-2.5.1/sbin/hadoop-daemon.sh stop namenode +sh saved/hadoop/hadoop-1.2.1/bin/stop-all.sh diff --git a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/mrql_scripts/run_mrql_tests.sh b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/mrql_scripts/run_mrql_tests.sh index eb6443189..912cd3bac 100755 --- a/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/mrql_scripts/run_mrql_tests.sh +++ b/vxquery-benchmark/src/main/resources/noaa-ghcn-daily/other_systems/mrql_scripts/run_mrql_tests.sh @@ -23,17 +23,19 @@ NODES=${2} REPEAT=${3} DATASET=${4} -EMAIL=${5} +THREADS=$((4*${NODES})) # Make log folder mkdir -p ~/disk1/weather_data/mrql/query_logs/${NODES}nodes/ -for j in $(find ${1} -name '*q??.mrql') +for j in $(find ${1} -name '*q?7.mrql') do date echo "Running MRQL query: ${j}" - time for i in {1..${REPEAT}}; do ~/mrql/incubator-mrql/bin/mrql.flink -dist -nodes ${NODES} ${j} ${DATASET}/sensors/ ${DATASET}/stations/ >> ~/disk1/weather_data/mrql/query_logs/${NODES}nodes/$(basename "${j}").log 2>&1; done; + time for i in {1..${REPEAT}}; do ~/mrql/incubator-mrql/bin/mrql -dist -nodes ${THREADS} ${j} \ + ${DATASET}/sensors/ ${DATASET}/stations/ ${DATASET}2/sensors/ ${DATASET}2/stations/ \ + >> ~/disk1/weather_data/mrql/query_logs/${NODES}nodes/$(basename "${j}").log 2>&1; done; done @@ -41,6 +43,7 @@ if which programname >/dev/null; then echo "Sending out e-mail notification." SUBJECT="MRQL Tests Finished (${DATASET})" + EMAIL="ecarm002@ucr.edu" /bin/mail -s "${SUBJECT}" "${EMAIL}" </dev/null; then echo "Sending out e-mail notification." SUBJECT="Saxon Tests Finished (${DATASET})" + EMAIL="ecarm002@ucr.edu" /bin/mail -s "${SUBJECT}" "${EMAIL}" < org.apache.vxquery apache-vxquery - 0.6-SNAPSHOT + 0.5 apache-vxquery-cli @@ -83,47 +83,47 @@ org.apache.vxquery apache-vxquery-core - 0.6-SNAPSHOT + 0.5 compile - org.apache.hyracks + edu.uci.ics.hyracks hyracks-api - org.apache.hyracks + edu.uci.ics.hyracks hyracks-client - org.apache.hyracks + edu.uci.ics.hyracks hyracks-control-cc - org.apache.hyracks + edu.uci.ics.hyracks hyracks-control-nc - org.apache.hyracks + edu.uci.ics.hyracks algebricks-common - org.apache.hyracks + edu.uci.ics.hyracks algebricks-core - org.apache.hyracks + edu.uci.ics.hyracks hyracks-control-common - org.apache.hyracks + edu.uci.ics.hyracks hyracks-dataflow-std diff --git a/vxquery-cli/src/main/java/org/apache/vxquery/cli/VXQuery.java b/vxquery-cli/src/main/java/org/apache/vxquery/cli/VXQuery.java index 53b352f16..080f8a12d 100644 --- a/vxquery-cli/src/main/java/org/apache/vxquery/cli/VXQuery.java +++ b/vxquery-cli/src/main/java/org/apache/vxquery/cli/VXQuery.java @@ -15,11 +15,10 @@ package org.apache.vxquery.cli; import java.io.File; -import java.io.FileOutputStream; import java.io.IOException; -import java.io.OutputStream; import java.io.PrintWriter; import java.io.StringReader; +import java.nio.ByteBuffer; import java.nio.file.Files; import java.util.ArrayList; import java.util.Date; @@ -29,40 +28,48 @@ import java.util.Map; import org.apache.commons.io.FileUtils; -import org.apache.hyracks.api.client.HyracksConnection; -import org.apache.hyracks.api.client.IHyracksClientConnection; -import org.apache.hyracks.api.client.NodeControllerInfo; -import org.apache.hyracks.api.comm.IFrame; -import org.apache.hyracks.api.comm.IFrameTupleAccessor; -import org.apache.hyracks.api.comm.VSizeFrame; -import org.apache.hyracks.api.dataset.IHyracksDataset; -import org.apache.hyracks.api.dataset.IHyracksDatasetReader; -import org.apache.hyracks.api.dataset.ResultSetId; -import org.apache.hyracks.api.job.JobFlag; -import org.apache.hyracks.api.job.JobId; -import org.apache.hyracks.api.job.JobSpecification; -import org.apache.hyracks.client.dataset.HyracksDataset; -import org.apache.hyracks.control.cc.ClusterControllerService; -import org.apache.hyracks.control.common.controllers.CCConfig; -import org.apache.hyracks.control.common.controllers.NCConfig; -import org.apache.hyracks.control.nc.NodeControllerService; -import org.apache.hyracks.control.nc.resources.memory.FrameManager; -import org.apache.hyracks.dataflow.common.comm.io.ResultFrameTupleAccessor; import org.apache.vxquery.compiler.CompilerControlBlock; import org.apache.vxquery.compiler.algebricks.VXQueryGlobalDataFactory; +import org.apache.vxquery.compiler.algebricks.prettyprint.VXQueryLogicalExpressionPrettyPrintVisitor; import org.apache.vxquery.context.DynamicContext; import org.apache.vxquery.context.DynamicContextImpl; import org.apache.vxquery.context.RootStaticContextImpl; import org.apache.vxquery.context.StaticContextImpl; import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.result.ResultUtils; +import org.apache.vxquery.xmlquery.ast.ModuleNode; import org.apache.vxquery.xmlquery.query.Module; -import org.apache.vxquery.xmlquery.query.VXQueryCompilationListener; import org.apache.vxquery.xmlquery.query.XMLQueryCompiler; +import org.apache.vxquery.xmlquery.query.XQueryCompilationListener; +import org.json.JSONException; import org.kohsuke.args4j.Argument; import org.kohsuke.args4j.CmdLineParser; import org.kohsuke.args4j.Option; +import com.thoughtworks.xstream.XStream; +import com.thoughtworks.xstream.io.xml.DomDriver; + +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.prettyprint.LogicalOperatorPrettyPrintVisitor; +import edu.uci.ics.hyracks.algebricks.core.algebra.prettyprint.PlanPrettyPrinter; +import edu.uci.ics.hyracks.algebricks.core.algebra.visitors.ILogicalExpressionVisitor; +import edu.uci.ics.hyracks.api.client.HyracksConnection; +import edu.uci.ics.hyracks.api.client.IHyracksClientConnection; +import edu.uci.ics.hyracks.api.client.NodeControllerInfo; +import edu.uci.ics.hyracks.api.comm.IFrameTupleAccessor; +import edu.uci.ics.hyracks.api.dataset.IHyracksDataset; +import edu.uci.ics.hyracks.api.dataset.IHyracksDatasetReader; +import edu.uci.ics.hyracks.api.dataset.ResultSetId; +import edu.uci.ics.hyracks.api.job.JobFlag; +import edu.uci.ics.hyracks.api.job.JobId; +import edu.uci.ics.hyracks.api.job.JobSpecification; +import edu.uci.ics.hyracks.client.dataset.HyracksDataset; +import edu.uci.ics.hyracks.control.cc.ClusterControllerService; +import edu.uci.ics.hyracks.control.common.controllers.CCConfig; +import edu.uci.ics.hyracks.control.common.controllers.NCConfig; +import edu.uci.ics.hyracks.control.nc.NodeControllerService; +import edu.uci.ics.hyracks.dataflow.common.comm.io.ResultFrameTupleAccessor; + public class VXQuery { private final CmdLineOptions opts; @@ -80,7 +87,7 @@ public class VXQuery { /** * Constructor to use command line options passed. - * + * * @param opts * Command line options object */ @@ -90,7 +97,7 @@ public VXQuery(CmdLineOptions opts) { /** * Main method to get command line options and execute query process. - * + * * @param args * @throws Exception */ @@ -118,9 +125,8 @@ public static void main(String[] args) throws Exception { timingMessage("Execution time: " + (end.getTime() - start.getTime()) + " ms"); if (opts.repeatExec > opts.timingIgnoreQueries) { long mean = sumTiming / (opts.repeatExec - opts.timingIgnoreQueries); - double sd = Math - .sqrt(sumSquaredTiming / (opts.repeatExec - new Integer(opts.timingIgnoreQueries).doubleValue()) - - mean * mean); + double sd = Math.sqrt(sumSquaredTiming + / (opts.repeatExec - new Integer(opts.timingIgnoreQueries).doubleValue()) - mean * mean); timingMessage("Average execution time: " + mean + " ms"); timingMessage("Standard deviation: " + String.format("%.4f", sd)); timingMessage("Coefficient of variation: " + String.format("%.4f", (sd / mean))); @@ -138,7 +144,7 @@ public static void main(String[] args) throws Exception { /** * Creates a new Hyracks connection with: the client IP address and port provided, if IP address is provided in command line. Otherwise create a new virtual * cluster with Hyracks nodes. Queries passed are run either way. After running queries, if a virtual cluster has been created, it is shut down. - * + * * @throws Exception */ private void execute() throws Exception { @@ -164,7 +170,7 @@ private void execute() throws Exception { /** * Reads the contents of the files passed in the list of arguments to a string. If -showquery argument is passed, output the query as string. Run the query * for the string. - * + * * @throws IOException * @throws SystemException * @throws Exception @@ -177,9 +183,81 @@ private void runQueries() throws IOException, SystemException, Exception { if (opts.showQuery) { System.err.println(qStr); } + XQueryCompilationListener listener = new XQueryCompilationListener() { + + /** + * On providing -showrp argument, output the query inputs, outputs and user constraints for each module as result of code generation. + * + * @param module + */ + @Override + public void notifyCodegenResult(Module module) { + if (opts.showRP) { + JobSpecification jobSpec = module.getHyracksJobSpecification(); + try { + System.err.println(jobSpec.toJSON().toString(2)); + } catch (JSONException e) { + e.printStackTrace(); + System.err.println(jobSpec.toString()); + } + } + } + + /** + * On providing -showtet argument, output the syntax translation tree for the module in the format: "-- logical operator(if exists) | execution mode |" + * where execution mode can be one of: UNPARTITIONED,PARTITIONED,LOCAL + * + * @param module + */ + @Override + public void notifyTranslationResult(Module module) { + if (opts.showTET) { + System.err.println(appendPrettyPlan(new StringBuilder(), module).toString()); + } + } + + @Override + public void notifyTypecheckResult(Module module) { + } + + /** + * On providing -showoet argument, output the optimized expression tree for the module in the format: + * "-- logical operator(if exists) | execution mode |" where execution mode can be one of: UNPARTITIONED,PARTITIONED,LOCAL + * + * @param module + */ + @Override + public void notifyOptimizedResult(Module module) { + if (opts.showOET) { + System.err.println(appendPrettyPlan(new StringBuilder(), module).toString()); + } + } + + /** + * On providing -showast argument, output the abstract syntax tree obtained from parsing by serializing the DomDriver object to a pretty-printed XML + * String. + * + * @param moduleNode + */ + @Override + public void notifyParseResult(ModuleNode moduleNode) { + if (opts.showAST) { + System.err.println(new XStream(new DomDriver()).toXML(moduleNode)); + } + } - VXQueryCompilationListener listener = new VXQueryCompilationListener(opts.showAST, opts.showTET, - opts.showOET, opts.showRP); + private StringBuilder appendPrettyPlan(StringBuilder sb, Module module) { + try { + ILogicalExpressionVisitor ev = new VXQueryLogicalExpressionPrettyPrintVisitor( + module.getModuleContext()); + LogicalOperatorPrettyPrintVisitor v = new LogicalOperatorPrettyPrintVisitor(ev); + PlanPrettyPrinter.printPlan(module.getBody(), sb, v, 0); + } catch (AlgebricksException e) { + e.printStackTrace(); + } + return sb; + } + }; start = opts.timing ? new Date() : null; XMLQueryCompiler compiler = new XMLQueryCompiler(listener, getNodeList(), opts.frameSize, @@ -203,12 +281,7 @@ private void runQueries() throws IOException, SystemException, Exception { DynamicContext dCtx = new DynamicContextImpl(module.getModuleContext()); js.setGlobalJobDataFactory(new VXQueryGlobalDataFactory(dCtx.createFactory())); - OutputStream resultStream = System.out; - if (opts.resultFile != null) { - resultStream = new FileOutputStream(new File(opts.resultFile)); - } - - PrintWriter writer = new PrintWriter(resultStream, true); + PrintWriter writer = new PrintWriter(System.out, true); // Repeat execution for number of times provided in -repeatexec argument for (int i = 0; i < opts.repeatExec; ++i) { start = opts.timing ? new Date() : null; @@ -235,7 +308,7 @@ private void runQueries() throws IOException, SystemException, Exception { /** * Get cluster node configuration. - * + * * @return Configuration of node controllers as array of Strings. * @throws Exception */ @@ -252,7 +325,7 @@ private String[] getNodeList() throws Exception { /** * Creates a Hyracks dataset, if not already existing with the job frame size, and 1 reader. Allocates a new buffer of size specified in the frame of Hyracks * node. Creates new dataset reader with the current job ID and result set ID. Outputs the string in buffer for each frame. - * + * * @param spec * JobSpecification object, containing frame size. Current specified job. * @param writer @@ -267,15 +340,15 @@ private void runJob(JobSpecification spec, PrintWriter writer) throws Exception JobId jobId = hcc.startJob(spec, EnumSet.of(JobFlag.PROFILE_RUNTIME)); - FrameManager resultDisplayFrameMgr = new FrameManager(spec.getFrameSize()); - IFrame frame = new VSizeFrame(resultDisplayFrameMgr); + ByteBuffer buffer = ByteBuffer.allocate(spec.getFrameSize()); IHyracksDatasetReader reader = hds.createReader(jobId, resultSetId); - IFrameTupleAccessor frameTupleAccessor = new ResultFrameTupleAccessor(); + IFrameTupleAccessor frameTupleAccessor = new ResultFrameTupleAccessor(spec.getFrameSize()); + buffer.clear(); - while (reader.read(frame) > 0) { - writer.print(ResultUtils.getStringFromBuffer(frame.getBuffer(), frameTupleAccessor)); + while (reader.read(buffer) > 0) { + buffer.clear(); + writer.print(ResultUtils.getStringFromBuffer(buffer, frameTupleAccessor)); writer.flush(); - frame.getBuffer().clear(); } hcc.waitForCompletion(jobId); @@ -283,7 +356,7 @@ private void runJob(JobSpecification spec, PrintWriter writer) throws Exception /** * Create a unique result set id to get the correct query back from the cluster. - * + * * @return Result Set id generated with current system time. */ protected ResultSetId createResultSetId() { @@ -293,7 +366,7 @@ protected ResultSetId createResultSetId() { /** * Start local virtual cluster with cluster controller node and node controller nodes. IP address provided for node controller is localhost. Unassigned ports * 39000 and 39001 are used for client and cluster port respectively. Creates a new Hyracks connection with the IP address and client ports. - * + * * @throws Exception */ public void startLocalHyracks() throws Exception { @@ -316,7 +389,7 @@ public void startLocalHyracks() throws Exception { ncConfig.dataIPAddress = "127.0.0.1"; ncConfig.resultIPAddress = "127.0.0.1"; ncConfig.nodeId = "nc" + (i + 1); - ncConfig.ioDevices = Files.createTempDirectory(ncConfig.nodeId).toString(); + ncConfig.ioDevices = Files.createTempDirectory(ncConfig.nodeId).toString(); ncs[i] = new NodeControllerService(ncConfig); ncs[i].start(); } @@ -326,7 +399,7 @@ public void startLocalHyracks() throws Exception { /** * Shuts down the virtual cluster, along with all nodes and node execution, network and queue managers. - * + * * @throws Exception */ public void stopLocalHyracks() throws Exception { @@ -338,7 +411,7 @@ public void stopLocalHyracks() throws Exception { /** * Reads the contents of file given in query into a String. The file is always closed. For XML files UTF-8 encoding is used. - * + * * @param query * The query with filename to be processed * @return UTF-8 formatted query string @@ -350,7 +423,7 @@ private static String slurp(String query) throws IOException { /** * Save and print out the timing message. - * + * * @param message */ private static void timingMessage(String message) { @@ -362,58 +435,55 @@ private static void timingMessage(String message) { * Helper class with fields and methods to handle all command line options */ private static class CmdLineOptions { - @Option(name = "-available-processors", usage = "Number of available processors. (default: java's available processors)") + @Option(name = "-available-processors", usage = "Number of available processors. (default java's available processors)") private int availableProcessors = -1; - @Option(name = "-client-net-ip-address", usage = "IP Address of the ClusterController.") + @Option(name = "-client-net-ip-address", usage = "IP Address of the ClusterController") private String clientNetIpAddress = null; - @Option(name = "-client-net-port", usage = "Port of the ClusterController. (default: 1098)") + @Option(name = "-client-net-port", usage = "Port of the ClusterController (default 1098)") private int clientNetPort = 1098; - @Option(name = "-local-node-controllers", usage = "Number of local node controllers. (default: 1)") + @Option(name = "-local-node-controllers", usage = "Number of local node controllers (default 1)") private int localNodeControllers = 1; - @Option(name = "-frame-size", usage = "Frame size in bytes. (default: 65,536)") + @Option(name = "-frame-size", usage = "Frame size in bytes. (default 65,536)") private int frameSize = 65536; - @Option(name = "-join-hash-size", usage = "Join hash size in bytes. (default: 67,108,864)") + @Option(name = "-join-hash-size", usage = "Join hash size in bytes. (default 67,108,864)") private long joinHashSize = -1; - @Option(name = "-maximum-data-size", usage = "Maximum possible data size in bytes. (default: 150,323,855,000)") + @Option(name = "-maximum-data-size", usage = "Maximum possible data size in bytes. (default 150,323,855,000)") private long maximumDataSize = -1; @Option(name = "-buffer-size", usage = "Disk read buffer size in bytes.") private int bufferSize = -1; - @Option(name = "-O", usage = "Optimization Level. (default: Full Optimization)") + @Option(name = "-O", usage = "Optimization Level. Default: Full Optimization") private int optimizationLevel = Integer.MAX_VALUE; - @Option(name = "-showquery", usage = "Show query string.") + @Option(name = "-showquery", usage = "Show query string") private boolean showQuery; - @Option(name = "-showast", usage = "Show abstract syntax tree.") + @Option(name = "-showast", usage = "Show abstract syntax tree") private boolean showAST; - @Option(name = "-showtet", usage = "Show translated expression tree.") + @Option(name = "-showtet", usage = "Show translated expression tree") private boolean showTET; - @Option(name = "-showoet", usage = "Show optimized expression tree.") + @Option(name = "-showoet", usage = "Show optimized expression tree") private boolean showOET; - @Option(name = "-showrp", usage = "Show Runtime plan.") + @Option(name = "-showrp", usage = "Show Runtime plan") private boolean showRP; - @Option(name = "-compileonly", usage = "Compile the query and stop.") + @Option(name = "-compileonly", usage = "Compile the query and stop") private boolean compileOnly; - @Option(name = "-repeatexec", usage = "Number of times to repeat execution.") + @Option(name = "-repeatexec", usage = "Number of times to repeat execution") private int repeatExec = 1; - @Option(name = "-result-file", usage = "File path to save the query result.") - private String resultFile = null; - - @Option(name = "-timing", usage = "Produce timing information.") + @Option(name = "-timing", usage = "Produce timing information") private boolean timing; @Option(name = "-timing-ignore-queries", usage = "Ignore the first X number of quereies.") diff --git a/vxquery-core/pom.xml b/vxquery-core/pom.xml index 59cc98719..6b63e8724 100644 --- a/vxquery-core/pom.xml +++ b/vxquery-core/pom.xml @@ -20,7 +20,7 @@ org.apache.vxquery apache-vxquery - 0.6-SNAPSHOT + 0.5 apache-vxquery-core @@ -179,32 +179,32 @@ - org.apache.hyracks + edu.uci.ics.hyracks algebricks-compiler - org.apache.hyracks + edu.uci.ics.hyracks algebricks-data - org.apache.hyracks + edu.uci.ics.hyracks hyracks-api - org.apache.hyracks + edu.uci.ics.hyracks hyracks-data-std - org.apache.hyracks + edu.uci.ics.hyracks hyracks-dataflow-common - org.apache.hyracks + edu.uci.ics.hyracks hyracks-dataflow-std diff --git a/vxquery-core/src/main/java/org/apache/vxquery/collations/CodepointCollation.java b/vxquery-core/src/main/java/org/apache/vxquery/collations/CodepointCollation.java index c50ff566e..12291fe45 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/collations/CodepointCollation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/collations/CodepointCollation.java @@ -93,4 +93,4 @@ public CharSequence substringBefore(CharSequence cs1, CharSequence cs2) { public boolean supportsStringMatching() { return true; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/collations/Collation.java b/vxquery-core/src/main/java/org/apache/vxquery/collations/Collation.java index e8cb40f0a..51debb062 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/collations/Collation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/collations/Collation.java @@ -32,4 +32,4 @@ public interface Collation { public CharSequence substringBefore(CharSequence cs1, CharSequence cs2); public CharSequence substringAfter(CharSequence cs1, CharSequence cs2); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/CompilerControlBlock.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/CompilerControlBlock.java index efc2adad3..ab584428d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/CompilerControlBlock.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/CompilerControlBlock.java @@ -21,7 +21,7 @@ import org.apache.vxquery.context.StaticContext; -import org.apache.hyracks.api.dataset.ResultSetId; +import edu.uci.ics.hyracks.api.dataset.ResultSetId; public class CompilerControlBlock { private final StaticContext ctx; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryBinaryBooleanInspectorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryBinaryBooleanInspectorFactory.java index 09860d60f..afb4d5803 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryBinaryBooleanInspectorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryBinaryBooleanInspectorFactory.java @@ -19,10 +19,10 @@ import org.apache.vxquery.datamodel.accessors.TaggedValuePointable; import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.algebricks.data.IBinaryBooleanInspector; -import org.apache.hyracks.algebricks.data.IBinaryBooleanInspectorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.algebricks.data.IBinaryBooleanInspector; +import edu.uci.ics.hyracks.algebricks.data.IBinaryBooleanInspectorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; public class VXQueryBinaryBooleanInspectorFactory implements IBinaryBooleanInspectorFactory { private static final long serialVersionUID = 1L; @@ -41,4 +41,4 @@ public boolean getBooleanValue(byte[] bytes, int offset, int length) { } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryBinaryIntegerInspectorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryBinaryIntegerInspectorFactory.java index 2979c1fac..ccab60ce6 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryBinaryIntegerInspectorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryBinaryIntegerInspectorFactory.java @@ -19,10 +19,10 @@ import org.apache.vxquery.datamodel.accessors.TaggedValuePointable; import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.algebricks.data.IBinaryIntegerInspector; -import org.apache.hyracks.algebricks.data.IBinaryIntegerInspectorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.algebricks.data.IBinaryIntegerInspector; +import edu.uci.ics.hyracks.algebricks.data.IBinaryIntegerInspectorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; public class VXQueryBinaryIntegerInspectorFactory implements IBinaryIntegerInspectorFactory { private static final long serialVersionUID = 1L; @@ -41,4 +41,4 @@ public int getIntegerValue(byte[] bytes, int offset, int length) { } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryComparatorFactoryProvider.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryComparatorFactoryProvider.java index b7196cfc1..10da31e1e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryComparatorFactoryProvider.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryComparatorFactoryProvider.java @@ -18,10 +18,10 @@ import org.apache.vxquery.datamodel.accessors.TaggedValuePointable; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.data.IBinaryComparatorFactoryProvider; -import org.apache.hyracks.api.dataflow.value.IBinaryComparator; -import org.apache.hyracks.api.dataflow.value.IBinaryComparatorFactory; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.data.IBinaryComparatorFactoryProvider; +import edu.uci.ics.hyracks.api.dataflow.value.IBinaryComparator; +import edu.uci.ics.hyracks.api.dataflow.value.IBinaryComparatorFactory; public class VXQueryComparatorFactoryProvider implements IBinaryComparatorFactoryProvider { @Override @@ -33,7 +33,6 @@ public IBinaryComparatorFactory getBinaryComparatorFactory(Object type, boolean private static class BinaryComparatorFactory implements IBinaryComparatorFactory { private static final long serialVersionUID = 1L; - @SuppressWarnings("unused") private final boolean ascending; public BinaryComparatorFactory(Object type, boolean ascending) { @@ -59,4 +58,4 @@ public int compare(byte[] b1, int s1, int l1, byte[] b2, int s2, int l2) { }; } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryConstantValue.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryConstantValue.java index e105546af..1cbe74ea0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryConstantValue.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryConstantValue.java @@ -19,7 +19,7 @@ import org.apache.commons.codec.binary.Hex; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.core.algebra.expressions.IAlgebricksConstantValue; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.IAlgebricksConstantValue; public class VXQueryConstantValue implements IAlgebricksConstantValue { private final SequenceType type; @@ -61,4 +61,4 @@ public String toString() { .append("])"); return buffer.toString(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryExpressionRuntimeProvider.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryExpressionRuntimeProvider.java index 12461416f..bfafdaeb6 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryExpressionRuntimeProvider.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryExpressionRuntimeProvider.java @@ -23,29 +23,29 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.functions.Function; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.AggregateFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.ConstantExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.IAlgebricksConstantValue; -import org.apache.hyracks.algebricks.core.algebra.expressions.IExpressionRuntimeProvider; -import org.apache.hyracks.algebricks.core.algebra.expressions.IVariableTypeEnvironment; -import org.apache.hyracks.algebricks.core.algebra.expressions.ScalarFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.StatefulFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.UnnestingFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.IOperatorSchema; -import org.apache.hyracks.algebricks.core.jobgen.impl.JobGenContext; -import org.apache.hyracks.algebricks.runtime.base.IAggregateEvaluatorFactory; -import org.apache.hyracks.algebricks.runtime.base.ICopySerializableAggregateFunctionFactory; -import org.apache.hyracks.algebricks.runtime.base.IRunningAggregateEvaluatorFactory; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.runtime.base.IUnnestingEvaluatorFactory; -import org.apache.hyracks.algebricks.runtime.evaluators.ConstantEvaluatorFactory; -import org.apache.hyracks.algebricks.runtime.evaluators.TupleFieldEvaluatorFactory; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AggregateFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.ConstantExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.IAlgebricksConstantValue; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.IExpressionRuntimeProvider; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.IVariableTypeEnvironment; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.ScalarFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.StatefulFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.UnnestingFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.IOperatorSchema; +import edu.uci.ics.hyracks.algebricks.core.jobgen.impl.JobGenContext; +import edu.uci.ics.hyracks.algebricks.runtime.base.IAggregateEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.ICopySerializableAggregateFunctionFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IRunningAggregateEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IUnnestingEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.evaluators.ConstantEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.evaluators.TupleFieldEvaluatorFactory; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; public class VXQueryExpressionRuntimeProvider implements IExpressionRuntimeProvider { @Override @@ -145,4 +145,4 @@ public IUnnestingEvaluatorFactory createUnnestingFunctionFactory(UnnestingFuncti throw new AlgebricksException(e); } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryGlobalDataFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryGlobalDataFactory.java index 4bb58f85a..07a210fd5 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryGlobalDataFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryGlobalDataFactory.java @@ -18,8 +18,8 @@ import org.apache.vxquery.context.IDynamicContextFactory; -import org.apache.hyracks.api.context.IHyracksJobletContext; -import org.apache.hyracks.api.job.IGlobalJobDataFactory; +import edu.uci.ics.hyracks.api.context.IHyracksJobletContext; +import edu.uci.ics.hyracks.api.job.IGlobalJobDataFactory; public class VXQueryGlobalDataFactory implements IGlobalJobDataFactory { private static final long serialVersionUID = 1L; @@ -34,4 +34,4 @@ public VXQueryGlobalDataFactory(IDynamicContextFactory dcf) { public Object createGlobalJobData(IHyracksJobletContext ctx) { return dcf.createDynamicContext(ctx); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryNullWriterFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryNullWriterFactory.java index f0220ddc8..7fe21d50a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryNullWriterFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryNullWriterFactory.java @@ -21,10 +21,10 @@ import org.apache.vxquery.datamodel.values.XDMConstants; -import org.apache.hyracks.api.dataflow.value.INullWriter; -import org.apache.hyracks.api.dataflow.value.INullWriterFactory; -import org.apache.hyracks.api.exceptions.HyracksDataException; -import org.apache.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.api.dataflow.value.INullWriter; +import edu.uci.ics.hyracks.api.dataflow.value.INullWriterFactory; +import edu.uci.ics.hyracks.api.exceptions.HyracksDataException; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; public class VXQueryNullWriterFactory implements INullWriterFactory { private static final long serialVersionUID = 1L; @@ -44,4 +44,4 @@ public void writeNull(DataOutput out) throws HyracksDataException { } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryPrinterFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryPrinterFactory.java index 4a2dc4c87..80897756b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryPrinterFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryPrinterFactory.java @@ -18,8 +18,8 @@ import org.apache.vxquery.serializer.XMLSerializer; -import org.apache.hyracks.algebricks.data.IPrinter; -import org.apache.hyracks.algebricks.data.IPrinterFactory; +import edu.uci.ics.hyracks.algebricks.data.IPrinter; +import edu.uci.ics.hyracks.algebricks.data.IPrinterFactory; public class VXQueryPrinterFactory implements IPrinterFactory { private static final long serialVersionUID = 1L; @@ -28,4 +28,4 @@ public class VXQueryPrinterFactory implements IPrinterFactory { public IPrinter createPrinter() { return new XMLSerializer(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryPrinterFactoryProvider.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryPrinterFactoryProvider.java index 65ef917cc..b78123952 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryPrinterFactoryProvider.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/VXQueryPrinterFactoryProvider.java @@ -16,9 +16,9 @@ */ package org.apache.vxquery.compiler.algebricks; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.data.IPrinterFactory; -import org.apache.hyracks.algebricks.data.IPrinterFactoryProvider; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.data.IPrinterFactory; +import edu.uci.ics.hyracks.algebricks.data.IPrinterFactoryProvider; public class VXQueryPrinterFactoryProvider implements IPrinterFactoryProvider { public static final IPrinterFactoryProvider INSTANCE = new VXQueryPrinterFactoryProvider(); @@ -28,4 +28,4 @@ public IPrinterFactory getPrinterFactory(Object type) throws AlgebricksException return new VXQueryPrinterFactory(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/prettyprint/VXQueryLogicalExpressionPrettyPrintVisitor.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/prettyprint/VXQueryLogicalExpressionPrettyPrintVisitor.java index 02842b3ba..e6d8dd181 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/prettyprint/VXQueryLogicalExpressionPrettyPrintVisitor.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/algebricks/prettyprint/VXQueryLogicalExpressionPrettyPrintVisitor.java @@ -28,21 +28,21 @@ import org.apache.vxquery.serializer.XMLSerializer; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; -import org.apache.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.AggregateFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.ConstantExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.IAlgebricksConstantValue; -import org.apache.hyracks.algebricks.core.algebra.expressions.ScalarFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.StatefulFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.UnnestingFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; -import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; -import org.apache.hyracks.algebricks.core.algebra.functions.IFunctionInfo; -import org.apache.hyracks.algebricks.core.algebra.visitors.ILogicalExpressionVisitor; -import org.apache.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AggregateFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.ConstantExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.IAlgebricksConstantValue; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.ScalarFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.StatefulFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.UnnestingFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.IFunctionInfo; +import edu.uci.ics.hyracks.algebricks.core.algebra.visitors.ILogicalExpressionVisitor; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; public class VXQueryLogicalExpressionPrettyPrintVisitor implements ILogicalExpressionVisitor { diff --git 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 index 6f09543d6..d5519322e 100644 --- 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 @@ -19,14 +19,15 @@ import java.util.LinkedList; import java.util.List; -import org.apache.vxquery.compiler.rewriter.rules.ConsolidateDescandantChild; import org.apache.vxquery.compiler.rewriter.rules.ConsolidateAssignAggregateRule; +import org.apache.vxquery.compiler.rewriter.rules.ConsolidateUnnestsRule; import org.apache.vxquery.compiler.rewriter.rules.ConvertAssignToUnnestRule; import org.apache.vxquery.compiler.rewriter.rules.ConvertFromAlgebricksExpressionsRule; import org.apache.vxquery.compiler.rewriter.rules.ConvertToAlgebricksExpressionsRule; import org.apache.vxquery.compiler.rewriter.rules.EliminateSubplanForSingleItemsRule; import org.apache.vxquery.compiler.rewriter.rules.EliminateUnnestAggregateSequencesRule; import org.apache.vxquery.compiler.rewriter.rules.EliminateUnnestAggregateSubplanRule; +import org.apache.vxquery.compiler.rewriter.rules.InlineNestedVariablesRule; import org.apache.vxquery.compiler.rewriter.rules.IntroduceCollectionRule; import org.apache.vxquery.compiler.rewriter.rules.IntroduceTwoStepAggregateRule; import org.apache.vxquery.compiler.rewriter.rules.PushChildIntoDataScanRule; @@ -37,60 +38,46 @@ import org.apache.vxquery.compiler.rewriter.rules.RemoveRedundantPromoteExpressionsRule; import org.apache.vxquery.compiler.rewriter.rules.RemoveRedundantTreatExpressionsRule; import org.apache.vxquery.compiler.rewriter.rules.RemoveUnusedSortDistinctNodesRule; -import org.apache.vxquery.compiler.rewriter.rules.RemoveUnusedUnnestIterateRule; -import org.apache.vxquery.compiler.rewriter.rules.ReplaceSourceMapInDocExpression; +import org.apache.vxquery.compiler.rewriter.rules.RemoveUnusedTreatRule; import org.apache.vxquery.compiler.rewriter.rules.SetCollectionDataSourceRule; import org.apache.vxquery.compiler.rewriter.rules.SetVariableIdContextRule; -import org.apache.vxquery.compiler.rewriter.rules.algebricksalternatives.ExtractFunctionsFromJoinConditionRule; -import org.apache.vxquery.compiler.rewriter.rules.algebricksalternatives.InlineNestedVariablesRule; -import org.apache.vxquery.compiler.rewriter.rules.algebricksalternatives.MoveFreeVariableOperatorOutOfSubplanRule; - -import org.apache.hyracks.algebricks.core.rewriter.base.HeuristicOptimizer; -import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; -import org.apache.hyracks.algebricks.rewriter.rules.BreakSelectIntoConjunctsRule; -import org.apache.hyracks.algebricks.rewriter.rules.ComplexJoinInferenceRule; -import org.apache.hyracks.algebricks.rewriter.rules.ComplexUnnestToProductRule; -import org.apache.hyracks.algebricks.rewriter.rules.ConsolidateAssignsRule; -import org.apache.hyracks.algebricks.rewriter.rules.ConsolidateSelectsRule; -import org.apache.hyracks.algebricks.rewriter.rules.CopyLimitDownRule; -import org.apache.hyracks.algebricks.rewriter.rules.EliminateGroupByEmptyKeyRule; -import org.apache.hyracks.algebricks.rewriter.rules.EliminateSubplanRule; -import org.apache.hyracks.algebricks.rewriter.rules.EliminateSubplanWithInputCardinalityOneRule; -import org.apache.hyracks.algebricks.rewriter.rules.EnforceStructuralPropertiesRule; -import org.apache.hyracks.algebricks.rewriter.rules.ExtractCommonOperatorsRule; -import org.apache.hyracks.algebricks.rewriter.rules.ExtractGbyExpressionsRule; -import org.apache.hyracks.algebricks.rewriter.rules.FactorRedundantGroupAndDecorVarsRule; -import org.apache.hyracks.algebricks.rewriter.rules.InferTypesRule; -import org.apache.hyracks.algebricks.rewriter.rules.InlineAssignIntoAggregateRule; -import org.apache.hyracks.algebricks.rewriter.rules.InlineVariablesRule; -import org.apache.hyracks.algebricks.rewriter.rules.InsertOuterJoinRule; -import org.apache.hyracks.algebricks.rewriter.rules.IntroJoinInsideSubplanRule; -import org.apache.hyracks.algebricks.rewriter.rules.IntroduceAggregateCombinerRule; -import org.apache.hyracks.algebricks.rewriter.rules.IntroduceGroupByCombinerRule; -import org.apache.hyracks.algebricks.rewriter.rules.IntroduceGroupByForSubplanRule; -import org.apache.hyracks.algebricks.rewriter.rules.IntroduceProjectsRule; -import org.apache.hyracks.algebricks.rewriter.rules.IsolateHyracksOperatorsRule; -import org.apache.hyracks.algebricks.rewriter.rules.NestedSubplanToJoinRule; -import org.apache.hyracks.algebricks.rewriter.rules.PullSelectOutOfEqJoin; -import org.apache.hyracks.algebricks.rewriter.rules.PushMapOperatorDownThroughProductRule; -import org.apache.hyracks.algebricks.rewriter.rules.PushProjectDownRule; -import org.apache.hyracks.algebricks.rewriter.rules.PushProjectIntoDataSourceScanRule; -import org.apache.hyracks.algebricks.rewriter.rules.PushSelectDownRule; -import org.apache.hyracks.algebricks.rewriter.rules.PushSelectIntoJoinRule; -import org.apache.hyracks.algebricks.rewriter.rules.PushSubplanIntoGroupByRule; -import org.apache.hyracks.algebricks.rewriter.rules.PushSubplanWithAggregateDownThroughProductRule; -import org.apache.hyracks.algebricks.rewriter.rules.ReinferAllTypesRule; -import org.apache.hyracks.algebricks.rewriter.rules.RemoveRedundantVariablesRule; -import org.apache.hyracks.algebricks.rewriter.rules.RemoveUnusedAssignAndAggregateRule; -import org.apache.hyracks.algebricks.rewriter.rules.SetAlgebricksPhysicalOperatorsRule; -import org.apache.hyracks.algebricks.rewriter.rules.SetExecutionModeRule; -import org.apache.hyracks.algebricks.rewriter.rules.SimpleUnnestToProductRule; -import org.apache.hyracks.algebricks.rewriter.rules.SubplanOutOfGroupRule; + +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.HeuristicOptimizer; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.BreakSelectIntoConjunctsRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.ComplexJoinInferenceRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.ConsolidateAssignsRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.ConsolidateSelectsRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.CopyLimitDownRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.EliminateSubplanRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.EnforceStructuralPropertiesRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.ExtractCommonOperatorsRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.ExtractGbyExpressionsRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.FactorRedundantGroupAndDecorVarsRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.InferTypesRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.InlineAssignIntoAggregateRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.InlineVariablesRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.IntroduceAggregateCombinerRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.IntroduceGroupByCombinerRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.IntroduceProjectsRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.IsolateHyracksOperatorsRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.PullSelectOutOfEqJoin; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.PushMapOperatorDownThroughProductRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.PushProjectDownRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.PushProjectIntoDataSourceScanRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.PushSelectDownRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.PushSelectIntoJoinRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.PushSubplanWithAggregateDownThroughProductRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.ReinferAllTypesRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.RemoveRedundantVariablesRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.RemoveUnusedAssignAndAggregateRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.SetAlgebricksPhysicalOperatorsRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.SetExecutionModeRule; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.SimpleUnnestToProductRule; public class RewriteRuleset { /** * Optimizations specific to XQuery. - * @return List of algebraic rewrite rules. */ public final static List buildPathStepNormalizationRuleCollection() { List normalization = new LinkedList(); @@ -98,18 +85,17 @@ public final static List buildPathStepNormalizationRuleCo // Remove unused functions. normalization.add(new RemoveUnusedSortDistinctNodesRule()); - normalization.add(new RemoveRedundantTreatExpressionsRule()); - normalization.add(new RemoveRedundantDataExpressionsRule()); - normalization.add(new RemoveRedundantPromoteExpressionsRule()); - normalization.add(new RemoveRedundantCastExpressionsRule()); - normalization.add(new RemoveRedundantBooleanExpressionsRule()); normalization.add(new RemoveRedundantVariablesRule()); normalization.add(new RemoveUnusedAssignAndAggregateRule()); // TODO Fix the group by operator before putting back in the rule set. // normalization.add(new ConvertAssignSortDistinctNodesToOperatorsRule()); - // Find unnest followed by aggregate in a subplan. + normalization.add(new RemoveUnusedTreatRule()); + normalization.add(new RemoveRedundantVariablesRule()); + normalization.add(new RemoveUnusedAssignAndAggregateRule()); + + // Find unnest followed by aggregate in a subplan. normalization.add(new EliminateUnnestAggregateSubplanRule()); normalization.add(new RemoveRedundantVariablesRule()); normalization.add(new RemoveUnusedAssignAndAggregateRule()); @@ -130,24 +116,17 @@ public final static List buildPathStepNormalizationRuleCo normalization.add(new IntroduceCollectionRule()); normalization.add(new RemoveUnusedAssignAndAggregateRule()); - 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()); - normalization.add(new RemoveUnusedUnnestIterateRule()); + normalization.add(new ConsolidateUnnestsRule()); normalization.add(new PushChildIntoDataScanRule()); // Improvement for scalar child expressions normalization.add(new EliminateSubplanForSingleItemsRule()); - normalization.add(new MoveFreeVariableOperatorOutOfSubplanRule()); return normalization; } /** * Optimizations specific to XQuery. - * @return List of algebraic rewrite rules. */ public final static List buildXQueryNormalizationRuleCollection() { List normalization = new LinkedList(); @@ -172,9 +151,8 @@ public final static List buildXQueryNormalizationRuleColl /** * Remove expressions known to be redundant. - * @return List of algebraic rewrite rules. */ - public final static List buildInlineRedundantExpressionNormalizationRuleCollection() { + public final static List buildRedundantExpressionNormalizationRuleCollection() { List normalization = new LinkedList(); normalization.add(new InlineNestedVariablesRule()); normalization.add(new RemoveRedundantTreatExpressionsRule()); @@ -191,7 +169,6 @@ public final static List buildInlineRedundantExpressionNo /** * When a nested data sources exist, convert the plan to use the join operator. - * @return List of algebraic rewrite rules. */ public final static List buildNestedDataSourceRuleCollection() { List xquery = new LinkedList(); @@ -213,39 +190,6 @@ public final static List buildTypeInferenceRuleCollection return typeInfer; } - /** - * Unnest more complex structures. - * @return List of algebraic rewrite rules. - */ - public final static List buildUnnestingRuleCollection() { - List xquery = new LinkedList(); - - xquery.add(new PushSelectDownRule()); - xquery.add(new SimpleUnnestToProductRule()); - xquery.add(new ComplexUnnestToProductRule()); - xquery.add(new ComplexJoinInferenceRule()); - xquery.add(new PushSelectIntoJoinRule()); - xquery.add(new IntroJoinInsideSubplanRule()); - xquery.add(new PushMapOperatorDownThroughProductRule()); - xquery.add(new PushSubplanWithAggregateDownThroughProductRule()); - xquery.add(new IntroduceGroupByForSubplanRule()); - xquery.add(new SubplanOutOfGroupRule()); - xquery.add(new InsertOuterJoinRule()); - xquery.add(new ExtractFunctionsFromJoinConditionRule()); - - xquery.add(new RemoveRedundantVariablesRule()); - xquery.add(new RemoveUnusedAssignAndAggregateRule()); - - xquery.add(new FactorRedundantGroupAndDecorVarsRule()); - xquery.add(new EliminateSubplanRule()); - xquery.add(new EliminateGroupByEmptyKeyRule()); - xquery.add(new PushSubplanIntoGroupByRule()); - xquery.add(new NestedSubplanToJoinRule()); - xquery.add(new EliminateSubplanWithInputCardinalityOneRule()); - - return xquery; - } - public final static List buildNormalizationRuleCollection() { List normalization = new LinkedList(); normalization.add(new EliminateSubplanRule()); @@ -325,6 +269,8 @@ public final static List prepareForJobGenRuleCollection() prepareForJobGenRewrites.add(new IsolateHyracksOperatorsRule( HeuristicOptimizer.hyraxOperatorsBelowWhichJobGenIsDisabled)); prepareForJobGenRewrites.add(new ExtractCommonOperatorsRule()); +// prepareForJobGenRewrites.add(new VXQueryExtractCommonOperatorsRule()); +// prepareForJobGenRewrites.add(new DelayMaterializationForJoinProbeRule()); // Re-infer all types, so that, e.g., the effect of not-is-null is // propagated. prepareForJobGenRewrites.add(new PushProjectIntoDataSourceScanRule()); @@ -332,4 +278,4 @@ public final static List prepareForJobGenRuleCollection() prepareForJobGenRewrites.add(new SetExecutionModeRule()); return prepareForJobGenRewrites; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/VXQueryOptimizationContext.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/VXQueryOptimizationContext.java index eef949507..b2a6f1aaa 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/VXQueryOptimizationContext.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/VXQueryOptimizationContext.java @@ -21,14 +21,14 @@ import org.apache.vxquery.compiler.rewriter.rules.propagationpolicies.documentorder.DocumentOrder; import org.apache.vxquery.compiler.rewriter.rules.propagationpolicies.uniquenodes.UniqueNodes; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.expressions.IExpressionEvalSizeComputer; -import org.apache.hyracks.algebricks.core.algebra.expressions.IExpressionTypeComputer; -import org.apache.hyracks.algebricks.core.algebra.expressions.IMergeAggregationExpressionFactory; -import org.apache.hyracks.algebricks.core.algebra.expressions.INullableTypeComputer; -import org.apache.hyracks.algebricks.core.algebra.prettyprint.LogicalOperatorPrettyPrintVisitor; -import org.apache.hyracks.algebricks.core.rewriter.base.AlgebricksOptimizationContext; -import org.apache.hyracks.algebricks.core.rewriter.base.PhysicalOptimizationConfig; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.IExpressionEvalSizeComputer; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.IExpressionTypeComputer; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.IMergeAggregationExpressionFactory; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.INullableTypeComputer; +import edu.uci.ics.hyracks.algebricks.core.algebra.prettyprint.LogicalOperatorPrettyPrintVisitor; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.AlgebricksOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.PhysicalOptimizationConfig; public class VXQueryOptimizationContext extends AlgebricksOptimizationContext { @@ -95,4 +95,4 @@ public void putUniqueNodesOperatorVariableMap(ILogicalOperator op, HashMap opRef) { + protected String getCollectionName(Mutable opRef) throws AlgebricksException { VXQueryConstantValue constantValue; AbstractLogicalOperator op = (AbstractLogicalOperator) opRef.getValue(); @@ -86,24 +81,45 @@ protected String getCollectionName(Mutable opRef) { return null; } - ILogicalExpression logicalExpression2 = (ILogicalExpression) functionCall.getArguments().get(0).getValue(); - if (logicalExpression2.getExpressionTag() != LogicalExpressionTag.VARIABLE) { - return null; - } - VariableReferenceExpression vre = (VariableReferenceExpression) logicalExpression2; - Mutable opRef3 = OperatorToolbox.findProducerOf(opRef, vre.getVariableReference()); - // Get the string assigned to the collection function. - AbstractLogicalOperator op3 = (AbstractLogicalOperator) opRef3.getValue(); + AbstractLogicalOperator op3 = (AbstractLogicalOperator) assign.getInputs().get(0).getValue(); if (op3.getOperatorTag() == LogicalOperatorTag.ASSIGN) { AssignOperator assign2 = (AssignOperator) op3; // Check to see if the expression is a constant expression and type string. - ILogicalExpression logicalExpression3 = (ILogicalExpression) assign2.getExpressions().get(0).getValue(); - if (logicalExpression3.getExpressionTag() != LogicalExpressionTag.CONSTANT) { + ILogicalExpression logicalExpression2 = (ILogicalExpression) assign2.getExpressions().get(0).getValue(); + if (logicalExpression2.getExpressionTag() != LogicalExpressionTag.CONSTANT) { + return null; + } + ConstantExpression constantExpression = (ConstantExpression) logicalExpression2; + constantValue = (VXQueryConstantValue) constantExpression.getValue(); + if (constantValue.getType() != SequenceType.create(BuiltinTypeRegistry.XS_STRING, Quantifier.QUANT_ONE)) { + return null; + } + } else if (op3.getOperatorTag() == LogicalOperatorTag.EMPTYTUPLESOURCE) { + ILogicalExpression logicalExpression2 = (ILogicalExpression) functionCall.getArguments().get(0).getValue(); + if (logicalExpression2.getExpressionTag() != LogicalExpressionTag.FUNCTION_CALL) { + return null; + } + AbstractFunctionCallExpression functionCall2 = (AbstractFunctionCallExpression) logicalExpression2; + if (!functionCall2.getFunctionIdentifier().equals(BuiltinOperators.PROMOTE.getFunctionIdentifier())) { + return null; + } + + ILogicalExpression logicalExpression3 = (ILogicalExpression) functionCall2.getArguments().get(0).getValue(); + if (logicalExpression3.getExpressionTag() != LogicalExpressionTag.FUNCTION_CALL) { + return null; + } + AbstractFunctionCallExpression functionCall3 = (AbstractFunctionCallExpression) logicalExpression3; + if (!functionCall3.getFunctionIdentifier().equals(BuiltinFunctions.FN_DATA_1.getFunctionIdentifier())) { + return null; + } + + ILogicalExpression logicalExpression4 = (ILogicalExpression) functionCall3.getArguments().get(0).getValue(); + if (logicalExpression4.getExpressionTag() != LogicalExpressionTag.CONSTANT) { return null; } - ConstantExpression constantExpression = (ConstantExpression) logicalExpression3; + ConstantExpression constantExpression = (ConstantExpression) logicalExpression4; constantValue = (VXQueryConstantValue) constantExpression.getValue(); if (constantValue.getType() != SequenceType.create(BuiltinTypeRegistry.XS_STRING, Quantifier.QUANT_ONE)) { return null; @@ -118,8 +134,9 @@ protected String getCollectionName(Mutable opRef) { if (tvp.getTag() == ValueTag.XS_STRING_TAG) { tvp.getValue(stringp); try { - bbis.setByteBuffer(ByteBuffer.wrap(Arrays.copyOfRange(stringp.getByteArray(), stringp.getStartOffset(), - stringp.getLength() + stringp.getStartOffset())), 0); + bbis.setByteBuffer( + ByteBuffer.wrap(Arrays.copyOfRange(stringp.getByteArray(), stringp.getStartOffset(), + stringp.getLength() + stringp.getStartOffset())), 0); collectionName = di.readUTF(); } catch (IOException e) { e.printStackTrace(); diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/AbstractRemoveRedundantTypeExpressionsRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/AbstractRemoveRedundantTypeExpressionsRule.java index 2430b5d36..5d83be72d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/AbstractRemoveRedundantTypeExpressionsRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/AbstractRemoveRedundantTypeExpressionsRule.java @@ -26,13 +26,13 @@ import org.apache.vxquery.context.StaticContextImpl; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; -import org.apache.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; -import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; public abstract class AbstractRemoveRedundantTypeExpressionsRule implements IAlgebraicRewriteRule { final StaticContextImpl dCtx = new StaticContextImpl(RootStaticContextImpl.INSTANCE); diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/AbstractUsedVariablesProcessingRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/AbstractUsedVariablesProcessingRule.java index 7ee05c008..7cbe50318 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/AbstractUsedVariablesProcessingRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/AbstractUsedVariablesProcessingRule.java @@ -21,15 +21,15 @@ import org.apache.commons.lang3.mutable.Mutable; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalPlan; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalVariable; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractOperatorWithNestedPlans; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.visitors.VariableUtilities; -import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalPlan; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalVariable; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractOperatorWithNestedPlans; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.visitors.VariableUtilities; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; /** * The AbstractUsedVariablesProcessingRule provides a frame work to track used @@ -42,7 +42,6 @@ public abstract class AbstractUsedVariablesProcessingRule implements IAlgebraicR protected List usedVariables = new ArrayList(); protected boolean hasRun = false; - Mutable firstOpRef; @Override public boolean rewritePost(Mutable opRef, IOptimizationContext context) @@ -52,10 +51,8 @@ public boolean rewritePost(Mutable opRef, IOptimizationContext @Override public boolean rewritePre(Mutable opRef, IOptimizationContext context) throws AlgebricksException { - if (hasRun && !firstOpRef.equals(opRef)) { + if (hasRun) { return false; - } else { - firstOpRef = opRef; } boolean modified = false; boolean modified_last_pass; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/AbstractVXQueryAggregateRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/AbstractVXQueryAggregateRule.java index f9db6149d..80834c9e8 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/AbstractVXQueryAggregateRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/AbstractVXQueryAggregateRule.java @@ -18,9 +18,9 @@ import org.apache.vxquery.functions.BuiltinFunctions; -import org.apache.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.functions.IFunctionInfo; -import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.IFunctionInfo; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; public abstract class AbstractVXQueryAggregateRule implements IAlgebraicRewriteRule { diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/CollectionFileDomain.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/CollectionFileDomain.java index 79a38e8bb..2331838f0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/CollectionFileDomain.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/CollectionFileDomain.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.compiler.rewriter.rules; -import org.apache.hyracks.algebricks.core.algebra.properties.INodeDomain; +import edu.uci.ics.hyracks.algebricks.core.algebra.properties.INodeDomain; public class CollectionFileDomain implements INodeDomain { diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConsolidateAssignAggregateRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConsolidateAssignAggregateRule.java index ecc105e4d..6a471c54b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConsolidateAssignAggregateRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConsolidateAssignAggregateRule.java @@ -26,23 +26,23 @@ import org.apache.vxquery.types.Quantifier; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalVariable; -import org.apache.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.ConstantExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; -import org.apache.hyracks.algebricks.core.algebra.functions.IFunctionInfo; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AggregateOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.SubplanOperator; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalVariable; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.ConstantExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.IFunctionInfo; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AggregateOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.SubplanOperator; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; /** * The rule searches for assign operator with an aggregate function expression diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConsolidateUnnestsRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConsolidateUnnestsRule.java index b634f5b2e..6a2bb083c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConsolidateUnnestsRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConsolidateUnnestsRule.java @@ -21,42 +21,42 @@ import org.apache.vxquery.functions.BuiltinOperators; import org.apache.vxquery.functions.Function; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; -import org.apache.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.ScalarFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.ScalarFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; /** * The rule searches for an unnest operator (1) immediately following an unnest * operator (2). XQuery unnest operator (1) must have a scalar implementation * of the unnest function. If so the two unnest expressions can be merged * together. - * + * *
- * Before
+ * Before 
  * 
  *   plan__parent
  *   UNNEST( $v2 : uf2( $v1 ) )
  *   UNNEST( $v1 : uf1( $v0 ) )
  *   plan__child
- * 
+ *   
  *   Where $v1 is not used in plan__parent and uf1 is not a descendant expression.
- * 
+ *   
  * After
  * 
  *   plan__parent
  *   UNNEST( $v2 : uf2( sf1( $v0 ) ) )
  *   plan__child
- * 
+ *   
  *   uf1 becomes sf1 since it changes from unnesting to scalar expression.
  * 
- * + * * @author prestonc */ public class ConsolidateUnnestsRule extends AbstractUsedVariablesProcessingRule { @@ -75,42 +75,41 @@ protected boolean processOperator(Mutable opRef, IOptimization } UnnestOperator unnest2 = (UnnestOperator) op2; - if (usedVariables.contains(unnest2.getVariable())) { - return false; - } + if (!usedVariables.contains(unnest2.getVariable())) { + // Check to see if the unnest2 expression has a scalar implementation. + ILogicalExpression logicalExpression2 = (ILogicalExpression) unnest2.getExpressionRef().getValue(); + if (logicalExpression2.getExpressionTag() != LogicalExpressionTag.FUNCTION_CALL) { + return false; + } + AbstractFunctionCallExpression functionCall2 = (AbstractFunctionCallExpression) logicalExpression2; + Function functionInfo2 = (Function) functionCall2.getFunctionInfo(); + if (!functionInfo2.hasScalarEvaluatorFactory()) { + return false; + } + // Exception for specific path expressions. + if (functionCall2.getFunctionIdentifier().equals(BuiltinOperators.DESCENDANT.getFunctionIdentifier()) + || functionCall2.getFunctionIdentifier().equals( + BuiltinOperators.DESCENDANT_OR_SELF.getFunctionIdentifier())) { + return false; + } - // Check to see if the unnest2 expression has a scalar implementation. - ILogicalExpression logicalExpression2 = (ILogicalExpression) unnest2.getExpressionRef().getValue(); - if (logicalExpression2.getExpressionTag() != LogicalExpressionTag.FUNCTION_CALL) { - return false; - } - AbstractFunctionCallExpression functionCall2 = (AbstractFunctionCallExpression) logicalExpression2; - Function functionInfo2 = (Function) functionCall2.getFunctionInfo(); - if (!functionInfo2.hasScalarEvaluatorFactory()) { - return false; - } - // Exception for specific path expressions. - if (functionCall2.getFunctionIdentifier().equals(BuiltinOperators.DESCENDANT.getFunctionIdentifier()) - || functionCall2.getFunctionIdentifier().equals( - BuiltinOperators.DESCENDANT_OR_SELF.getFunctionIdentifier())) { - return false; - } + // Find unnest2 variable in unnest1 + Mutable unnest1Arg = ExpressionToolbox.findVariableExpression( + unnest1.getExpressionRef(), unnest2.getVariable()); + if (unnest1Arg == null) { + return false; + } - // Find unnest2 variable in unnest1 - Mutable unnest1Arg = ExpressionToolbox.findVariableExpression(unnest1.getExpressionRef(), - unnest2.getVariable()); - if (unnest1Arg == null) { - return false; - } + // Replace unnest2 expression in unnest1 + ScalarFunctionCallExpression child = new ScalarFunctionCallExpression(functionInfo2, + functionCall2.getArguments()); + unnest1Arg.setValue(child); - // Replace unnest2 expression in unnest1 - ScalarFunctionCallExpression child = new ScalarFunctionCallExpression(functionInfo2, - functionCall2.getArguments()); - unnest1Arg.setValue(child); - - // Move input for unnest2 into unnest1 - unnest1.getInputs().clear(); - unnest1.getInputs().addAll(unnest2.getInputs()); - return true; + // Move input for unnest2 into unnest1 + unnest1.getInputs().clear(); + unnest1.getInputs().addAll(unnest2.getInputs()); + return true; + } + return false; } } diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertAssignSortDistinctNodesToOperatorsRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertAssignSortDistinctNodesToOperatorsRule.java index f9282094e..f3d7d4867 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertAssignSortDistinctNodesToOperatorsRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertAssignSortDistinctNodesToOperatorsRule.java @@ -21,32 +21,33 @@ import org.apache.commons.lang3.mutable.Mutable; import org.apache.commons.lang3.mutable.MutableObject; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.common.utils.Pair; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalVariable; -import org.apache.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.AggregateFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.ScalarFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.UnnestingFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; -import org.apache.hyracks.algebricks.core.algebra.functions.IFunctionInfo; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AggregateOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.GroupByOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.NestedTupleSourceOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.OrderOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.OrderOperator.IOrder; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.SubplanOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; -import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; import org.apache.vxquery.functions.BuiltinOperators; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.common.utils.Pair; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalVariable; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AggregateFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.ScalarFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.UnnestingFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.IFunctionInfo; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AggregateOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.GroupByOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.NestedTupleSourceOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.OrderOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.OrderOperator.IOrder; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.SubplanOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; + public class ConvertAssignSortDistinctNodesToOperatorsRule implements IAlgebraicRewriteRule { @Override @@ -58,7 +59,6 @@ public boolean rewritePre(Mutable opRef, IOptimizationContext * Find where a sort distinct nodes is being used and not required based on input parameters. * Search pattern: assign [function-call: sort-distinct-nodes-asc-or-atomics] */ - @SuppressWarnings("unused") @Override public boolean rewritePost(Mutable opRef, IOptimizationContext context) { Mutable nextOperatorRef; @@ -160,7 +160,7 @@ private AggregateOperator getAggregateOperator(LogicalVariable unnestVariable, L Mutable unnestVariableRef = new MutableObject( new VariableReferenceExpression(unnestVariable)); aggregateSequenceArgs.add(unnestVariableRef); - + List> exprs = new ArrayList>(); ILogicalExpression aggregateExp = new AggregateFunctionCallExpression(BuiltinOperators.SEQUENCE, false, aggregateSequenceArgs); @@ -199,7 +199,6 @@ private Mutable getInputOperator(Mutable opR } } - @SuppressWarnings("unused") private OrderOperator getOrderOperator(Mutable variableRef) { List>> orderArgs = new ArrayList>>(); orderArgs.add(new Pair>(OrderOperator.ASC_ORDER, variableRef)); diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertAssignToAggregateRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertAssignToAggregateRule.java index 7ea06140c..09815d0c3 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertAssignToAggregateRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertAssignToAggregateRule.java @@ -24,24 +24,24 @@ import org.apache.vxquery.compiler.rewriter.rules.util.ExpressionToolbox; import org.apache.vxquery.functions.BuiltinOperators; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalVariable; -import org.apache.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.AggregateFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.UnnestingFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; -import org.apache.hyracks.algebricks.core.algebra.functions.IFunctionInfo; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AggregateOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.NestedTupleSourceOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.SubplanOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalVariable; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AggregateFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.UnnestingFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.IFunctionInfo; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AggregateOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.NestedTupleSourceOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.SubplanOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; /** * The rule searches for assign operators that have a xquery aggregate function. diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertAssignToUnnestRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertAssignToUnnestRule.java index 3ea496590..72f6d03bb 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertAssignToUnnestRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertAssignToUnnestRule.java @@ -20,22 +20,23 @@ import org.apache.vxquery.functions.BuiltinOperators; import org.apache.vxquery.functions.Function; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; -import org.apache.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.UnnestingFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.UnnestingFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; /** * The rule searches for unnest(iterate) operator followed by an assign(child) * operator and merges the assign into the unnest operator. - * + * *
  * Before
  * 
@@ -43,23 +44,22 @@
  *   UNNEST( $v2 : iterate( $v1 ) )
  *   ASSIGN( $v1 : sf1( $v0 ) )
  *   plan__child
- * 
+ *   
  *   where plan__parent does not use $v1 and $v0 is defined in plan__child.
  *   sf1 is a scalar function that has a unnesting implementation.
- * 
+ *   
  * After
  * 
  *   plan__parent
  *   UNNEST( $v2 : uf1( $v0 ) )
  *   plan__child
  * 
- * + * * @author prestonc */ -public class ConvertAssignToUnnestRule extends AbstractUsedVariablesProcessingRule { +public class ConvertAssignToUnnestRule implements IAlgebraicRewriteRule { @Override - protected boolean processOperator(Mutable opRef, IOptimizationContext context) - throws AlgebricksException { + public boolean rewritePre(Mutable opRef, IOptimizationContext context) throws AlgebricksException { AbstractLogicalOperator op = (AbstractLogicalOperator) opRef.getValue(); if (op.getOperatorTag() != LogicalOperatorTag.UNNEST) { return false; @@ -82,10 +82,6 @@ protected boolean processOperator(Mutable opRef, IOptimization } AssignOperator assign = (AssignOperator) op2; - if (usedVariables.contains(assign.getVariables())) { - return false; - } - // Check to see if the expression has an unnesting implementation. ILogicalExpression logicalExpression2 = (ILogicalExpression) assign.getExpressions().get(0).getValue(); if (logicalExpression2.getExpressionTag() != LogicalExpressionTag.FUNCTION_CALL) { @@ -96,16 +92,21 @@ protected boolean processOperator(Mutable opRef, IOptimization if (!functionInfo2.hasUnnestingEvaluatorFactory()) { return false; } + + // TODO add checks for variables used that have now been removed. // Update the unnest parameters. unnest.getInputs().clear(); unnest.getInputs().addAll(assign.getInputs()); - - UnnestingFunctionCallExpression child = new UnnestingFunctionCallExpression(functionInfo2, - functionCall2.getArguments()); + + UnnestingFunctionCallExpression child = new UnnestingFunctionCallExpression(functionInfo2, functionCall2.getArguments()); unnest.getExpressionRef().setValue(child); - + return true; } + @Override + public boolean rewritePost(Mutable opRef, IOptimizationContext context) { + return false; + } } diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertFromAlgebricksExpressionsRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertFromAlgebricksExpressionsRule.java index d830ccce6..1bc2bd6c2 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertFromAlgebricksExpressionsRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertFromAlgebricksExpressionsRule.java @@ -28,64 +28,55 @@ import org.apache.vxquery.functions.BuiltinFunctions; import org.apache.vxquery.functions.BuiltinOperators; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.common.utils.Pair; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; -import org.apache.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.IExpressionAnnotation; -import org.apache.hyracks.algebricks.core.algebra.expressions.ScalarFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.functions.AlgebricksBuiltinFunctions; -import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; -import org.apache.hyracks.algebricks.core.algebra.functions.IFunctionInfo; -import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.ScalarFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.AlgebricksBuiltinFunctions; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.IFunctionInfo; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; /** - * The rule searches for where the Algebricks builtin function are temporarly in the plan in place of XQuery function. - * The combination the Algebricks builtin function are replace with boolean XQuery function and the XQuery equivalent + * The rule searches for where the Algebricks builtin function are temporarly in the plan in place of XQuery function. + * The combination the Algebricks builtin function are replace with boolean XQuery function and the XQuery equivalent * function. - * + * *
  * Before
  * 
  *   plan__parent
  *   %OPERATOR( $v1 : algebricks_function( \@input_expression ) )
  *   plan__child
- * 
- *   where the function annotation contains a hint on which xquery expression is represented by the algebricks function.
- * 
- * After
+ *   
+ *   Where xquery_function creates an atomic value.
+ *   
+ * After 
  * 
  *   plan__parent
- *   %OPERATOR( $v1 :xquery_expression( \@input_expression ) ) )
+ *   %OPERATOR( $v1 : boolean(xquery_function( \@input_expression ) ) )
  *   plan__child
- * 
- *   note the xquery_expression may include the boolean function to ensure only a true or false result.
- *
  * 
- * - * @author prestonc, shivanim + * + * @author prestonc */ public class ConvertFromAlgebricksExpressionsRule implements IAlgebraicRewriteRule { final List> functionList = new ArrayList>(); - final static Map> ALGEBRICKS_MAP = new HashMap>(); - final static String ALGEBRICKS_CONVERSION_ANNOTATION = "ConversionToAndFromAlgebricks"; - AbstractFunctionCallExpression searchFunction; - boolean isBoolean = false; - @SuppressWarnings({ "unchecked", "rawtypes" }) + final Map ALGEBRICKS_MAP = new HashMap(); + public ConvertFromAlgebricksExpressionsRule() { - ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.AND, new Pair(BuiltinOperators.AND, null)); - ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.EQ, new Pair(BuiltinOperators.VALUE_EQ, null)); - ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.GE, new Pair(BuiltinOperators.VALUE_GE, null)); - ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.GT, new Pair(BuiltinOperators.VALUE_GT, null)); - ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.IS_NULL, new Pair(null, BuiltinFunctions.FN_EMPTY_1)); - ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.LE, new Pair(BuiltinOperators.VALUE_LE, null)); - ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.LT, new Pair(BuiltinOperators.VALUE_LT, null)); - ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.NOT, new Pair(null, BuiltinFunctions.FN_NOT_1)); - ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.NEQ, new Pair(BuiltinOperators.VALUE_NE, null)); - ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.OR, new Pair(BuiltinOperators.OR, null)); + ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.AND, BuiltinOperators.AND); + ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.OR, BuiltinOperators.OR); + ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.NOT, BuiltinFunctions.FN_NOT_1); + ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.EQ, BuiltinOperators.VALUE_EQ); + ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.NEQ, BuiltinOperators.VALUE_NE); + ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.LT, BuiltinOperators.VALUE_LT); + ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.LE, BuiltinOperators.VALUE_LE); + ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.GT, BuiltinOperators.VALUE_GT); + ALGEBRICKS_MAP.put(AlgebricksBuiltinFunctions.GE, BuiltinOperators.VALUE_GE); } @Override @@ -103,54 +94,26 @@ public boolean rewritePost(Mutable opRef, IOptimizationContext modified = true; } } - context.computeAndSetTypeEnvironmentForOperator(opRef.getValue()); return modified; } + @SuppressWarnings("unchecked") private boolean processExpression(Mutable opRef, Mutable search) { boolean modified = false; - functionList.clear(); - ExpressionToolbox.findAllFunctionExpressions(search, functionList); - for (Mutable searchM : functionList) { - searchFunction = (AbstractFunctionCallExpression) searchM.getValue(); - - if (ALGEBRICKS_MAP.containsKey(searchFunction.getFunctionIdentifier())) { - FunctionIdentifier fid = searchFunction.getFunctionIdentifier(); - - if (ALGEBRICKS_MAP.get(fid).first == null) { - modified = convertAlgebricksExpression(searchM, ALGEBRICKS_MAP.get(fid).second, false); - } else if (ALGEBRICKS_MAP.get(fid).second == null) { - modified = convertAlgebricksExpression(searchM, ALGEBRICKS_MAP.get(fid).first, true); - } else { - IExpressionAnnotation annotate = searchFunction.getAnnotations().get( - ALGEBRICKS_CONVERSION_ANNOTATION); - - if (((FunctionIdentifier) annotate.getObject()).equals(ALGEBRICKS_MAP.get(fid).first - .getFunctionIdentifier())) { - - modified = convertAlgebricksExpression(searchM, ALGEBRICKS_MAP.get(fid).first, true); - } else if (((FunctionIdentifier) annotate.getObject()).equals(ALGEBRICKS_MAP.get(fid).second - .getFunctionIdentifier())) { - - modified = convertAlgebricksExpression(searchM, ALGEBRICKS_MAP.get(fid).second, false); - } - } + for (FunctionIdentifier fid : ALGEBRICKS_MAP.keySet()) { + functionList.clear(); + ExpressionToolbox.findAllFunctionExpressions(search, fid, functionList); + for (Mutable searchM : functionList) { + AbstractFunctionCallExpression searchFunction = (AbstractFunctionCallExpression) searchM.getValue(); + searchFunction.setFunctionInfo(ALGEBRICKS_MAP.get(fid)); + // Add boolean function before vxquery expression. + ScalarFunctionCallExpression booleanExp = new ScalarFunctionCallExpression( + BuiltinFunctions.FN_BOOLEAN_1, new MutableObject(searchM.getValue())); + searchM.setValue(booleanExp); + modified = true; } } return modified; } - @SuppressWarnings("unchecked") - private boolean convertAlgebricksExpression(Mutable searchM, IFunctionInfo funcInfo, - boolean isBoolean) { - AbstractFunctionCallExpression searchFunction = (AbstractFunctionCallExpression) searchM.getValue(); - searchFunction.setFunctionInfo(funcInfo); - - if (isBoolean) { - ScalarFunctionCallExpression functionCallExp = new ScalarFunctionCallExpression( - BuiltinFunctions.FN_BOOLEAN_1, new MutableObject(searchM.getValue())); - searchM.setValue(functionCallExp); - } - return true; - } } diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertToAlgebricksExpressionsRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertToAlgebricksExpressionsRule.java index cf74bea50..943d63049 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertToAlgebricksExpressionsRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/ConvertToAlgebricksExpressionsRule.java @@ -16,71 +16,66 @@ */ package org.apache.vxquery.compiler.rewriter.rules; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import org.apache.commons.lang3.mutable.Mutable; +import org.apache.vxquery.compiler.rewriter.rules.util.ExpressionToolbox; import org.apache.vxquery.compiler.rewriter.rules.util.OperatorToolbox; import org.apache.vxquery.functions.BuiltinFunctions; import org.apache.vxquery.functions.BuiltinOperators; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; -import org.apache.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.ExpressionAnnotationNoCopyImpl; -import org.apache.hyracks.algebricks.core.algebra.expressions.IExpressionAnnotation; -import org.apache.hyracks.algebricks.core.algebra.functions.AlgebricksBuiltinFunctions; -import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; -import org.apache.hyracks.algebricks.core.algebra.functions.IFunctionInfo; -import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.AlgebricksBuiltinFunctions; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.IFunctionInfo; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; /** - * The rule searches for where the XQuery function are used in place of Algebricks builtin function. - * The combination of the boolean XQuery function and the XQuery equivalent function are replaced with - * the Algebricks builtin function . - * + * The rule searches for where the XQuery function are used in place of Algebricks builtin function. + * The combination the boolean XQuery function and the XQuery equivalent function are replace with + * the Algebricks builtin function . + * *
  * Before
  * 
  *   plan__parent
- *   %OPERATOR( $v1 : xquery_expression( \@input_expression ) )
+ *   %OPERATOR( $v1 : boolean(xquery_function( \@input_expression ) ) )
  *   plan__child
- * 
- *   where xquery_expression has a known equivalent in Algebricks,
- *     such as conditional expressions and a check for null.
- *     The expression may include the boolean function to ensure only
- *     a true or false result.
- * 
- * After
+ *   
+ *   Where xquery_function creates an atomic value.
+ *   
+ * After 
  * 
  *   plan__parent
  *   %OPERATOR( $v1 : algebricks_function( \@input_expression ) )
  *   plan__child
  * 
- * - * @author prestonc, shivanim + * + * @author prestonc */ public class ConvertToAlgebricksExpressionsRule implements IAlgebraicRewriteRule { + final List> functionList = new ArrayList>(); + final Map ALGEBRICKS_MAP = new HashMap(); - final Map ALGEBRICKS_BOOL_MAP = new HashMap(); - final static String ALGEBRICKS_CONVERSION_ANNOTATION = "ConversionToAndFromAlgebricks"; public ConvertToAlgebricksExpressionsRule() { - ALGEBRICKS_BOOL_MAP.put(BuiltinOperators.AND.getFunctionIdentifier(), AlgebricksBuiltinFunctions.AND); - ALGEBRICKS_BOOL_MAP.put(BuiltinOperators.OR.getFunctionIdentifier(), AlgebricksBuiltinFunctions.OR); - ALGEBRICKS_BOOL_MAP.put(BuiltinOperators.VALUE_EQ.getFunctionIdentifier(), AlgebricksBuiltinFunctions.EQ); - ALGEBRICKS_BOOL_MAP.put(BuiltinOperators.VALUE_GE.getFunctionIdentifier(), AlgebricksBuiltinFunctions.GE); - ALGEBRICKS_BOOL_MAP.put(BuiltinOperators.VALUE_GT.getFunctionIdentifier(), AlgebricksBuiltinFunctions.GT); - ALGEBRICKS_BOOL_MAP.put(BuiltinOperators.VALUE_LE.getFunctionIdentifier(), AlgebricksBuiltinFunctions.LE); - ALGEBRICKS_BOOL_MAP.put(BuiltinOperators.VALUE_LT.getFunctionIdentifier(), AlgebricksBuiltinFunctions.LT); - ALGEBRICKS_BOOL_MAP.put(BuiltinOperators.VALUE_NE.getFunctionIdentifier(), AlgebricksBuiltinFunctions.NEQ); - - ALGEBRICKS_MAP.put(BuiltinFunctions.FN_EMPTY_1.getFunctionIdentifier(), AlgebricksBuiltinFunctions.IS_NULL); + ALGEBRICKS_MAP.put(BuiltinOperators.AND.getFunctionIdentifier(), AlgebricksBuiltinFunctions.AND); + ALGEBRICKS_MAP.put(BuiltinOperators.OR.getFunctionIdentifier(), AlgebricksBuiltinFunctions.OR); ALGEBRICKS_MAP.put(BuiltinFunctions.FN_NOT_1.getFunctionIdentifier(), AlgebricksBuiltinFunctions.NOT); + ALGEBRICKS_MAP.put(BuiltinOperators.VALUE_EQ.getFunctionIdentifier(), AlgebricksBuiltinFunctions.EQ); + ALGEBRICKS_MAP.put(BuiltinOperators.VALUE_NE.getFunctionIdentifier(), AlgebricksBuiltinFunctions.NEQ); + ALGEBRICKS_MAP.put(BuiltinOperators.VALUE_LT.getFunctionIdentifier(), AlgebricksBuiltinFunctions.LT); + ALGEBRICKS_MAP.put(BuiltinOperators.VALUE_LE.getFunctionIdentifier(), AlgebricksBuiltinFunctions.LE); + ALGEBRICKS_MAP.put(BuiltinOperators.VALUE_GT.getFunctionIdentifier(), AlgebricksBuiltinFunctions.GT); + ALGEBRICKS_MAP.put(BuiltinOperators.VALUE_GE.getFunctionIdentifier(), AlgebricksBuiltinFunctions.GE); } @Override @@ -94,60 +89,36 @@ public boolean rewritePost(Mutable opRef, IOptimizationContext boolean modified = false; List> expressions = OperatorToolbox.getExpressions(opRef); for (Mutable expression : expressions) { - if (processExpression(expression, context)) { + if (processExpression(opRef, expression, context)) { modified = true; } } return modified; } - private boolean processExpression(Mutable search, IOptimizationContext context) { - return checkAllFunctionExpressions(search, context); - } - - public boolean convertFunctionToAlgebricksExpression(Mutable searchM, - AbstractFunctionCallExpression functionCall, IOptimizationContext context, - Map map) { - - if (map.containsKey(functionCall.getFunctionIdentifier())) { - IExpressionAnnotation annotate = new ExpressionAnnotationNoCopyImpl(); - annotate.setObject(functionCall.getFunctionIdentifier()); - FunctionIdentifier algebricksFid = map.get(functionCall.getFunctionIdentifier()); - IFunctionInfo algebricksFunction = context.getMetadataProvider().lookupFunction(algebricksFid); - functionCall.setFunctionInfo(algebricksFunction); - functionCall.getAnnotations().put(ALGEBRICKS_CONVERSION_ANNOTATION, annotate); - searchM.setValue(functionCall); - return true; - } - return false; - } - - public boolean checkAllFunctionExpressions(Mutable search, IOptimizationContext context) { + private boolean processExpression(Mutable opRef, Mutable search, + IOptimizationContext context) { boolean modified = false; - ILogicalExpression le = search.getValue(); - - if (le.getExpressionTag() == LogicalExpressionTag.FUNCTION_CALL) { - AbstractFunctionCallExpression afce = (AbstractFunctionCallExpression) le; - if (afce.getFunctionIdentifier().equals(BuiltinFunctions.FN_BOOLEAN_1.getFunctionIdentifier())) { - ILogicalExpression argFirst = afce.getArguments().get(0).getValue(); - if (argFirst.getExpressionTag() == LogicalExpressionTag.FUNCTION_CALL) { - AbstractFunctionCallExpression functionCall = (AbstractFunctionCallExpression) argFirst; - if (convertFunctionToAlgebricksExpression(search, functionCall, context, ALGEBRICKS_BOOL_MAP)) { - modified = true; - } - } - } else if (ALGEBRICKS_MAP.containsKey(afce.getFunctionIdentifier())) { - if (convertFunctionToAlgebricksExpression(search, afce, context, ALGEBRICKS_MAP)) { - modified = true; - } - } else { + functionList.clear(); + ExpressionToolbox.findAllFunctionExpressions(search, BuiltinFunctions.FN_BOOLEAN_1.getFunctionIdentifier(), + functionList); + for (Mutable searchM : functionList) { + // Get input function + AbstractFunctionCallExpression searchFunction = (AbstractFunctionCallExpression) searchM.getValue(); + ILogicalExpression argFirst = searchFunction.getArguments().get(0).getValue(); + if (argFirst.getExpressionTag() != LogicalExpressionTag.FUNCTION_CALL) { + continue; } - for (Mutable argExp : afce.getArguments()) { - if (checkAllFunctionExpressions(argExp, context)) { - modified = true; - } + AbstractFunctionCallExpression functionCall = (AbstractFunctionCallExpression) argFirst; + if (ALGEBRICKS_MAP.containsKey(functionCall.getFunctionIdentifier())) { + FunctionIdentifier algebricksFid = ALGEBRICKS_MAP.get(functionCall.getFunctionIdentifier()); + IFunctionInfo algebricksFunction = context.getMetadataProvider().lookupFunction(algebricksFid); + functionCall.setFunctionInfo(algebricksFunction); + searchM.setValue(argFirst); + modified = true; } } return modified; } + } diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/EliminateSubplanForSingleItemsRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/EliminateSubplanForSingleItemsRule.java index 953a0b23a..4ba642a44 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/EliminateSubplanForSingleItemsRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/EliminateSubplanForSingleItemsRule.java @@ -25,22 +25,22 @@ import org.apache.vxquery.types.Quantifier; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; -import org.apache.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.ConstantExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AggregateOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.SubplanOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; -import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; -import org.apache.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.ConstantExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AggregateOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.SubplanOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; /** * The rule searches for subplans that only have one item per tuple. diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/EliminateSubplanForSinglePathsRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/EliminateSubplanForSinglePathsRule.java index f4ed7dea3..16bc20de3 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/EliminateSubplanForSinglePathsRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/EliminateSubplanForSinglePathsRule.java @@ -21,13 +21,13 @@ import org.apache.vxquery.compiler.rewriter.rules.propagationpolicies.cardinality.Cardinality; import org.apache.vxquery.compiler.rewriter.rules.util.CardinalityRuleToolbox; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.SubplanOperator; -import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.SubplanOperator; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; /** * The rule searches for subplans that only have one path of execution. diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/EliminateUnnestAggregateSequencesRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/EliminateUnnestAggregateSequencesRule.java index 3dc412f4a..0acd1547a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/EliminateUnnestAggregateSequencesRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/EliminateUnnestAggregateSequencesRule.java @@ -19,20 +19,20 @@ import org.apache.commons.lang3.mutable.Mutable; import org.apache.vxquery.functions.BuiltinOperators; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalVariable; -import org.apache.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AggregateOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; -import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalVariable; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AggregateOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; /** * The rule searches for unnest followed by an aggregate operator with a diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/EliminateUnnestAggregateSubplanRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/EliminateUnnestAggregateSubplanRule.java index faf6e0995..193b53d05 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/EliminateUnnestAggregateSubplanRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/EliminateUnnestAggregateSubplanRule.java @@ -20,21 +20,21 @@ import org.apache.vxquery.compiler.rewriter.rules.util.OperatorToolbox; import org.apache.vxquery.functions.BuiltinOperators; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalVariable; -import org.apache.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AggregateOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.SubplanOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; -import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalVariable; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AggregateOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.SubplanOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; /** * The rule searches for unnest followed by subplan with the root operator an diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/InlineNestedVariablesRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/InlineNestedVariablesRule.java new file mode 100644 index 000000000..c0c082f09 --- /dev/null +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/InlineNestedVariablesRule.java @@ -0,0 +1,97 @@ +/* + * 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. + */ +package org.apache.vxquery.compiler.rewriter.rules; + +import java.util.List; + +import org.apache.commons.lang3.mutable.Mutable; + +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalPlan; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalVariable; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractOperatorWithNestedPlans; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; +import edu.uci.ics.hyracks.algebricks.rewriter.rules.InlineVariablesRule; + +/** + * Modifies the InlineVariablesRule to also process nested plans. + */ +public class InlineNestedVariablesRule extends InlineVariablesRule { + + protected boolean inlineVariables(Mutable opRef, IOptimizationContext context) + throws AlgebricksException { + AbstractLogicalOperator op = (AbstractLogicalOperator) opRef.getValue(); + + // Update mapping from variables to expressions during top-down traversal. + if (op.getOperatorTag() == LogicalOperatorTag.ASSIGN) { + AssignOperator assignOp = (AssignOperator) op; + List vars = assignOp.getVariables(); + List> exprs = assignOp.getExpressions(); + for (int i = 0; i < vars.size(); i++) { + ILogicalExpression expr = exprs.get(i).getValue(); + // Ignore functions that are either in the doNotInline set or are non-functional + if (expr.getExpressionTag() == LogicalExpressionTag.FUNCTION_CALL) { + AbstractFunctionCallExpression funcExpr = (AbstractFunctionCallExpression) expr; + if (doNotInlineFuncs.contains(funcExpr.getFunctionIdentifier()) || !funcExpr.isFunctional()) { + continue; + } + } + varAssignRhs.put(vars.get(i), exprs.get(i).getValue()); + } + } + + boolean modified = false; + // Descend into nested plans inlining along the way. + if (op.hasNestedPlans()) { + AbstractOperatorWithNestedPlans nestedOp = (AbstractOperatorWithNestedPlans) op; + for (ILogicalPlan nestedPlan : nestedOp.getNestedPlans()) { + for (Mutable nestedOpRef : nestedPlan.getRoots()) { + if (inlineVariables(nestedOpRef, context)) { + modified = true; + } + } + } + } + + // Descend into children inlining along on the way. + for (Mutable inputOpRef : op.getInputs()) { + if (inlineVariables(inputOpRef, context)) { + modified = true; + } + } + + if (performBottomUpAction(op)) { + modified = true; + } + + if (modified) { + context.computeAndSetTypeEnvironmentForOperator(op); + context.addToDontApplySet(this, op); + // Re-enable rules that we may have already tried. They could be applicable now after inlining. + context.removeFromAlreadyCompared(opRef.getValue()); + } + + return modified; + } +} diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/IntroduceCollectionRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/IntroduceCollectionRule.java index cc857a1a0..a5cdfe787 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/IntroduceCollectionRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/IntroduceCollectionRule.java @@ -23,46 +23,50 @@ import org.apache.vxquery.types.Quantifier; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.DataSourceScanOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.DataSourceScanOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; /** * Find the default query plan created for collection and updated it to use * parallelization. The rule searches for unnest followed by an assign for the * collection function expression. When this plan block exists the data source * scan operator added in the blocks place. - * + * *
  * Before
- *
+ * 
  *   plan__parent
- *   UNNEST( $v2 : exp($v1) )
- *   ASSIGN( $v1 : collection( $v0 ) )
- *   ASSIGN( $v0 : constant )
+ *   UNNEST( $v2 : iterate( $v1 ) )
+ *   ASSIGN( $v1 : collection( $source ) )
  *   plan__child
- *
- * After
- *
+ *   
+ *   Where $v1 is not used anywhere else in the plan and $source is:
+ *   ASSIGN( $source : promote( data( constant ) ) )
+ *    or
+ *   ASSIGN( $source : promote( data( $v0 ) ) )
+ *   ASSIGN( $v0 : constant )
+ *   
+ * After 
+ * 
  *   plan__parent
- *   UNNEST( $v2 : exp($v1) )
- *   DATASCAN( collection( $v0 ) , $v1 )
+ *   DATASCAN( collection( $source ) , $v2 )
  *   plan__child
- *
- *   Where DATASCAN operator is configured to use the collection( $v0) for
- *   data represented by the "constant" and $v1 represents the xml document
- *   nodes from the collection.
+ *   
+ *   Where DATASCAN operator is configured to use the collection( $source) for 
+ *   data represented by the “constant” and $v2 represents the xml document 
+ *   node.
  * 
- * + * * @author prestonc */ public class IntroduceCollectionRule extends AbstractCollectionRule { @Override - public boolean rewritePre(Mutable opRef, IOptimizationContext context) { + public boolean rewritePre(Mutable opRef, IOptimizationContext context) throws AlgebricksException { VXQueryOptimizationContext vxqueryContext = (VXQueryOptimizationContext) context; String collectionName = getCollectionName(opRef); @@ -77,17 +81,16 @@ public boolean rewritePre(Mutable opRef, IOptimizationContext // Known to be true because of collection name. AbstractLogicalOperator op = (AbstractLogicalOperator) opRef.getValue(); UnnestOperator unnest = (UnnestOperator) op; - Mutable opRef2 = unnest.getInputs().get(0); - AbstractLogicalOperator op2 = (AbstractLogicalOperator) opRef2.getValue(); + AbstractLogicalOperator op2 = (AbstractLogicalOperator) unnest.getInputs().get(0).getValue(); AssignOperator assign = (AssignOperator) op2; - DataSourceScanOperator opNew = new DataSourceScanOperator(assign.getVariables(), ds); + DataSourceScanOperator opNew = new DataSourceScanOperator(unnest.getVariables(), ds); opNew.getInputs().addAll(assign.getInputs()); - opRef2.setValue(opNew); + opRef.setValue(opNew); return true; } } return false; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/IntroduceTwoStepAggregateRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/IntroduceTwoStepAggregateRule.java index 43435223c..d6f302cfc 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/IntroduceTwoStepAggregateRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/IntroduceTwoStepAggregateRule.java @@ -23,20 +23,20 @@ import org.apache.vxquery.functions.BuiltinFunctions; import org.apache.vxquery.functions.BuiltinOperators; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.common.utils.Pair; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; -import org.apache.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.AggregateFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; -import org.apache.hyracks.algebricks.core.algebra.functions.IFunctionInfo; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AggregateOperator; -import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.common.utils.Pair; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AggregateFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.IFunctionInfo; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AggregateOperator; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; /** * The rule searches for aggregate operators with an aggregate function diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/PushChildIntoDataScanRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/PushChildIntoDataScanRule.java index 7ffcd9062..d49d6966e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/PushChildIntoDataScanRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/PushChildIntoDataScanRule.java @@ -18,62 +18,72 @@ import java.util.ArrayList; import java.util.List; +import java.util.ListIterator; import org.apache.commons.lang3.mutable.Mutable; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.DataSourceScanOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; -import org.apache.vxquery.compiler.rewriter.VXQueryOptimizationContext; +import org.apache.commons.lang3.mutable.MutableObject; import org.apache.vxquery.compiler.rewriter.rules.util.ExpressionToolbox; -import org.apache.vxquery.context.StaticContext; +import org.apache.vxquery.context.RootStaticContextImpl; +import org.apache.vxquery.context.StaticContextImpl; +import org.apache.vxquery.datamodel.accessors.TaggedValuePointable; +import org.apache.vxquery.functions.BuiltinFunctions; import org.apache.vxquery.functions.BuiltinOperators; +import org.apache.vxquery.functions.Function; import org.apache.vxquery.metadata.VXQueryCollectionDataSource; -import org.apache.vxquery.metadata.VXQueryMetadataProvider; -import org.apache.vxquery.types.ElementType; +import org.apache.vxquery.types.SequenceType; + +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.ConstantExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.DataSourceScanOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; /** * The rule searches for an unnest operator immediately following a data scan * operator. - * + * *
- * Before
- *
+ * Before 
+ * 
  *   plan__parent
  *   UNNEST( $v2 : child( $v1 ) )
  *   DATASCAN( $source : $v1 )
  *   plan__child
- *
+ *   
  *   Where $v1 is not used in plan__parent.
- *
+ *   
  * After
- *
+ * 
  *   plan__parent
  *   DATASCAN( $source : $v1 )
  *   plan__child
- *
+ *   
  *   $source is encoded with the child parameters.
  * 
- * + * * @author prestonc */ public class PushChildIntoDataScanRule extends AbstractUsedVariablesProcessingRule { - StaticContext dCtx = null; + final StaticContextImpl dCtx = new StaticContextImpl(RootStaticContextImpl.INSTANCE); final int ARG_DATA = 0; final int ARG_TYPE = 1; protected boolean processOperator(Mutable opRef, IOptimizationContext context) throws AlgebricksException { - if (dCtx == null) { - VXQueryOptimizationContext vxqueryCtx = (VXQueryOptimizationContext) context; - dCtx = ((VXQueryMetadataProvider) vxqueryCtx.getMetadataProvider()).getStaticContext(); + AbstractLogicalOperator op0 = (AbstractLogicalOperator) opRef.getValue(); + if (op0.getInputs().isEmpty()) { + return false; } - AbstractLogicalOperator op1 = (AbstractLogicalOperator) opRef.getValue(); + + AbstractLogicalOperator op1 = (AbstractLogicalOperator) op0.getInputs().get(0).getValue(); if (op1.getOperatorTag() != LogicalOperatorTag.UNNEST) { return false; } @@ -97,7 +107,8 @@ protected boolean processOperator(Mutable opRef, IOptimization datascan.getVariables().get(0)); AssignOperator noOp = new AssignOperator(unnest.getVariable(), varExp); noOp.getInputs().addAll(unnest.getInputs()); - opRef.setValue(noOp); + op0.getInputs().clear(); + op0.getInputs().add(new MutableObject(noOp)); return true; } return false; @@ -105,7 +116,7 @@ protected boolean processOperator(Mutable opRef, IOptimization /** * In reverse add them to the data source. - * + * * @param ds * @param expression */ @@ -116,10 +127,8 @@ private boolean updateDataSource(VXQueryCollectionDataSource ds, Mutable 0; --i) { int typeId = ExpressionToolbox.getTypeExpressionTypeArgument(finds.get(i - 1)); if (typeId > 0) { - if (dCtx.lookupSequenceType(typeId).getItemType().equals(ElementType.ANYELEMENT) && typeId > 0) { - ds.addChildSeq(typeId); - added = true; - } + ds.addChildSeq(typeId); + added = true; } } return added; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/PushFunctionsOntoEqJoinBranches.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/PushFunctionsOntoEqJoinBranches.java index d713c5930..96b36a504 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/PushFunctionsOntoEqJoinBranches.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/PushFunctionsOntoEqJoinBranches.java @@ -22,22 +22,22 @@ import org.apache.commons.lang3.mutable.MutableObject; import org.apache.vxquery.compiler.rewriter.rules.util.ExpressionToolbox; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalVariable; -import org.apache.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; -import org.apache.hyracks.algebricks.core.algebra.functions.AlgebricksBuiltinFunctions; -import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractBinaryJoinOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.visitors.VariableUtilities; -import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalVariable; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.AlgebricksBuiltinFunctions; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractBinaryJoinOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.visitors.VariableUtilities; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; public class PushFunctionsOntoEqJoinBranches implements IAlgebraicRewriteRule { diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveRedundantBooleanExpressionsRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveRedundantBooleanExpressionsRule.java index ee0032a60..ba129c0db 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveRedundantBooleanExpressionsRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveRedundantBooleanExpressionsRule.java @@ -22,7 +22,7 @@ import org.apache.vxquery.types.Quantifier; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; /** * The rule searches for where the xquery boolean function is used. When the diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveRedundantCastExpressionsRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveRedundantCastExpressionsRule.java index d3e3c1d7a..339feea81 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveRedundantCastExpressionsRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveRedundantCastExpressionsRule.java @@ -19,7 +19,7 @@ import org.apache.vxquery.functions.BuiltinOperators; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; /** * The rule searches for where the xquery cast function is used. When the diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveRedundantDataExpressionsRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveRedundantDataExpressionsRule.java index e7796012d..97f98f581 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveRedundantDataExpressionsRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveRedundantDataExpressionsRule.java @@ -19,7 +19,7 @@ import org.apache.vxquery.functions.BuiltinFunctions; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; /** * The rule searches for where the xquery data function is used. When the diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveRedundantPromoteExpressionsRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveRedundantPromoteExpressionsRule.java index 1ae5b4671..12865e007 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveRedundantPromoteExpressionsRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveRedundantPromoteExpressionsRule.java @@ -16,11 +16,14 @@ */ package org.apache.vxquery.compiler.rewriter.rules; +import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.functions.BuiltinOperators; +import org.apache.vxquery.runtime.functions.cast.CastToDoubleOperation; +import org.apache.vxquery.runtime.functions.cast.CastToFloatOperation; import org.apache.vxquery.types.BuiltinTypeRegistry; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; /** * The rule searches for where the xquery promote function is used. When the @@ -61,16 +64,9 @@ public boolean matchesAllInstancesOf(SequenceType sTypeArg, SequenceType sTypeOu // These types can not be promoted. return true; } - if (sTypeOutput != null) { - if (sTypeOutput.equals(sTypeArg)) { - // Same type and quantifier. - return true; - } - if (sTypeOutput.getItemType().equals(sTypeArg.getItemType()) - && sTypeArg.getQuantifier().isSubQuantifier(sTypeOutput.getQuantifier())) { - // Same type and stronger quantifier. - return true; - } + if (sTypeOutput != null && sTypeOutput.equals(sTypeArg)) { + // Same type. + return true; } } return false; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveRedundantTreatExpressionsRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveRedundantTreatExpressionsRule.java index b7c5fea12..60058bc14 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveRedundantTreatExpressionsRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveRedundantTreatExpressionsRule.java @@ -20,7 +20,7 @@ import org.apache.vxquery.runtime.functions.type.SequenceTypeMatcher; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; /** * The rule searches for where the xquery treat function is used. When the diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveUnusedSortDistinctNodesRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveUnusedSortDistinctNodesRule.java index 69940addf..43e260381 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveUnusedSortDistinctNodesRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveUnusedSortDistinctNodesRule.java @@ -30,64 +30,64 @@ import org.apache.vxquery.functions.BuiltinOperators; import org.apache.vxquery.functions.Function; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; -import org.apache.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AggregateOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.NestedTupleSourceOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.OrderOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.SubplanOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; -import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AggregateOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.NestedTupleSourceOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.OrderOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.SubplanOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; /** * The rule searches for where the xquery sort distinct function is used and * determines if the sort and distinct is necessary. The plan is modified if * any of these items is not required. - * + * *
  * Before
- *
+ * 
  *   plan__parent
  *   ASSIGN( $v1 : sort_distinct_nodes_asc_or_atomics( $v0 ) )
  *   plan__child
- *
+ *   
  *   Where $v0 is a variable defined in plan__child.
- *
- * After
- *
- *   if ( $v0 is unique nodes && $v0 is in document order )
- *
+ *   
+ * After 
+ * 
+ *   if ( $v0 is unique nodes && $v0 is in document order )
+ *     
  *     plan__parent
  *     ASSIGN( $v1 : $v0 )
  *     plan__child
- *
- *   if ( $v0 is NOT unique nodes && $v0 is in document order )
- *
+ *     
+ *   if ( $v0 is NOT unique nodes && $v0 is in document order )
+ *   
  *     plan__parent
  *     ASSIGN( $v1 : distinct_nodes_or_atomics( $v0 ) )
  *     plan__child
- *
- *   if ( $v0 is unique nodes && $v0 is NOT in document order )
- *
+ *     
+ *   if ( $v0 is unique nodes && $v0 is NOT in document order )
+ *   
  *     plan__parent
  *     ASSIGN( $v1 : sort_nodes_asc( $v0 ) )
  *     plan__child
- *
- *   if ( $v0 is NOT unique nodes && $v0 is NOT in document order )
- *
+ *     
+ *   if ( $v0 is NOT unique nodes && $v0 is NOT in document order )
+ *   
  *     plan__parent
  *     ASSIGN( $v1 : sort_distinct_nodes_asc_or_atomics( $v0 ) )
  *     plan__child
  * 
- * + * * @author prestonc */ @@ -123,7 +123,7 @@ public boolean rewritePost(Mutable opRef, IOptimizationContext int variableId = getOperatorSortDistinctNodesAscOrAtomicsArgumentVariableId(opRef); if (variableId > 0) { // Find the function expression. - // All the checks for these variable assigns and casting were done in the + // All the checks for these variable assigns and casting were done in the // getOperatorSortDistinctNodesAscOrAtomicsArgumentVariableId function. AssignOperator assign = (AssignOperator) op; ILogicalExpression logicalExpression = (ILogicalExpression) assign.getExpressions().get(0).getValue(); @@ -194,7 +194,7 @@ private int getOperatorSortDistinctNodesAscOrAtomicsArgumentVariableId(Mutable getProducerDocumentOrderVariableMap(ILog /** * Get the UniqueNodes variable map of the parent operator. - * + * * @param op * @param vxqueryContext - * @return Hash map of variables to unique nodes. + * @return */ private HashMap getProducerUniqueNodesVariableMap(ILogicalOperator op, VXQueryOptimizationContext vxqueryContext) { @@ -297,7 +297,7 @@ private UniqueNodes propagateUniqueNodes(ILogicalExpression expr, HashMap documen /** * Sets all the variables to UniqueNodes. - * + * * @param uniqueNodesVariables * @param uniqueNodes */ diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveUnusedTreatRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveUnusedTreatRule.java new file mode 100644 index 000000000..4b14c50ce --- /dev/null +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/RemoveUnusedTreatRule.java @@ -0,0 +1,147 @@ +/* + * 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. + */ +package org.apache.vxquery.compiler.rewriter.rules; + +import org.apache.commons.lang3.mutable.Mutable; +import org.apache.vxquery.compiler.algebricks.VXQueryConstantValue; +import org.apache.vxquery.context.RootStaticContextImpl; +import org.apache.vxquery.context.StaticContextImpl; +import org.apache.vxquery.datamodel.accessors.TaggedValuePointable; +import org.apache.vxquery.functions.BuiltinOperators; +import org.apache.vxquery.runtime.functions.type.SequenceTypeMatcher; +import org.apache.vxquery.types.SequenceType; + +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.ConstantExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; + +/** + * The rule searches for where the xquery treat function is used and + * determines if the treat is necessary. The plan is modified if + * any of these items is not required. + * + *
+ * Before
+ * 
+ *   plan__parent
+ *   ASSIGN( $v1 : treat( $v0, \@type_expression ) )
+ *   ASSIGN( $v0 : $$constant )
+ *   plan__child
+ *   
+ *   Where $$constant is of \@type_expression.
+ *   
+ * After 
+ * 
+ *   plan__parent
+ *   ASSIGN( $v1 : $v0 )
+ *   ASSIGN( $v0 : $$constant )
+ *   plan__child
+ * 
+ * + * @author prestonc + */ +// TODO Replace with constant folding rule. +public class RemoveUnusedTreatRule implements IAlgebraicRewriteRule { + final StaticContextImpl dCtx = new StaticContextImpl(RootStaticContextImpl.INSTANCE); + + @Override + public boolean rewritePre(Mutable opRef, IOptimizationContext context) throws AlgebricksException { + return false; + } + + @Override + public boolean rewritePost(Mutable opRef, IOptimizationContext context) { + boolean operatorChanged = false; + // Check if assign is for treat. + AbstractLogicalOperator op = (AbstractLogicalOperator) opRef.getValue(); + if (op.getOperatorTag() != LogicalOperatorTag.ASSIGN) { + return false; + } + AssignOperator assignTreat = (AssignOperator) op; + + // Check to see if the expression is a function and treat. + ILogicalExpression logicalExpression11 = (ILogicalExpression) assignTreat.getExpressions().get(0).getValue(); + if (logicalExpression11.getExpressionTag() != LogicalExpressionTag.FUNCTION_CALL) { + return false; + } + AbstractFunctionCallExpression functionTreat = (AbstractFunctionCallExpression) logicalExpression11; + if (!functionTreat.getFunctionIdentifier().equals(BuiltinOperators.TREAT.getFunctionIdentifier())) { + return false; + } + + // Find the variable id used as the parameter. + ILogicalExpression treatArg1 = (ILogicalExpression) functionTreat.getArguments().get(0).getValue(); + if (treatArg1.getExpressionTag() != LogicalExpressionTag.VARIABLE) { + return false; + } + VariableReferenceExpression variableExpression = (VariableReferenceExpression) treatArg1; + int variableId = variableExpression.getVariableReference().getId(); + + // Get type to check against constant. + ILogicalExpression treatArg2 = (ILogicalExpression) functionTreat.getArguments().get(1).getValue(); + if (treatArg2.getExpressionTag() != LogicalExpressionTag.CONSTANT) { + return false; + } + TaggedValuePointable tvp = (TaggedValuePointable) TaggedValuePointable.FACTORY.createPointable(); + getConstantAsPointable((ConstantExpression) treatArg2, tvp); + + IntegerPointable pTypeCode = (IntegerPointable) IntegerPointable.FACTORY.createPointable(); + tvp.getValue(pTypeCode); + SequenceType sType = dCtx.lookupSequenceType(pTypeCode.getInteger()); + + AbstractLogicalOperator op2 = (AbstractLogicalOperator) assignTreat.getInputs().get(0).getValue(); + if (op2.getOperatorTag() != LogicalOperatorTag.ASSIGN) { + return false; + } + AssignOperator assignConstant = (AssignOperator) op2; + + if (variableId == assignConstant.getVariables().get(0).getId()) { + ILogicalExpression expressionConstant = (ILogicalExpression) assignConstant.getExpressions().get(0) + .getValue(); + if (expressionConstant.getExpressionTag() == LogicalExpressionTag.CONSTANT) { + // Check constant against type supplied. + TaggedValuePointable tvp2 = (TaggedValuePointable) TaggedValuePointable.FACTORY.createPointable(); + getConstantAsPointable((ConstantExpression) expressionConstant, tvp2); + + SequenceTypeMatcher stm = new SequenceTypeMatcher(); + stm.setSequenceType(sType); + + if (stm.sequenceTypeMatch(tvp2)) { + assignTreat.getExpressions().get(0).setValue(treatArg1); + operatorChanged = true; + } + } + } + + return operatorChanged; + } + + private void getConstantAsPointable(ConstantExpression typeExpression, TaggedValuePointable tvp) { + VXQueryConstantValue treatTypeConstant = (VXQueryConstantValue) typeExpression.getValue(); + tvp.set(treatTypeConstant.getValue(), 0, treatTypeConstant.getValue().length); + } +} diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/SetCollectionDataSourceRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/SetCollectionDataSourceRule.java index f4ebde7b7..496a99cf0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/SetCollectionDataSourceRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/SetCollectionDataSourceRule.java @@ -19,22 +19,17 @@ import org.apache.commons.lang3.mutable.Mutable; import org.apache.vxquery.compiler.rewriter.VXQueryOptimizationContext; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; /** * Find the collection functions and generate the data source objects. - * - *
- * Search pattern:
- *   unnest <- assign [function-call: collection] <- assign [constant: string]
- * 
+ * Search pattern: unnest <- assign [function-call: collection] <- assign [constant: string] */ public class SetCollectionDataSourceRule extends AbstractCollectionRule { @Override - public boolean rewritePre(Mutable opRef, IOptimizationContext context) - throws AlgebricksException { + public boolean rewritePre(Mutable opRef, IOptimizationContext context) throws AlgebricksException { if (context.checkIfInDontApplySet(this, opRef.getValue())) { return false; } diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/SetVariableIdContextRule.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/SetVariableIdContextRule.java index 82be94ce9..b810e39ce 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/SetVariableIdContextRule.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/SetVariableIdContextRule.java @@ -18,13 +18,13 @@ import org.apache.commons.lang3.mutable.Mutable; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractAssignOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; -import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractAssignOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; /** * Set the default context for the variable id in the optimization context. diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/ConstantPropertyPropagationPolicy.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/ConstantPropertyPropagationPolicy.java index 3b5266d22..fdf555fdc 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/ConstantPropertyPropagationPolicy.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/ConstantPropertyPropagationPolicy.java @@ -34,4 +34,4 @@ public P propagate(List

argProperties) { return property; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/IPropertyPropagationPolicy.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/IPropertyPropagationPolicy.java index 4d37b3b96..ee17378f8 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/IPropertyPropagationPolicy.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/IPropertyPropagationPolicy.java @@ -22,4 +22,4 @@ public interface IPropertyPropagationPolicy

{ public P propagate(List

argProperties); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/InputPropertyPropagationPolicy.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/InputPropertyPropagationPolicy.java index 4f0780af6..5f4a382e1 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/InputPropertyPropagationPolicy.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/InputPropertyPropagationPolicy.java @@ -34,4 +34,4 @@ public P propagate(List

argProperties) { return argProperties.get(inputIndex); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/cardinality/Cardinality.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/cardinality/Cardinality.java index c4288ac88..d906f0d97 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/cardinality/Cardinality.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/cardinality/Cardinality.java @@ -21,4 +21,4 @@ public enum Cardinality { ONE, MANY; -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/documentorder/DocumentOrder.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/documentorder/DocumentOrder.java index c01d5e636..b142014ef 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/documentorder/DocumentOrder.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/documentorder/DocumentOrder.java @@ -21,4 +21,4 @@ public enum DocumentOrder { YES, NO; -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/documentorder/DocumentOrderNOPropagationPolicy.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/documentorder/DocumentOrderNOPropagationPolicy.java index a09b74125..572e3dc47 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/documentorder/DocumentOrderNOPropagationPolicy.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/documentorder/DocumentOrderNOPropagationPolicy.java @@ -24,4 +24,4 @@ public DocumentOrderNOPropagationPolicy() { super(DocumentOrder.NO); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/documentorder/DocumentOrderYESPropagationPolicy.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/documentorder/DocumentOrderYESPropagationPolicy.java index 9641de6f8..c72a73632 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/documentorder/DocumentOrderYESPropagationPolicy.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/documentorder/DocumentOrderYESPropagationPolicy.java @@ -24,4 +24,4 @@ public DocumentOrderYESPropagationPolicy() { super(DocumentOrder.YES); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/uniquenodes/UniqueNodes.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/uniquenodes/UniqueNodes.java index a0ea383a2..fca5864dc 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/uniquenodes/UniqueNodes.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/uniquenodes/UniqueNodes.java @@ -21,4 +21,4 @@ public enum UniqueNodes { YES, NO; -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/uniquenodes/UniqueNodesNOPropagationPolicy.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/uniquenodes/UniqueNodesNOPropagationPolicy.java index a5b8ac1b3..85d98560c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/uniquenodes/UniqueNodesNOPropagationPolicy.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/uniquenodes/UniqueNodesNOPropagationPolicy.java @@ -24,4 +24,4 @@ public UniqueNodesNOPropagationPolicy() { super(UniqueNodes.NO); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/uniquenodes/UniqueNodesYESPropagationPolicy.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/uniquenodes/UniqueNodesYESPropagationPolicy.java index f21a5cc05..4c4b7b94e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/uniquenodes/UniqueNodesYESPropagationPolicy.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/propagationpolicies/uniquenodes/UniqueNodesYESPropagationPolicy.java @@ -24,4 +24,4 @@ public UniqueNodesYESPropagationPolicy() { super(UniqueNodes.YES); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/util/CardinalityRuleToolbox.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/util/CardinalityRuleToolbox.java index fe182041a..5b4594ec1 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/util/CardinalityRuleToolbox.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/util/CardinalityRuleToolbox.java @@ -19,20 +19,18 @@ import org.apache.vxquery.compiler.rewriter.VXQueryOptimizationContext; import org.apache.vxquery.compiler.rewriter.rules.propagationpolicies.cardinality.Cardinality; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractOperatorWithNestedPlans; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.NestedTupleSourceOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractOperatorWithNestedPlans; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.NestedTupleSourceOperator; public class CardinalityRuleToolbox { /** * Get the Cardinality variable of the parent operator. - * + * * @param op - * Logical operator * @param vxqueryContext - * VXQuery context - * @return Cardinality of the producer. + * @return */ public static Cardinality getProducerCardinality(ILogicalOperator op, VXQueryOptimizationContext vxqueryContext) { AbstractLogicalOperator producerOp = (AbstractLogicalOperator) op.getInputs().get(0).getValue(); @@ -57,8 +55,8 @@ public static Cardinality updateCardinalityVariable(AbstractLogicalOperator op, case SUBPLAN: // Find the last operator to set a variable and call this function again. AbstractOperatorWithNestedPlans operatorWithNestedPlan = (AbstractOperatorWithNestedPlans) op; - AbstractLogicalOperator lastOperator = (AbstractLogicalOperator) operatorWithNestedPlan.getNestedPlans() - .get(0).getRoots().get(0).getValue(); + AbstractLogicalOperator lastOperator = (AbstractLogicalOperator) operatorWithNestedPlan + .getNestedPlans().get(0).getRoots().get(0).getValue(); cardinalityVariable = vxqueryContext.getCardinalityOperatorMap(lastOperator); break; case DATASOURCESCAN: @@ -84,8 +82,8 @@ public static Cardinality updateCardinalityVariable(AbstractLogicalOperator op, // The following operators' analysis has not yet been implemented. default: - throw new RuntimeException( - "Operator (" + op.getOperatorTag() + ") has not been implemented in rewrite rule."); + throw new RuntimeException("Operator (" + op.getOperatorTag() + + ") has not been implemented in rewrite rule."); } return cardinalityVariable; } diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/util/ExpressionToolbox.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/util/ExpressionToolbox.java index 0dd3b314e..34efdd87f 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/util/ExpressionToolbox.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/util/ExpressionToolbox.java @@ -29,18 +29,17 @@ import org.apache.vxquery.types.Quantifier; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalVariable; -import org.apache.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.ConstantExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; -import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractAssignOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; -import org.apache.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalVariable; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.ConstantExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; public class ExpressionToolbox { public static Mutable findVariableExpression(Mutable mutableLe, @@ -130,34 +129,7 @@ public static Mutable findFirstFunctionExpression(Mutable mutableLe, - List> finds) { - ILogicalExpression le = mutableLe.getValue(); - if (le.getExpressionTag() == LogicalExpressionTag.FUNCTION_CALL) { - AbstractFunctionCallExpression afce = (AbstractFunctionCallExpression) le; - finds.add(mutableLe); - for (Mutable argExp : afce.getArguments()) { - findAllFunctionExpressions(argExp, finds); - } - } - } - - /** - * Finds all functions for a given expression and function identifier. - * - * @param mutableLe - * Search logical expression - * @param fi - * Function indentifier - * @param finds - * Logical expressions found + * Find all functions for a specific expression. */ public static void findAllFunctionExpressions(Mutable mutableLe, FunctionIdentifier fi, List> finds) { @@ -249,16 +221,6 @@ public static SequenceType getOutputSequenceType(Mutable opRef } AbstractLogicalOperator variableOp = (AbstractLogicalOperator) variableProducer.getValue(); switch (variableOp.getOperatorTag()) { - case ASSIGN: - case AGGREGATE: - case RUNNINGAGGREGATE: - AbstractAssignOperator assign = (AbstractAssignOperator) variableOp; - for (int i = 0; i < assign.getVariables().size(); ++i) { - if (variableId.equals(assign.getVariables().get(i))) { - return getOutputSequenceType(variableProducer, assign.getExpressions().get(i), dCtx); - } - } - return null; case DATASOURCESCAN: return SequenceType.create(AnyNodeType.INSTANCE, Quantifier.QUANT_ONE); case UNNEST: @@ -272,17 +234,4 @@ public static SequenceType getOutputSequenceType(Mutable opRef } return null; } - - public static boolean isFunctionExpression(Mutable mutableLe, - AbstractFunctionCallExpression afce) { - ILogicalExpression le = mutableLe.getValue(); - if (le.getExpressionTag() != LogicalExpressionTag.FUNCTION_CALL) { - return false; - } - AbstractFunctionCallExpression fc = (AbstractFunctionCallExpression) le; - if (!fc.getFunctionIdentifier().equals(afce)) { - return false; - } - return true; - } } diff --git a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/util/OperatorToolbox.java b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/util/OperatorToolbox.java index 2c57c328d..725a08272 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/util/OperatorToolbox.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/compiler/rewriter/rules/util/OperatorToolbox.java @@ -21,17 +21,16 @@ import org.apache.commons.lang3.mutable.Mutable; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalVariable; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractAssignOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractBinaryJoinOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractScanOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AbstractUnnestOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.NestedTupleSourceOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.SelectOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalVariable; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractAssignOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractBinaryJoinOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractLogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractScanOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AbstractUnnestOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.SelectOperator; public class OperatorToolbox { @@ -145,10 +144,8 @@ public static Mutable findProducerOf(Mutable } } break; - case NESTEDTUPLESOURCE: - NestedTupleSourceOperator nts = (NestedTupleSourceOperator) op; - return findProducerOf(nts.getDataSourceReference(), lv); case EMPTYTUPLESOURCE: + case NESTEDTUPLESOURCE: return null; default: // Skip operators and go look at input. diff --git a/vxquery-core/src/main/java/org/apache/vxquery/context/DefaultDocumentURIResolverImpl.java b/vxquery-core/src/main/java/org/apache/vxquery/context/DefaultDocumentURIResolverImpl.java index 3d763d57c..84bde33b1 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/context/DefaultDocumentURIResolverImpl.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/context/DefaultDocumentURIResolverImpl.java @@ -33,4 +33,4 @@ public InputStream resolveDocumentURI(String href, String base) throws IOExcepti if (! file.isAbsolute()) file = new File(base + "/" + href); return new FileInputStream(file); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/context/DelegatingStaticContextImpl.java b/vxquery-core/src/main/java/org/apache/vxquery/context/DelegatingStaticContextImpl.java index bffcd2560..dec7d81b9 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/context/DelegatingStaticContextImpl.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/context/DelegatingStaticContextImpl.java @@ -295,4 +295,4 @@ public void setOption(QName name, String value) { public void setOrderingModeProperty(OrderingModeProperty orderingMode) { parent.setOrderingModeProperty(orderingMode); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/context/DocumentURIResolver.java b/vxquery-core/src/main/java/org/apache/vxquery/context/DocumentURIResolver.java index 5df5a8642..de680161d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/context/DocumentURIResolver.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/context/DocumentURIResolver.java @@ -21,4 +21,4 @@ public interface DocumentURIResolver { public InputStream resolveDocumentURI(String base, String href) throws IOException; -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/context/DynamicContext.java b/vxquery-core/src/main/java/org/apache/vxquery/context/DynamicContext.java index 2b3ec8a00..da85b3338 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/context/DynamicContext.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/context/DynamicContext.java @@ -18,8 +18,8 @@ import javax.xml.namespace.QName; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.api.IValueReference; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.api.IValueReference; public interface DynamicContext { public IDynamicContextFactory createFactory(); @@ -33,4 +33,4 @@ public interface DynamicContext { public void bindVariable(QName var, IValueReference vReference); public void lookupVariable(QName var, IPointable value); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/context/DynamicContextImpl.java b/vxquery-core/src/main/java/org/apache/vxquery/context/DynamicContextImpl.java index 6a2a93059..9f5964442 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/context/DynamicContextImpl.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/context/DynamicContextImpl.java @@ -21,9 +21,9 @@ import javax.xml.namespace.QName; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.api.IValueReference; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.api.IValueReference; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class DynamicContextImpl implements DynamicContext { private StaticContext sCtx; @@ -82,4 +82,4 @@ public void lookupVariable(QName var, IPointable value) { Map getVariableMap() { return variables; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/context/DynamicContextImplFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/context/DynamicContextImplFactory.java index a30c5adaa..a8fd821ff 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/context/DynamicContextImplFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/context/DynamicContextImplFactory.java @@ -23,9 +23,9 @@ import org.apache.vxquery.datamodel.accessors.atomic.XSDateTimePointable; -import org.apache.hyracks.api.context.IHyracksJobletContext; -import org.apache.hyracks.data.std.primitive.VoidPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.api.context.IHyracksJobletContext; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; class DynamicContextImplFactory implements IDynamicContextFactory { private static final long serialVersionUID = 1L; @@ -91,4 +91,4 @@ static IDynamicContextFactory createInstance(DynamicContextImpl dCtx) { return new DynamicContextImplFactory(scFactory, currentDateTime, variableNames, valueOffsets, Arrays.copyOfRange(abvs.getByteArray(), abvs.getStartOffset(), abvs.getLength())); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/context/IDynamicContextFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/context/IDynamicContextFactory.java index 2e8a7b36c..c004357a7 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/context/IDynamicContextFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/context/IDynamicContextFactory.java @@ -18,8 +18,8 @@ import java.io.Serializable; -import org.apache.hyracks.api.context.IHyracksJobletContext; +import edu.uci.ics.hyracks.api.context.IHyracksJobletContext; public interface IDynamicContextFactory extends Serializable { public DynamicContext createDynamicContext(IHyracksJobletContext ctx); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/context/IStaticContextFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/context/IStaticContextFactory.java index c74ddd72a..bf46935dc 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/context/IStaticContextFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/context/IStaticContextFactory.java @@ -20,4 +20,4 @@ public interface IStaticContextFactory extends Serializable { public StaticContext createStaticContext(); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/context/ModuleURIResolver.java b/vxquery-core/src/main/java/org/apache/vxquery/context/ModuleURIResolver.java index 20ca42a2e..9b5d92773 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/context/ModuleURIResolver.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/context/ModuleURIResolver.java @@ -20,4 +20,4 @@ public interface ModuleURIResolver { public InputStream[] resolve(String moduleUri, String baseUri, String[] locationHints); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/context/RootStaticContextFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/context/RootStaticContextFactory.java index b766f05a5..48ddbcf0e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/context/RootStaticContextFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/context/RootStaticContextFactory.java @@ -28,4 +28,4 @@ private RootStaticContextFactory() { public StaticContext createStaticContext() { return RootStaticContextImpl.INSTANCE; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/context/RootStaticContextImpl.java b/vxquery-core/src/main/java/org/apache/vxquery/context/RootStaticContextImpl.java index cd80824f5..a219dab4e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/context/RootStaticContextImpl.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/context/RootStaticContextImpl.java @@ -218,4 +218,4 @@ public void setOrderingModeProperty(OrderingModeProperty orderingMode) { public IStaticContextFactory createFactory() { return RootStaticContextFactory.INSTANCE; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/context/StaticContext.java b/vxquery-core/src/main/java/org/apache/vxquery/context/StaticContext.java index 815cf78a3..31693ee8e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/context/StaticContext.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/context/StaticContext.java @@ -162,4 +162,4 @@ public enum CopyNamespacesModeProperty { } public IStaticContextFactory createFactory(); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/context/StaticContextImpl.java b/vxquery-core/src/main/java/org/apache/vxquery/context/StaticContextImpl.java index c3aeda9e7..d24459528 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/context/StaticContextImpl.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/context/StaticContextImpl.java @@ -379,7 +379,10 @@ public int encodeSequenceType(SequenceType type) { sequenceTypeList.add(type); return code; } - return code; + if (sequenceTypeMap.containsKey(type)) { + return sequenceTypeMap.get(type); + } + return -1; } List getSequenceTypeList() { @@ -654,4 +657,4 @@ private void fetchNext() { } } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/context/StaticContextImplFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/context/StaticContextImplFactory.java index 12d3c3356..879c84d90 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/context/StaticContextImplFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/context/StaticContextImplFactory.java @@ -47,4 +47,4 @@ static IStaticContextFactory createInstance(StaticContextImpl staticContextImpl) return new StaticContextImplFactory(parentSCFactory, new ArrayList( staticContextImpl.getSequenceTypeList())); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/context/ThinStaticContextImpl.java b/vxquery-core/src/main/java/org/apache/vxquery/context/ThinStaticContextImpl.java index 5873fcbb1..ea87dda5b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/context/ThinStaticContextImpl.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/context/ThinStaticContextImpl.java @@ -47,4 +47,4 @@ public void registerNamespaceUri(String prefix, String uri) { public IStaticContextFactory createFactory() { return ThinStaticContextImplFactory.createInstance(this); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/context/ThinStaticContextImplFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/context/ThinStaticContextImplFactory.java index b0fe514a5..079f4af70 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/context/ThinStaticContextImplFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/context/ThinStaticContextImplFactory.java @@ -34,4 +34,4 @@ static IStaticContextFactory createInstance(ThinStaticContextImpl staticContextI IStaticContextFactory delegateSCFactory = staticContextImpl.getParent().createFactory(); return new ThinStaticContextImplFactory(delegateSCFactory); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/context/XQueryVariable.java b/vxquery-core/src/main/java/org/apache/vxquery/context/XQueryVariable.java index 15c7fc5fd..cdd79b21a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/context/XQueryVariable.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/context/XQueryVariable.java @@ -20,7 +20,7 @@ import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalVariable; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalVariable; public class XQueryVariable { private final QName name; @@ -46,4 +46,4 @@ public SequenceType getType() { public LogicalVariable getLogicalVariable() { return var; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/PointableCache.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/PointableCache.java index adbe097df..c362e7d04 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/PointableCache.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/PointableCache.java @@ -19,7 +19,7 @@ import java.util.ArrayList; import java.util.List; -import org.apache.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.api.IPointable; public class PointableCache { private final List list; @@ -38,4 +38,4 @@ public T takeOne() { public void giveBack(T pointable) { list.add(pointable); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/PointablePool.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/PointablePool.java index 1a8578189..4eccf33a7 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/PointablePool.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/PointablePool.java @@ -19,8 +19,8 @@ import java.util.HashMap; import java.util.Map; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.api.IPointableFactory; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.api.IPointableFactory; public class PointablePool { private final Map, IPointableFactory> pfMap; @@ -53,4 +53,4 @@ public void giveBack(T pointable) { PointableCache pc = (PointableCache) pcMap.get(pointable.getClass()); pc.giveBack(pointable); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/PointablePoolFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/PointablePoolFactory.java index 9ec9babb9..7a5b6e854 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/PointablePoolFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/PointablePoolFactory.java @@ -31,15 +31,15 @@ import org.apache.vxquery.datamodel.accessors.nodes.PINodePointable; import org.apache.vxquery.datamodel.accessors.nodes.TextOrCommentNodePointable; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; public class PointablePoolFactory { public static final PointablePoolFactory INSTANCE = new PointablePoolFactory(); @@ -79,4 +79,4 @@ public PointablePool createPointablePool() { return pp; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/SequencePointable.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/SequencePointable.java index 0aa66f786..1c81b48a5 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/SequencePointable.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/SequencePointable.java @@ -16,12 +16,12 @@ */ package org.apache.vxquery.datamodel.accessors; -import org.apache.hyracks.api.dataflow.value.ITypeTraits; -import org.apache.hyracks.data.std.api.AbstractPointable; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.api.IPointableFactory; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.api.dataflow.value.ITypeTraits; +import edu.uci.ics.hyracks.data.std.api.AbstractPointable; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.api.IPointableFactory; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; public class SequencePointable extends AbstractPointable { private static final int ENTRY_COUNT_SIZE = 4; @@ -77,4 +77,4 @@ private static int getSlotArrayOffset(int start) { private static int getDataAreaOffset(byte[] bytes, int start) { return getSlotArrayOffset(start) + getEntryCount(bytes, start) * SLOT_SIZE; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/TaggedValuePointable.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/TaggedValuePointable.java index ac4049173..5760fc184 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/TaggedValuePointable.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/TaggedValuePointable.java @@ -16,12 +16,12 @@ */ package org.apache.vxquery.datamodel.accessors; -import org.apache.hyracks.api.dataflow.value.ITypeTraits; -import org.apache.hyracks.data.std.api.AbstractPointable; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.api.IPointableFactory; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.api.dataflow.value.ITypeTraits; +import edu.uci.ics.hyracks.data.std.api.AbstractPointable; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.api.IPointableFactory; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; public class TaggedValuePointable extends AbstractPointable { public static final IPointableFactory FACTORY = new IPointableFactory() { @@ -45,4 +45,4 @@ public byte getTag() { public void getValue(IPointable value) { value.set(bytes, start + 1, length - 1); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/TypedPointables.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/TypedPointables.java index 32eed347e..d303dfee8 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/TypedPointables.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/TypedPointables.java @@ -30,14 +30,14 @@ import org.apache.vxquery.datamodel.accessors.nodes.PINodePointable; import org.apache.vxquery.datamodel.accessors.nodes.TextOrCommentNodePointable; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; /** * One pointable for each type. diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/CodedQNamePointable.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/CodedQNamePointable.java index 7c3d390ee..83a3d3b65 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/CodedQNamePointable.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/CodedQNamePointable.java @@ -16,11 +16,11 @@ */ package org.apache.vxquery.datamodel.accessors.atomic; -import org.apache.hyracks.api.dataflow.value.ITypeTraits; -import org.apache.hyracks.data.std.api.AbstractPointable; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.api.IPointableFactory; -import org.apache.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.api.dataflow.value.ITypeTraits; +import edu.uci.ics.hyracks.data.std.api.AbstractPointable; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.api.IPointableFactory; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; public class CodedQNamePointable extends AbstractPointable { public static final int SIZE = 12; @@ -68,4 +68,4 @@ public int getNamespaceCode() { public int getLocalCode() { return IntegerPointable.getInteger(bytes, start + OFF_LOCAL); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSBinaryPointable.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSBinaryPointable.java index 36af614a4..ccd99365a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSBinaryPointable.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSBinaryPointable.java @@ -16,10 +16,10 @@ */ package org.apache.vxquery.datamodel.accessors.atomic; -import org.apache.hyracks.api.dataflow.value.ITypeTraits; -import org.apache.hyracks.data.std.api.AbstractPointable; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.api.IPointableFactory; +import edu.uci.ics.hyracks.api.dataflow.value.ITypeTraits; +import edu.uci.ics.hyracks.data.std.api.AbstractPointable; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.api.IPointableFactory; public class XSBinaryPointable extends AbstractPointable { public static final ITypeTraits TYPE_TRAITS = new ITypeTraits() { diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDatePointable.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDatePointable.java index d7289276c..e7aaf8ae8 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDatePointable.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDatePointable.java @@ -19,12 +19,12 @@ import org.apache.vxquery.datamodel.api.IDate; import org.apache.vxquery.datamodel.api.ITimezone; -import org.apache.hyracks.api.dataflow.value.ITypeTraits; -import org.apache.hyracks.data.std.api.AbstractPointable; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.api.IPointableFactory; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.api.dataflow.value.ITypeTraits; +import edu.uci.ics.hyracks.data.std.api.AbstractPointable; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.api.IPointableFactory; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; /** * The date is split up into five sections. Due to leap year, we have decided to keep the @@ -156,4 +156,4 @@ public static long getDayTime(byte[] bytes, int start) { return getDay(bytes, start) * CHRONON_OF_DAY; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDateTimePointable.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDateTimePointable.java index 5691d73f2..a40dc0109 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDateTimePointable.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDateTimePointable.java @@ -24,13 +24,13 @@ import org.apache.vxquery.datamodel.api.ITimezone; import org.apache.vxquery.datamodel.util.DateTime; -import org.apache.hyracks.api.dataflow.value.ITypeTraits; -import org.apache.hyracks.data.std.api.AbstractPointable; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.api.IPointableFactory; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.api.dataflow.value.ITypeTraits; +import edu.uci.ics.hyracks.data.std.api.AbstractPointable; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.api.IPointableFactory; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; /** * The datetime is split up into eight sections. Due to leap year, we have decided to keep the @@ -245,4 +245,4 @@ && getTimezoneMinute(bytes, start) != DateTime.TIMEZONE_MINUTE_NULL ? (getTimezo + getTimezoneHour(bytes, start) + ":" + getTimezoneMinute(bytes, start) : ""); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDecimalPointable.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDecimalPointable.java index 1559b0622..f60d9bdc4 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDecimalPointable.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDecimalPointable.java @@ -16,15 +16,15 @@ */ package org.apache.vxquery.datamodel.accessors.atomic; -import org.apache.hyracks.api.dataflow.value.ITypeTraits; -import org.apache.hyracks.data.std.api.AbstractPointable; -import org.apache.hyracks.data.std.api.IComparable; -import org.apache.hyracks.data.std.api.IHashable; -import org.apache.hyracks.data.std.api.INumeric; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.api.IPointableFactory; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.api.dataflow.value.ITypeTraits; +import edu.uci.ics.hyracks.data.std.api.AbstractPointable; +import edu.uci.ics.hyracks.data.std.api.IComparable; +import edu.uci.ics.hyracks.data.std.api.IHashable; +import edu.uci.ics.hyracks.data.std.api.INumeric; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.api.IPointableFactory; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; public class XSDecimalPointable extends AbstractPointable implements IHashable, IComparable, INumeric { private final static int DECIMAL_PLACE_OFFSET = 0; @@ -200,4 +200,4 @@ public double doubleValue() { return ((double) getDecimalValue()) / Math.pow(10, getDecimalPlace()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDurationPointable.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDurationPointable.java index e997349da..0a9bd1f83 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDurationPointable.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSDurationPointable.java @@ -16,12 +16,12 @@ */ package org.apache.vxquery.datamodel.accessors.atomic; -import org.apache.hyracks.api.dataflow.value.ITypeTraits; -import org.apache.hyracks.data.std.api.AbstractPointable; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.api.IPointableFactory; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.api.dataflow.value.ITypeTraits; +import edu.uci.ics.hyracks.data.std.api.AbstractPointable; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.api.IPointableFactory; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; public class XSDurationPointable extends AbstractPointable { private final static int YEAR_MONTH_OFFSET = 0; @@ -86,4 +86,4 @@ public static void setDayTime(byte[] bytes, int start, long value) { public void setDayTime(long value) { setDayTime(bytes, start, value); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSQNamePointable.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSQNamePointable.java index f8e63b6e9..f35c067dd 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSQNamePointable.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSQNamePointable.java @@ -16,11 +16,11 @@ */ package org.apache.vxquery.datamodel.accessors.atomic; -import org.apache.hyracks.api.dataflow.value.ITypeTraits; -import org.apache.hyracks.data.std.api.AbstractPointable; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.api.IPointableFactory; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.api.dataflow.value.ITypeTraits; +import edu.uci.ics.hyracks.data.std.api.AbstractPointable; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.api.IPointableFactory; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; /** * The XSQNamePointable holds three strings: URI, Prefix and Local Name. diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSTimePointable.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSTimePointable.java index 62eedde55..2919bc0e0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSTimePointable.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/atomic/XSTimePointable.java @@ -19,12 +19,12 @@ import org.apache.vxquery.datamodel.api.ITime; import org.apache.vxquery.datamodel.api.ITimezone; -import org.apache.hyracks.api.dataflow.value.ITypeTraits; -import org.apache.hyracks.data.std.api.AbstractPointable; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.api.IPointableFactory; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.api.dataflow.value.ITypeTraits; +import edu.uci.ics.hyracks.data.std.api.AbstractPointable; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.api.IPointableFactory; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; /** * The time is split up into five sections. Due to leap year, we have decided to keep the @@ -153,4 +153,4 @@ public static long getYearMonth(byte[] bytes, int start) { return 0; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/AttributeNodePointable.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/AttributeNodePointable.java index fd4cfc6b2..22d651e8d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/AttributeNodePointable.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/AttributeNodePointable.java @@ -18,10 +18,12 @@ import org.apache.vxquery.datamodel.accessors.atomic.CodedQNamePointable; -import org.apache.hyracks.api.dataflow.value.ITypeTraits; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.api.IPointableFactory; -import org.apache.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.api.dataflow.value.ITypeTraits; +import edu.uci.ics.hyracks.data.std.api.AbstractPointable; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.api.IPointableFactory; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; /* * Attribute { @@ -37,7 +39,7 @@ * Integer LocalCode; * } */ -public class AttributeNodePointable extends AbstractNodePointable { +public class AttributeNodePointable extends AbstractPointable { private static final int LOCAL_NODE_ID_SIZE = 4; public static final IPointableFactory FACTORY = new IPointableFactory() { private static final long serialVersionUID = 1L; @@ -65,7 +67,11 @@ public void getTypeName(NodeTreePointable nodeTree, CodedQNamePointable typeName } } - public void getValue(NodeTreePointable nodeTree, IPointable value) { + public int getLocalNodeId(NodeTreePointable nodeTree) { + return nodeTree.nodeIdExists() ? IntegerPointable.getInteger(bytes, getLocalNodeIdOffset(nodeTree)) : -1; + } + + public void getValue(NodeTreePointable nodeTree, IPointable value) { value.set(bytes, getValueOffset(nodeTree), getValueSize(nodeTree)); } @@ -85,7 +91,7 @@ private int getTypeSize(NodeTreePointable nodeTree) { return nodeTree.typeExists() ? CodedQNamePointable.SIZE : 0; } - protected int getLocalNodeIdOffset(NodeTreePointable nodeTree) { + private int getLocalNodeIdOffset(NodeTreePointable nodeTree) { return getTypeOffset() + getTypeSize(nodeTree); } @@ -100,4 +106,4 @@ private int getValueOffset(NodeTreePointable nodeTree) { private int getValueSize(NodeTreePointable nodeTree) { return length - (getValueOffset(nodeTree) - start); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/DocumentNodePointable.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/DocumentNodePointable.java index 95dc404db..7c201bd09 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/DocumentNodePointable.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/DocumentNodePointable.java @@ -18,10 +18,12 @@ import org.apache.vxquery.datamodel.accessors.SequencePointable; -import org.apache.hyracks.api.dataflow.value.ITypeTraits; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.api.IPointableFactory; -import org.apache.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.api.dataflow.value.ITypeTraits; +import edu.uci.ics.hyracks.data.std.api.AbstractPointable; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.api.IPointableFactory; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; /* * Document { @@ -29,7 +31,7 @@ * Sequence content; * } */ -public class DocumentNodePointable extends AbstractNodePointable { +public class DocumentNodePointable extends AbstractPointable { private static final int LOCAL_NODE_ID_SIZE = 4; public static final IPointableFactory FACTORY = new IPointableFactory() { private static final long serialVersionUID = 1L; @@ -45,11 +47,15 @@ public IPointable createPointable() { } }; + public int getLocalNodeId(NodeTreePointable nodeTree) { + return nodeTree.nodeIdExists() ? IntegerPointable.getInteger(bytes, getLocalNodeIdOffset()) : -1; + } + public void getContent(NodeTreePointable nodeTree, SequencePointable content) { content.set(bytes, getContentOffset(nodeTree), getContentSize(nodeTree)); } - protected int getLocalNodeIdOffset(NodeTreePointable nodeTree) { + private int getLocalNodeIdOffset() { return start; } @@ -58,10 +64,10 @@ private int getLocalNodeIdSize(NodeTreePointable nodeTree) { } private int getContentOffset(NodeTreePointable nodeTree) { - return getLocalNodeIdOffset(nodeTree) + getLocalNodeIdSize(nodeTree); + return getLocalNodeIdOffset() + getLocalNodeIdSize(nodeTree); } private int getContentSize(NodeTreePointable nodeTree) { return length - (getContentOffset(nodeTree) - start); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/ElementNodePointable.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/ElementNodePointable.java index 4367d9126..f2ba29ef0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/ElementNodePointable.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/ElementNodePointable.java @@ -19,12 +19,13 @@ import org.apache.vxquery.datamodel.accessors.SequencePointable; import org.apache.vxquery.datamodel.accessors.atomic.CodedQNamePointable; -import org.apache.hyracks.api.dataflow.value.ITypeTraits; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.api.IPointableFactory; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.api.dataflow.value.ITypeTraits; +import edu.uci.ics.hyracks.data.std.api.AbstractPointable; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.api.IPointableFactory; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; /* * Element { @@ -56,7 +57,7 @@ * NamePtr[2][chunkSizeInBytes / (sizeof(NamePtr) * 2)] namespaces; * } */ -public class ElementNodePointable extends AbstractNodePointable { +public class ElementNodePointable extends AbstractPointable { public static final byte NS_CHUNK_EXISTS_MASK = (0x1 << 0); public static final byte ATTRIBUTES_CHUNK_EXISTS_MASK = (0x1 << 1); public static final byte CHILDREN_CHUNK_EXISTS_MASK = (0x1 << 2); @@ -169,7 +170,7 @@ private int getTypeSize(NodeTreePointable nodeTree) { return nodeTree.typeExists() ? CodedQNamePointable.SIZE : 0; } - protected int getLocalNodeIdOffset(NodeTreePointable nodeTree) { + private int getLocalNodeIdOffset(NodeTreePointable nodeTree) { return getTypeOffset() + getTypeSize(nodeTree); } @@ -201,4 +202,4 @@ private int getChildrenChunkOffset(NodeTreePointable nodeTree) { private int getChildrenChunkSize(NodeTreePointable nodeTree) { return childrenChunkExists() ? SequencePointable.getSequenceLength(bytes, getChildrenChunkOffset(nodeTree)) : 0; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/NodeTreePointable.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/NodeTreePointable.java index db03e284e..4b0697f1f 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/NodeTreePointable.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/NodeTreePointable.java @@ -18,16 +18,16 @@ import org.apache.vxquery.datamodel.accessors.TaggedValuePointable; -import org.apache.hyracks.api.dataflow.value.ITypeTraits; -import org.apache.hyracks.data.std.algorithms.BinarySearchAlgorithm; -import org.apache.hyracks.data.std.api.AbstractPointable; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.api.IPointableFactory; -import org.apache.hyracks.data.std.collections.api.IValueReferenceVector; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.api.dataflow.value.ITypeTraits; +import edu.uci.ics.hyracks.data.std.algorithms.BinarySearchAlgorithm; +import edu.uci.ics.hyracks.data.std.api.AbstractPointable; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.api.IPointableFactory; +import edu.uci.ics.hyracks.data.std.collections.api.IValueReferenceVector; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; /* * NodeTree { @@ -204,4 +204,4 @@ private int getDictionaryDataAreaStartOffset() { private int getRootNodeOffset() { return getDictionaryOffset() + getDictionarySize(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/PINodePointable.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/PINodePointable.java index 3ae5126a9..b293841d7 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/PINodePointable.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/PINodePointable.java @@ -16,11 +16,13 @@ */ package org.apache.vxquery.datamodel.accessors.nodes; -import org.apache.hyracks.api.dataflow.value.ITypeTraits; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.api.IPointableFactory; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.api.dataflow.value.ITypeTraits; +import edu.uci.ics.hyracks.data.std.api.AbstractPointable; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.api.IPointableFactory; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; /* * PI { @@ -29,7 +31,7 @@ * String content; * } */ -public class PINodePointable extends AbstractNodePointable { +public class PINodePointable extends AbstractPointable { private static final int LOCAL_NODE_ID_SIZE = 4; public static final IPointableFactory FACTORY = new IPointableFactory() { private static final long serialVersionUID = 1L; @@ -45,6 +47,10 @@ public IPointable createPointable() { } }; + public int getLocalNodeId(NodeTreePointable nodeTree) { + return nodeTree.nodeIdExists() ? IntegerPointable.getInteger(bytes, getLocalNodeIdOffset()) : -1; + } + public void getTarget(NodeTreePointable nodeTree, IPointable target) { target.set(bytes, getTargetOffset(nodeTree), getTargetSize(nodeTree)); } @@ -53,7 +59,7 @@ public void getContent(NodeTreePointable nodeTree, IPointable content) { content.set(bytes, getContentOffset(nodeTree), getContentSize(nodeTree)); } - protected int getLocalNodeIdOffset(NodeTreePointable nodeTree) { + private int getLocalNodeIdOffset() { return start; } @@ -62,7 +68,7 @@ private int getLocalNodeIdSize(NodeTreePointable nodeTree) { } private int getTargetOffset(NodeTreePointable nodeTree) { - return getLocalNodeIdOffset(nodeTree) + getLocalNodeIdSize(nodeTree); + return getLocalNodeIdOffset() + getLocalNodeIdSize(nodeTree); } private int getTargetSize(NodeTreePointable nodeTree) { @@ -76,4 +82,4 @@ private int getContentOffset(NodeTreePointable nodeTree) { private int getContentSize(NodeTreePointable nodeTree) { return UTF8StringPointable.getUTFLength(bytes, getContentOffset(nodeTree)) + 2; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/TextOrCommentNodePointable.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/TextOrCommentNodePointable.java index cea7c02fe..e4a9bed7c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/TextOrCommentNodePointable.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/accessors/nodes/TextOrCommentNodePointable.java @@ -16,10 +16,12 @@ */ package org.apache.vxquery.datamodel.accessors.nodes; -import org.apache.hyracks.api.dataflow.value.ITypeTraits; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.api.IPointableFactory; -import org.apache.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.api.dataflow.value.ITypeTraits; +import edu.uci.ics.hyracks.data.std.api.AbstractPointable; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.api.IPointableFactory; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; /* * Text | Comment { @@ -27,7 +29,7 @@ * UTF8String value; * } */ -public class TextOrCommentNodePointable extends AbstractNodePointable { +public class TextOrCommentNodePointable extends AbstractPointable { private static final int LOCAL_NODE_ID_SIZE = 4; public static final IPointableFactory FACTORY = new IPointableFactory() { private static final long serialVersionUID = 1L; @@ -43,11 +45,15 @@ public IPointable createPointable() { } }; + public int getLocalNodeId(NodeTreePointable nodeTree) { + return nodeTree.nodeIdExists() ? IntegerPointable.getInteger(bytes, getLocalNodeIdOffset()) : -1; + } + public void getValue(NodeTreePointable nodeTree, IPointable value) { value.set(bytes, getValueOffset(nodeTree), getValueSize(nodeTree)); } - protected int getLocalNodeIdOffset(NodeTreePointable nodeTree) { + private int getLocalNodeIdOffset() { return start; } @@ -56,11 +62,10 @@ private int getLocalNodeIdSize(NodeTreePointable nodeTree) { } private int getValueOffset(NodeTreePointable nodeTree) { - return getLocalNodeIdOffset(nodeTree) + getLocalNodeIdSize(nodeTree); + return getLocalNodeIdOffset() + getLocalNodeIdSize(nodeTree); } private int getValueSize(NodeTreePointable nodeTree) { return length - (getValueOffset(nodeTree) - start); } - -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/atomic/StringValueBuilder.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/atomic/StringValueBuilder.java index 215d1b1a4..ad59a5cb8 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/atomic/StringValueBuilder.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/atomic/StringValueBuilder.java @@ -19,7 +19,7 @@ import java.io.DataOutput; import java.io.IOException; -import org.apache.hyracks.data.std.primitive.UTF8StringWriter; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringWriter; public class StringValueBuilder { private final UTF8StringWriter writer; @@ -31,4 +31,4 @@ public StringValueBuilder() { public void write(CharSequence string, DataOutput out) throws IOException { writer.writeUTF8String(string, out); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/atomic/UTF8StringBuilder.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/atomic/UTF8StringBuilder.java index 51c026b7b..f1961ff81 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/atomic/UTF8StringBuilder.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/atomic/UTF8StringBuilder.java @@ -23,8 +23,8 @@ import org.apache.vxquery.datamodel.builders.base.AbstractBuilder; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.data.std.api.IMutableValueStorage; -import org.apache.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.api.IMutableValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; public class UTF8StringBuilder extends AbstractBuilder { private IMutableValueStorage mvs; @@ -51,4 +51,4 @@ public void appendCharArray(char[] ch, int start, int length) throws IOException throw new UTFDataFormatException("encoded string too long: " + mvs.getLength() + " bytes"); } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/base/AbstractBuilder.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/base/AbstractBuilder.java index bacad26a4..4ba9a1479 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/base/AbstractBuilder.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/base/AbstractBuilder.java @@ -18,10 +18,10 @@ import java.io.IOException; -import org.apache.hyracks.data.std.api.IMutableValueStorage; +import edu.uci.ics.hyracks.data.std.api.IMutableValueStorage; public abstract class AbstractBuilder { public abstract void reset(IMutableValueStorage mvs) throws IOException; public abstract void finish() throws IOException; -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/base/AbstractValueBuilder.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/base/AbstractValueBuilder.java index abe8eb1cd..15eea329c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/base/AbstractValueBuilder.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/base/AbstractValueBuilder.java @@ -17,4 +17,4 @@ package org.apache.vxquery.datamodel.builders.base; public abstract class AbstractValueBuilder implements IValueBuilder { -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/base/IValueBuilder.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/base/IValueBuilder.java index fc38cda3f..a83b6b169 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/base/IValueBuilder.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/base/IValueBuilder.java @@ -22,4 +22,4 @@ public interface IValueBuilder { public void reset(); public void write(DataOutput out); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/AbstractNodeBuilder.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/AbstractNodeBuilder.java index 955668fce..1c5c7a5f0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/AbstractNodeBuilder.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/AbstractNodeBuilder.java @@ -18,10 +18,10 @@ import java.io.IOException; -import org.apache.hyracks.data.std.api.IMutableValueStorage; +import edu.uci.ics.hyracks.data.std.api.IMutableValueStorage; public abstract class AbstractNodeBuilder { public abstract void reset(IMutableValueStorage mvs) throws IOException; public abstract void finish() throws IOException; -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/AttributeNodeBuilder.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/AttributeNodeBuilder.java index 7743cd8ac..cea779977 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/AttributeNodeBuilder.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/AttributeNodeBuilder.java @@ -21,8 +21,8 @@ import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.data.std.api.IMutableValueStorage; -import org.apache.hyracks.data.std.api.IValueReference; +import edu.uci.ics.hyracks.data.std.api.IMutableValueStorage; +import edu.uci.ics.hyracks.data.std.api.IValueReference; public class AttributeNodeBuilder extends AbstractNodeBuilder { private DataOutput out; @@ -56,4 +56,4 @@ public void setLocalNodeId(int localNodeId) throws IOException { public void setValue(IValueReference value) throws IOException { out.write(value.getByteArray(), value.getStartOffset(), value.getLength()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/CommentNodeBuilder.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/CommentNodeBuilder.java index d79bb88bf..104868fda 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/CommentNodeBuilder.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/CommentNodeBuilder.java @@ -21,8 +21,8 @@ import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.data.std.api.IMutableValueStorage; -import org.apache.hyracks.data.std.api.IValueReference; +import edu.uci.ics.hyracks.data.std.api.IMutableValueStorage; +import edu.uci.ics.hyracks.data.std.api.IValueReference; public class CommentNodeBuilder extends AbstractNodeBuilder { private DataOutput out; @@ -44,4 +44,4 @@ public void setLocalNodeId(int localNodeId) throws IOException { public void setValue(IValueReference value) throws IOException { out.write(value.getByteArray(), value.getStartOffset(), value.getLength()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/DictionaryBuilder.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/DictionaryBuilder.java index dae149f8c..bee221d3e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/DictionaryBuilder.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/DictionaryBuilder.java @@ -24,12 +24,12 @@ import org.apache.vxquery.util.GrowableIntArray; -import org.apache.hyracks.data.std.algorithms.BinarySearchAlgorithm; -import org.apache.hyracks.data.std.collections.api.IValueReferenceVector; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; -import org.apache.hyracks.data.std.util.ByteArrayAccessibleOutputStream; +import edu.uci.ics.hyracks.data.std.algorithms.BinarySearchAlgorithm; +import edu.uci.ics.hyracks.data.std.collections.api.IValueReferenceVector; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.util.ByteArrayAccessibleOutputStream; public class DictionaryBuilder { private final GrowableIntArray stringEndOffsets; @@ -158,4 +158,4 @@ public int lookup(UTF8StringPointable str) { cacheReady = false; return slotIndex; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/DocumentNodeBuilder.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/DocumentNodeBuilder.java index 47c811cf6..176580e30 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/DocumentNodeBuilder.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/DocumentNodeBuilder.java @@ -22,8 +22,8 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.util.GrowableIntArray; -import org.apache.hyracks.data.std.api.IMutableValueStorage; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.api.IMutableValueStorage; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class DocumentNodeBuilder extends AbstractNodeBuilder { private final GrowableIntArray childrenSlots; @@ -79,4 +79,4 @@ public void endChildrenChunk() throws IOException { out.write(childrenDataArea.getByteArray(), childrenDataArea.getStartOffset(), childrenDataArea.getLength()); } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/ElementNodeBuilder.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/ElementNodeBuilder.java index 89aaddc21..d455fd5a6 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/ElementNodeBuilder.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/ElementNodeBuilder.java @@ -23,11 +23,11 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.util.GrowableIntArray; -import org.apache.hyracks.data.std.api.IMutableValueStorage; -import org.apache.hyracks.data.std.api.IValueReference; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.api.IMutableValueStorage; +import edu.uci.ics.hyracks.data.std.api.IValueReference; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class ElementNodeBuilder extends AbstractNodeBuilder { private final GrowableIntArray attrSlots; @@ -176,4 +176,4 @@ public void endChildrenChunk() throws IOException { out.write(childrenDataArea.getByteArray(), childrenDataArea.getStartOffset(), childrenDataArea.getLength()); } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/NodeSubTreeBuilder.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/NodeSubTreeBuilder.java index 5eb08dfe0..c890f3b2b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/NodeSubTreeBuilder.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/NodeSubTreeBuilder.java @@ -23,7 +23,7 @@ import org.apache.vxquery.datamodel.accessors.nodes.NodeTreePointable; import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.data.std.api.IMutableValueStorage; +import edu.uci.ics.hyracks.data.std.api.IMutableValueStorage; public class NodeSubTreeBuilder extends AbstractNodeBuilder { private DataOutput mainOut; @@ -67,4 +67,4 @@ private boolean hasDictionary(byte tag) { } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/PINodeBuilder.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/PINodeBuilder.java index ee37511c2..a4721432f 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/PINodeBuilder.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/PINodeBuilder.java @@ -21,8 +21,8 @@ import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.data.std.api.IMutableValueStorage; -import org.apache.hyracks.data.std.api.IValueReference; +import edu.uci.ics.hyracks.data.std.api.IMutableValueStorage; +import edu.uci.ics.hyracks.data.std.api.IValueReference; public class PINodeBuilder extends AbstractNodeBuilder { private DataOutput out; @@ -48,4 +48,4 @@ public void setTarget(IValueReference value) throws IOException { public void setContent(IValueReference value) throws IOException { out.write(value.getByteArray(), value.getStartOffset(), value.getLength()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/TextNodeBuilder.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/TextNodeBuilder.java index 84ee20e0a..acddb8b1d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/TextNodeBuilder.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/nodes/TextNodeBuilder.java @@ -21,8 +21,8 @@ import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.data.std.api.IMutableValueStorage; -import org.apache.hyracks.data.std.api.IValueReference; +import edu.uci.ics.hyracks.data.std.api.IMutableValueStorage; +import edu.uci.ics.hyracks.data.std.api.IValueReference; public class TextNodeBuilder extends AbstractNodeBuilder { private DataOutput out; @@ -44,4 +44,4 @@ public void setLocalNodeId(int localNodeId) throws IOException { public void setValue(IValueReference value) throws IOException { out.write(value.getByteArray(), value.getStartOffset(), value.getLength()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/sequence/SequenceBuilder.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/sequence/SequenceBuilder.java index 12f4ad72c..96d6c3d87 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/sequence/SequenceBuilder.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/builders/sequence/SequenceBuilder.java @@ -22,9 +22,9 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.util.GrowableIntArray; -import org.apache.hyracks.data.std.api.IMutableValueStorage; -import org.apache.hyracks.data.std.api.IValueReference; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.api.IMutableValueStorage; +import edu.uci.ics.hyracks.data.std.api.IValueReference; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class SequenceBuilder { private final GrowableIntArray slots = new GrowableIntArray(); @@ -62,4 +62,4 @@ public void finish() throws IOException { out.write(dataArea.getByteArray(), dataArea.getStartOffset(), dataArea.getLength()); } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/util/DateTime.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/util/DateTime.java index 16c350f0a..1850dd1f2 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/util/DateTime.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/util/DateTime.java @@ -63,10 +63,9 @@ public class DateTime { /** * Check whether a given year is a leap year. - * + * * @param year - * A long for year. - * @return Boolean for leap year. + * @return */ public static boolean isLeapYear(long year) { return ((year & 3) == 0) && ((year % 100) != 0 || (year % 400) == 0); @@ -74,24 +73,9 @@ public static boolean isLeapYear(long year) { /** * Check whether a given year is a leap year. - * + * * @param year - * year - * @param month - * month - * @param day - * day - * @param hour - * hour - * @param minute - * minute - * @param millisecond - * millisecond - * @param timezoneHour - * timezoneHour - * @param timezoneMinute - * timezoneMinute - * @return Boolean for valid date. + * @return */ public static boolean valid(long year, long month, long day, long hour, long minute, long millisecond, long timezoneHour, long timezoneMinute) { @@ -131,19 +115,6 @@ public static boolean valid(long year, long month, long day, long hour, long min /** * Return a normalized time. - * - * @param yearMonth - * Months - * @param dayTime - * Time - * @param timezoneHour - * timezoneHour - * @param timezoneMinute - * timezoneMinute - * @param dOut - * Data out - * @throws IOException - * Could not write result. */ public static void normalizeDateTime(long yearMonth, long dayTime, long timezoneHour, long timezoneMinute, DataOutput dOut) throws IOException { @@ -250,8 +221,7 @@ public static void getUtcTimezoneDateTime(ITimezone timezonep, ITimezone default DateTime.normalizeDateTime(timezonep.getYearMonth(), dayTime, 0, 0, dOut); } - public static void adjustDateTimeToTimezone(ITimezone timezonep, long timezone, DataOutput dOut) - throws IOException { + public static void adjustDateTimeToTimezone(ITimezone timezonep, long timezone, DataOutput dOut) throws IOException { long timezoneHour = timezone / 60; long timezoneMinute = timezone % 60; long dayTime = timezonep.getDayTime(); @@ -259,8 +229,8 @@ public static void adjustDateTimeToTimezone(ITimezone timezonep, long timezone, || timezonep.getTimezoneMinute() == DateTime.TIMEZONE_MINUTE_NULL) { // No change. } else { - dayTime -= (timezonep.getTimezoneHour() * DateTime.CHRONON_OF_HOUR - + timezonep.getTimezoneMinute() * DateTime.CHRONON_OF_MINUTE); + dayTime -= (timezonep.getTimezoneHour() * DateTime.CHRONON_OF_HOUR + timezonep.getTimezoneMinute() + * DateTime.CHRONON_OF_MINUTE); dayTime += (timezoneHour * DateTime.CHRONON_OF_HOUR + timezoneMinute * DateTime.CHRONON_OF_MINUTE); } DateTime.normalizeDateTime(timezonep.getYearMonth(), dayTime, timezoneHour, timezoneMinute, dOut); diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/values/ValueTag.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/values/ValueTag.java index e2c89e9fd..c30c77bad 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/values/ValueTag.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/values/ValueTag.java @@ -100,4 +100,4 @@ public static boolean isNode(int tag) { return false; } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/values/XDMConstants.java b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/values/XDMConstants.java index bc058c7ce..8f1d7b3bf 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/datamodel/values/XDMConstants.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/datamodel/values/XDMConstants.java @@ -21,9 +21,9 @@ import org.apache.vxquery.datamodel.builders.sequence.SequenceBuilder; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class XDMConstants { private static final byte[] BOOLEAN_TRUE_CONSTANT; @@ -81,4 +81,4 @@ private static void set(IPointable p, byte[] array) { private XDMConstants() { } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/exceptions/DefaultSystemExceptionFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/exceptions/DefaultSystemExceptionFactory.java index 6dfd040a6..3c0e14335 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/exceptions/DefaultSystemExceptionFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/exceptions/DefaultSystemExceptionFactory.java @@ -38,4 +38,4 @@ public SystemException createException(ErrorCode code) { public SystemException createException(ErrorCode code, SourceLocation location) { return new SystemException(code, location); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/exceptions/ErrorReporter.java b/vxquery-core/src/main/java/org/apache/vxquery/exceptions/ErrorReporter.java index 8a1cdb052..d271095cc 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/exceptions/ErrorReporter.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/exceptions/ErrorReporter.java @@ -18,4 +18,4 @@ public interface ErrorReporter { public void reportError(Exception e); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/exceptions/SystemException.java b/vxquery-core/src/main/java/org/apache/vxquery/exceptions/SystemException.java index 39b12b9ab..697d76c6a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/exceptions/SystemException.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/exceptions/SystemException.java @@ -65,4 +65,4 @@ public SystemException(ErrorCode code, SourceLocation loc) { public ErrorCode getCode() { return code; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/exceptions/SystemExceptionFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/exceptions/SystemExceptionFactory.java index 15dcc61d0..d26f5af0e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/exceptions/SystemExceptionFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/exceptions/SystemExceptionFactory.java @@ -24,4 +24,4 @@ public interface SystemExceptionFactory { public SystemException createException(ErrorCode eCode); public SystemException createException(ErrorCode eCode, SourceLocation location); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/exceptions/VXQueryDataException.java b/vxquery-core/src/main/java/org/apache/vxquery/exceptions/VXQueryDataException.java index e41872c33..79a37aff0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/exceptions/VXQueryDataException.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/exceptions/VXQueryDataException.java @@ -18,7 +18,7 @@ import java.io.File; -import org.apache.hyracks.api.exceptions.HyracksDataException; +import edu.uci.ics.hyracks.api.exceptions.HyracksDataException; public class VXQueryDataException extends HyracksDataException { diff --git a/vxquery-core/src/main/java/org/apache/vxquery/exceptions/WarningReporter.java b/vxquery-core/src/main/java/org/apache/vxquery/exceptions/WarningReporter.java index 0e7da5d05..419b6edf9 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/exceptions/WarningReporter.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/exceptions/WarningReporter.java @@ -18,4 +18,4 @@ public interface WarningReporter { public void reportWarning(Exception e); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/functions/BuiltinFunction.java b/vxquery-core/src/main/java/org/apache/vxquery/functions/BuiltinFunction.java index 1b002be23..c85be26e4 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/functions/BuiltinFunction.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/functions/BuiltinFunction.java @@ -34,4 +34,4 @@ public FunctionTag getTag() { public boolean useContextImplicitly() { return implicitContext; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/functions/ExternalFunction.java b/vxquery-core/src/main/java/org/apache/vxquery/functions/ExternalFunction.java index e80826d96..9d0891d05 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/functions/ExternalFunction.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/functions/ExternalFunction.java @@ -32,4 +32,4 @@ public FunctionTag getTag() { public boolean useContextImplicitly() { return false; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/functions/Function.java b/vxquery-core/src/main/java/org/apache/vxquery/functions/Function.java index 130553688..c7257435b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/functions/Function.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/functions/Function.java @@ -26,11 +26,11 @@ import org.apache.vxquery.exceptions.ErrorCode; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; -import org.apache.hyracks.algebricks.core.algebra.functions.IFunctionInfo; -import org.apache.hyracks.algebricks.runtime.base.IAggregateEvaluatorFactory; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.runtime.base.IUnnestingEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.IFunctionInfo; +import edu.uci.ics.hyracks.algebricks.runtime.base.IAggregateEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IUnnestingEvaluatorFactory; public abstract class Function implements IFunctionInfo { private static final String VXQUERY = "vxquery"; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/functions/Operator.java b/vxquery-core/src/main/java/org/apache/vxquery/functions/Operator.java index ddce15c3e..1819129db 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/functions/Operator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/functions/Operator.java @@ -32,4 +32,4 @@ public FunctionTag getTag() { public boolean useContextImplicitly() { return false; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/functions/Signature.java b/vxquery-core/src/main/java/org/apache/vxquery/functions/Signature.java index d8d0a8509..609e005ff 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/functions/Signature.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/functions/Signature.java @@ -27,12 +27,10 @@ public final class Signature { private SequenceType[] parameterTypes; private SequenceType rType; - @SuppressWarnings("unchecked") public Signature(SequenceType rType, Pair... parameters) { this(rType, false, parameters); } - @SuppressWarnings("unchecked") public Signature(SequenceType rType, boolean varArgs, Pair... parameters) { int len = parameters.length; this.varArgs = varArgs; @@ -73,4 +71,4 @@ public SequenceType getReturnType() { public void serialize(StringBuffer buffer) { } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/functions/UserDefinedXQueryFunction.java b/vxquery-core/src/main/java/org/apache/vxquery/functions/UserDefinedXQueryFunction.java index 6d00845b7..63b8c12ae 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/functions/UserDefinedXQueryFunction.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/functions/UserDefinedXQueryFunction.java @@ -18,7 +18,7 @@ import org.apache.vxquery.context.XQueryVariable; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalPlan; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalPlan; public class UserDefinedXQueryFunction extends Function { private XQueryVariable[] params; @@ -54,4 +54,4 @@ public void setParameters(XQueryVariable[] params) { public boolean useContextImplicitly() { return false; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/functions/builtin-operators.xml b/vxquery-core/src/main/java/org/apache/vxquery/functions/builtin-operators.xml index c36772511..5892c48ee 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/functions/builtin-operators.xml +++ b/vxquery-core/src/main/java/org/apache/vxquery/functions/builtin-operators.xml @@ -263,8 +263,8 @@ - - + + @@ -284,18 +284,16 @@ - - - + + - - + + - diff --git a/vxquery-core/src/main/java/org/apache/vxquery/metadata/QueryResultDataSink.java b/vxquery-core/src/main/java/org/apache/vxquery/metadata/QueryResultDataSink.java index 8286d1bf4..9fc639f40 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/metadata/QueryResultDataSink.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/metadata/QueryResultDataSink.java @@ -16,11 +16,11 @@ */ package org.apache.vxquery.metadata; -import org.apache.hyracks.algebricks.core.algebra.metadata.IDataSink; -import org.apache.hyracks.algebricks.core.algebra.properties.FileSplitDomain; -import org.apache.hyracks.algebricks.core.algebra.properties.IPartitioningProperty; -import org.apache.hyracks.algebricks.core.algebra.properties.RandomPartitioningProperty; -import org.apache.hyracks.dataflow.std.file.FileSplit; +import edu.uci.ics.hyracks.algebricks.core.algebra.metadata.IDataSink; +import edu.uci.ics.hyracks.algebricks.core.algebra.properties.FileSplitDomain; +import edu.uci.ics.hyracks.algebricks.core.algebra.properties.IPartitioningProperty; +import edu.uci.ics.hyracks.algebricks.core.algebra.properties.RandomPartitioningProperty; +import edu.uci.ics.hyracks.dataflow.std.file.FileSplit; public class QueryResultDataSink implements IDataSink { private final FileSplit[] fileSplits; @@ -49,4 +49,4 @@ public IPartitioningProperty getPartitioningProperty() { public FileSplit[] getFileSplits() { return fileSplits; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/metadata/QueryResultSetDataSink.java b/vxquery-core/src/main/java/org/apache/vxquery/metadata/QueryResultSetDataSink.java index 80166e7fd..1e4e78123 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/metadata/QueryResultSetDataSink.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/metadata/QueryResultSetDataSink.java @@ -16,11 +16,11 @@ */ package org.apache.vxquery.metadata; -import org.apache.hyracks.algebricks.core.algebra.metadata.IDataSink; -import org.apache.hyracks.algebricks.core.algebra.properties.IPartitioningProperty; -import org.apache.hyracks.algebricks.core.algebra.properties.RandomPartitioningProperty; -import org.apache.hyracks.algebricks.core.algebra.properties.ResultSetDomain; -import org.apache.hyracks.api.dataset.ResultSetId; +import edu.uci.ics.hyracks.algebricks.core.algebra.metadata.IDataSink; +import edu.uci.ics.hyracks.algebricks.core.algebra.properties.IPartitioningProperty; +import edu.uci.ics.hyracks.algebricks.core.algebra.properties.RandomPartitioningProperty; +import edu.uci.ics.hyracks.algebricks.core.algebra.properties.ResultSetDomain; +import edu.uci.ics.hyracks.api.dataset.ResultSetId; public class QueryResultSetDataSink implements IDataSink { @@ -46,4 +46,4 @@ public Object[] getSchemaTypes() { public IPartitioningProperty getPartitioningProperty() { return new RandomPartitioningProperty(new ResultSetDomain()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/metadata/VXQueryCollectionDataSource.java b/vxquery-core/src/main/java/org/apache/vxquery/metadata/VXQueryCollectionDataSource.java index 62d1ca72c..d17a1a9cb 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/metadata/VXQueryCollectionDataSource.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/metadata/VXQueryCollectionDataSource.java @@ -21,14 +21,14 @@ import org.apache.vxquery.compiler.rewriter.rules.CollectionFileDomain; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalVariable; -import org.apache.hyracks.algebricks.core.algebra.metadata.IDataSource; -import org.apache.hyracks.algebricks.core.algebra.metadata.IDataSourcePropertiesProvider; -import org.apache.hyracks.algebricks.core.algebra.properties.FunctionalDependency; -import org.apache.hyracks.algebricks.core.algebra.properties.ILocalStructuralProperty; -import org.apache.hyracks.algebricks.core.algebra.properties.IPhysicalPropertiesVector; -import org.apache.hyracks.algebricks.core.algebra.properties.RandomPartitioningProperty; -import org.apache.hyracks.algebricks.core.algebra.properties.StructuralPropertiesVector; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalVariable; +import edu.uci.ics.hyracks.algebricks.core.algebra.metadata.IDataSource; +import edu.uci.ics.hyracks.algebricks.core.algebra.metadata.IDataSourcePropertiesProvider; +import edu.uci.ics.hyracks.algebricks.core.algebra.properties.FunctionalDependency; +import edu.uci.ics.hyracks.algebricks.core.algebra.properties.ILocalStructuralProperty; +import edu.uci.ics.hyracks.algebricks.core.algebra.properties.IPhysicalPropertiesVector; +import edu.uci.ics.hyracks.algebricks.core.algebra.properties.RandomPartitioningProperty; +import edu.uci.ics.hyracks.algebricks.core.algebra.properties.StructuralPropertiesVector; public class VXQueryCollectionDataSource implements IDataSource { private static final String DELIMITER = "\\|"; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/metadata/VXQueryCollectionOperatorDescriptor.java b/vxquery-core/src/main/java/org/apache/vxquery/metadata/VXQueryCollectionOperatorDescriptor.java index d5966b867..8fdd1ecba 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/metadata/VXQueryCollectionOperatorDescriptor.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/metadata/VXQueryCollectionOperatorDescriptor.java @@ -25,24 +25,23 @@ import org.apache.commons.io.FileUtils; import org.apache.commons.io.filefilter.TrueFileFilter; -import org.apache.hyracks.api.comm.IFrame; -import org.apache.hyracks.api.comm.IFrameFieldAppender; -import org.apache.hyracks.api.comm.VSizeFrame; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.api.dataflow.IOperatorNodePushable; -import org.apache.hyracks.api.dataflow.value.IRecordDescriptorProvider; -import org.apache.hyracks.api.dataflow.value.RecordDescriptor; -import org.apache.hyracks.api.exceptions.HyracksDataException; -import org.apache.hyracks.api.job.IOperatorDescriptorRegistry; -import org.apache.hyracks.dataflow.common.comm.io.FrameFixedFieldTupleAppender; -import org.apache.hyracks.dataflow.common.comm.io.FrameTupleAccessor; -import org.apache.hyracks.dataflow.std.base.AbstractSingleActivityOperatorDescriptor; -import org.apache.hyracks.dataflow.std.base.AbstractUnaryInputUnaryOutputOperatorNodePushable; import org.apache.vxquery.context.DynamicContext; import org.apache.vxquery.xmlparser.ITreeNodeIdProvider; import org.apache.vxquery.xmlparser.TreeNodeIdProvider; import org.apache.vxquery.xmlparser.XMLParser; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.api.dataflow.IOperatorNodePushable; +import edu.uci.ics.hyracks.api.dataflow.value.IRecordDescriptorProvider; +import edu.uci.ics.hyracks.api.dataflow.value.RecordDescriptor; +import edu.uci.ics.hyracks.api.exceptions.HyracksDataException; +import edu.uci.ics.hyracks.api.job.IOperatorDescriptorRegistry; +import edu.uci.ics.hyracks.dataflow.common.comm.io.FrameTupleAccessor; +import edu.uci.ics.hyracks.dataflow.common.comm.io.FrameTupleAppender; +import edu.uci.ics.hyracks.dataflow.common.comm.util.FrameUtils; +import edu.uci.ics.hyracks.dataflow.std.base.AbstractSingleActivityOperatorDescriptor; +import edu.uci.ics.hyracks.dataflow.std.base.AbstractUnaryInputUnaryOutputOperatorNodePushable; + public class VXQueryCollectionOperatorDescriptor extends AbstractSingleActivityOperatorDescriptor { private static final long serialVersionUID = 1L; private short dataSourceId; @@ -64,18 +63,18 @@ public VXQueryCollectionOperatorDescriptor(IOperatorDescriptorRegistry spec, VXQ @Override public IOperatorNodePushable createPushRuntime(IHyracksTaskContext ctx, IRecordDescriptorProvider recordDescProvider, int partition, int nPartitions) throws HyracksDataException { - final FrameTupleAccessor fta = new FrameTupleAccessor( + final FrameTupleAccessor fta = new FrameTupleAccessor(ctx.getFrameSize(), recordDescProvider.getInputRecordDescriptor(getActivityId(), 0)); final int fieldOutputCount = recordDescProvider.getOutputRecordDescriptor(getActivityId(), 0).getFieldCount(); - final IFrame frame = new VSizeFrame(ctx); - final IFrameFieldAppender appender = new FrameFixedFieldTupleAppender(fieldOutputCount); + final ByteBuffer frame = ctx.allocateFrame(); + final FrameTupleAppender appender = new FrameTupleAppender(ctx.getFrameSize(), fieldOutputCount); final short partitionId = (short) ctx.getTaskAttemptId().getTaskId().getPartition(); final ITreeNodeIdProvider nodeIdProvider = new TreeNodeIdProvider(partitionId, dataSourceId, totalDataSources); final String nodeId = ctx.getJobletContext().getApplicationContext().getNodeId(); final DynamicContext dCtx = (DynamicContext) ctx.getJobletContext().getGlobalJobData(); final String collectionName = collectionPartitions[partition % collectionPartitions.length]; - final XMLParser parser = new XMLParser(false, nodeIdProvider, nodeId, appender, childSeq, + final XMLParser parser = new XMLParser(false, nodeIdProvider, nodeId, frame, appender, childSeq, dCtx.getStaticContext()); return new AbstractUnaryInputUnaryOutputOperatorNodePushable() { @@ -102,7 +101,7 @@ public void nextFrame(ByteBuffer buffer) throws HyracksDataException { if (LOGGER.isLoggable(Level.FINE)) { LOGGER.fine("Starting to read XML document: " + xmlDocument.getAbsolutePath()); } - parser.parseElements(xmlDocument, writer, tupleIndex); + parser.parseElements(xmlDocument, writer, fta, tupleIndex); } } } else { @@ -119,11 +118,12 @@ public void fail() throws HyracksDataException { @Override public void close() throws HyracksDataException { // Check if needed? - if (appender.getTupleCount() > 0) { - appender.flush(writer, true); + fta.reset(frame); + if (fta.getTupleCount() > 0) { + FrameUtils.flushFrame(frame, writer); } writer.close(); } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/metadata/VXQueryIOFileFilter.java b/vxquery-core/src/main/java/org/apache/vxquery/metadata/VXQueryIOFileFilter.java index 70070dcb2..104f2545d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/metadata/VXQueryIOFileFilter.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/metadata/VXQueryIOFileFilter.java @@ -34,4 +34,4 @@ public boolean accept(final File file, final String name) { } return false; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/metadata/VXQueryMetadataProvider.java b/vxquery-core/src/main/java/org/apache/vxquery/metadata/VXQueryMetadataProvider.java index 238f6d3e6..60bfb5151 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/metadata/VXQueryMetadataProvider.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/metadata/VXQueryMetadataProvider.java @@ -22,46 +22,42 @@ import java.util.List; import java.util.Map; -import org.apache.vxquery.context.StaticContext; - -import org.apache.hyracks.algebricks.common.constraints.AlgebricksAbsolutePartitionConstraint; -import org.apache.hyracks.algebricks.common.constraints.AlgebricksPartitionConstraint; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.common.utils.Pair; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalVariable; -import org.apache.hyracks.algebricks.core.algebra.expressions.IVariableTypeEnvironment; -import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; -import org.apache.hyracks.algebricks.core.algebra.functions.IFunctionInfo; -import org.apache.hyracks.algebricks.core.algebra.metadata.IDataSink; -import org.apache.hyracks.algebricks.core.algebra.metadata.IDataSource; -import org.apache.hyracks.algebricks.core.algebra.metadata.IDataSourceIndex; -import org.apache.hyracks.algebricks.core.algebra.metadata.IMetadataProvider; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.IOperatorSchema; -import org.apache.hyracks.algebricks.core.jobgen.impl.JobGenContext; -import org.apache.hyracks.algebricks.data.IAWriterFactory; -import org.apache.hyracks.algebricks.data.IPrinterFactory; -import org.apache.hyracks.algebricks.data.IResultSerializerFactoryProvider; -import org.apache.hyracks.algebricks.runtime.base.IPushRuntimeFactory; -import org.apache.hyracks.algebricks.runtime.serializer.ResultSerializerFactoryProvider; -import org.apache.hyracks.algebricks.runtime.writers.PrinterBasedWriterFactory; -import org.apache.hyracks.api.dataflow.IOperatorDescriptor; -import org.apache.hyracks.api.dataflow.value.IResultSerializerFactory; -import org.apache.hyracks.api.dataflow.value.ISerializerDeserializer; -import org.apache.hyracks.api.dataflow.value.RecordDescriptor; -import org.apache.hyracks.api.dataset.ResultSetId; -import org.apache.hyracks.api.job.JobSpecification; -import org.apache.hyracks.dataflow.std.result.ResultWriterOperatorDescriptor; +import edu.uci.ics.hyracks.algebricks.common.constraints.AlgebricksAbsolutePartitionConstraint; +import edu.uci.ics.hyracks.algebricks.common.constraints.AlgebricksPartitionConstraint; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.common.utils.Pair; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalVariable; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.IVariableTypeEnvironment; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; +import edu.uci.ics.hyracks.algebricks.core.algebra.functions.IFunctionInfo; +import edu.uci.ics.hyracks.algebricks.core.algebra.metadata.IDataSink; +import edu.uci.ics.hyracks.algebricks.core.algebra.metadata.IDataSource; +import edu.uci.ics.hyracks.algebricks.core.algebra.metadata.IDataSourceIndex; +import edu.uci.ics.hyracks.algebricks.core.algebra.metadata.IMetadataProvider; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.IOperatorSchema; +import edu.uci.ics.hyracks.algebricks.core.jobgen.impl.JobGenContext; +import edu.uci.ics.hyracks.algebricks.data.IAWriterFactory; +import edu.uci.ics.hyracks.algebricks.data.IPrinterFactory; +import edu.uci.ics.hyracks.algebricks.data.IResultSerializerFactoryProvider; +import edu.uci.ics.hyracks.algebricks.runtime.base.IPushRuntimeFactory; +import edu.uci.ics.hyracks.algebricks.runtime.serializer.ResultSerializerFactoryProvider; +import edu.uci.ics.hyracks.algebricks.runtime.writers.PrinterBasedWriterFactory; +import edu.uci.ics.hyracks.api.dataflow.IOperatorDescriptor; +import edu.uci.ics.hyracks.api.dataflow.value.IResultSerializerFactory; +import edu.uci.ics.hyracks.api.dataflow.value.ISerializerDeserializer; +import edu.uci.ics.hyracks.api.dataflow.value.RecordDescriptor; +import edu.uci.ics.hyracks.api.dataset.ResultSetId; +import edu.uci.ics.hyracks.api.job.JobSpecification; +import edu.uci.ics.hyracks.dataflow.std.result.ResultWriterOperatorDescriptor; public class VXQueryMetadataProvider implements IMetadataProvider { - private final String[] nodeList; - private final Map sourceFileMap; - private final StaticContext staticCtx; + String[] nodeList; + Map sourceFileMap; - public VXQueryMetadataProvider(String[] nodeList, Map sourceFileMap, StaticContext staticCtx) { + public VXQueryMetadataProvider(String[] nodeList, Map sourceFileMap) { this.nodeList = nodeList; this.sourceFileMap = sourceFileMap; - this.staticCtx = staticCtx; } @Override @@ -69,14 +65,6 @@ public IDataSource findDataSource(String id) throws AlgebricksException return null; } - public Map getSourceFileMap() { - return sourceFileMap; - } - - public StaticContext getStaticContext() { - return staticCtx; - } - @Override public Pair getScannerRuntime(IDataSource dataSource, List scanVariables, List projectVariables, boolean projectPushed, @@ -229,4 +217,4 @@ public Pair getTokenizerRunt throw new UnsupportedOperationException(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/result/ResultUtils.java b/vxquery-core/src/main/java/org/apache/vxquery/result/ResultUtils.java index ae7f5a1ea..923706ee4 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/result/ResultUtils.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/result/ResultUtils.java @@ -17,9 +17,9 @@ import java.io.IOException; import java.nio.ByteBuffer; -import org.apache.hyracks.api.comm.IFrameTupleAccessor; -import org.apache.hyracks.api.exceptions.HyracksDataException; -import org.apache.hyracks.dataflow.common.comm.util.ByteBufferInputStream; +import edu.uci.ics.hyracks.api.comm.IFrameTupleAccessor; +import edu.uci.ics.hyracks.api.exceptions.HyracksDataException; +import edu.uci.ics.hyracks.dataflow.common.comm.util.ByteBufferInputStream; public class ResultUtils { public static String getStringFromBuffer(ByteBuffer buffer, IFrameTupleAccessor fta) throws HyracksDataException { diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/factory/hashfunction/VXQueryRawBinaryHashFunctionFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/factory/hashfunction/VXQueryRawBinaryHashFunctionFactory.java index 5ec14eebc..4f9437b85 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/factory/hashfunction/VXQueryRawBinaryHashFunctionFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/factory/hashfunction/VXQueryRawBinaryHashFunctionFactory.java @@ -16,9 +16,9 @@ */ package org.apache.vxquery.runtime.factory.hashfunction; -import org.apache.hyracks.api.dataflow.value.IBinaryHashFunction; -import org.apache.hyracks.api.dataflow.value.IBinaryHashFunctionFactory; -import org.apache.hyracks.data.std.accessors.MurmurHash3BinaryHashFunctionFamily; +import edu.uci.ics.hyracks.api.dataflow.value.IBinaryHashFunction; +import edu.uci.ics.hyracks.api.dataflow.value.IBinaryHashFunctionFactory; +import edu.uci.ics.hyracks.data.std.accessors.MurmurHash3BinaryHashFunctionFamily; public class VXQueryRawBinaryHashFunctionFactory implements IBinaryHashFunctionFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/AbstractMaxMinAggregateEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/AbstractMaxMinAggregateEvaluatorFactory.java index 325fb71f4..ba3178330 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/AbstractMaxMinAggregateEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/AbstractMaxMinAggregateEvaluatorFactory.java @@ -31,12 +31,12 @@ import org.apache.vxquery.runtime.functions.comparison.AbstractValueComparisonOperation; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IAggregateEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IAggregateEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public abstract class AbstractMaxMinAggregateEvaluatorFactory extends AbstractTaggedValueArgumentAggregateEvaluatorFactory { @@ -110,4 +110,4 @@ protected void step(TaggedValuePointable[] args) throws SystemException { } protected abstract AbstractValueComparisonOperation createValueComparisonOperation(); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/AbstractMaxMinScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/AbstractMaxMinScalarEvaluatorFactory.java index 82d938ece..b2aa0b99b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/AbstractMaxMinScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/AbstractMaxMinScalarEvaluatorFactory.java @@ -28,12 +28,12 @@ import org.apache.vxquery.runtime.functions.comparison.AbstractValueComparisonOperation; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; public abstract class AbstractMaxMinScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -87,4 +87,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } protected abstract AbstractValueComparisonOperation createValueComparisonOperation(); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/AvgGlobalAggregateEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/AvgGlobalAggregateEvaluatorFactory.java index 828efd4f8..00756bf62 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/AvgGlobalAggregateEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/AvgGlobalAggregateEvaluatorFactory.java @@ -30,13 +30,13 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentAggregateEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.ArithmeticHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IAggregateEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IAggregateEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class AvgGlobalAggregateEvaluatorFactory extends AbstractTaggedValueArgumentAggregateEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -122,4 +122,4 @@ protected void step(TaggedValuePointable[] args) throws SystemException { } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/AvgLocalAggregateEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/AvgLocalAggregateEvaluatorFactory.java index db2aa573d..010b96fcf 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/AvgLocalAggregateEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/AvgLocalAggregateEvaluatorFactory.java @@ -28,12 +28,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentAggregateEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.ArithmeticHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IAggregateEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IAggregateEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class AvgLocalAggregateEvaluatorFactory extends AbstractTaggedValueArgumentAggregateEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -109,4 +109,4 @@ protected void step(TaggedValuePointable[] args) throws SystemException { } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnAvgAggregateEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnAvgAggregateEvaluatorFactory.java index 09a611f69..6489fe390 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnAvgAggregateEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnAvgAggregateEvaluatorFactory.java @@ -30,12 +30,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentAggregateEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.ArithmeticHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IAggregateEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IAggregateEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnAvgAggregateEvaluatorFactory extends AbstractTaggedValueArgumentAggregateEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -109,4 +109,4 @@ protected void step(TaggedValuePointable[] args) throws SystemException { } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnAvgScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnAvgScalarEvaluatorFactory.java index 9a511cd78..daa77159f 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnAvgScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnAvgScalarEvaluatorFactory.java @@ -31,12 +31,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.ArithmeticHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnAvgScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -101,4 +101,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnCountAggregateEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnCountAggregateEvaluatorFactory.java index 8c5563098..fbde38c22 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnCountAggregateEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnCountAggregateEvaluatorFactory.java @@ -24,12 +24,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentAggregateEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentAggregateEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IAggregateEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IAggregateEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnCountAggregateEvaluatorFactory extends AbstractTaggedValueArgumentAggregateEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -74,4 +74,4 @@ protected void step(TaggedValuePointable[] args) throws SystemException { }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnCountScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnCountScalarEvaluatorFactory.java index 0912f2912..c96ea6e45 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnCountScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnCountScalarEvaluatorFactory.java @@ -26,12 +26,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnCountScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -69,4 +69,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnMaxAggregateEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnMaxAggregateEvaluatorFactory.java index 4a4d0bc1a..b4af077ea 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnMaxAggregateEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnMaxAggregateEvaluatorFactory.java @@ -19,7 +19,7 @@ import org.apache.vxquery.runtime.functions.comparison.AbstractValueComparisonOperation; import org.apache.vxquery.runtime.functions.comparison.ValueGtComparisonOperation; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnMaxAggregateEvaluatorFactory extends AbstractMaxMinAggregateEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -33,4 +33,4 @@ protected AbstractValueComparisonOperation createValueComparisonOperation() { return new ValueGtComparisonOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnMaxScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnMaxScalarEvaluatorFactory.java index 83966ec1b..5f7dd54f9 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnMaxScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnMaxScalarEvaluatorFactory.java @@ -19,7 +19,7 @@ import org.apache.vxquery.runtime.functions.comparison.AbstractValueComparisonOperation; import org.apache.vxquery.runtime.functions.comparison.ValueGtComparisonOperation; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnMaxScalarEvaluatorFactory extends AbstractMaxMinScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -33,4 +33,4 @@ protected AbstractValueComparisonOperation createValueComparisonOperation() { return new ValueGtComparisonOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnMinAggregateEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnMinAggregateEvaluatorFactory.java index 32fa553d6..06557b2a0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnMinAggregateEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnMinAggregateEvaluatorFactory.java @@ -19,7 +19,7 @@ import org.apache.vxquery.runtime.functions.comparison.AbstractValueComparisonOperation; import org.apache.vxquery.runtime.functions.comparison.ValueLtComparisonOperation; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnMinAggregateEvaluatorFactory extends AbstractMaxMinAggregateEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -33,4 +33,4 @@ protected AbstractValueComparisonOperation createValueComparisonOperation() { return new ValueLtComparisonOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnMinScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnMinScalarEvaluatorFactory.java index 90368db0e..1ff6e4bfb 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnMinScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnMinScalarEvaluatorFactory.java @@ -19,7 +19,7 @@ import org.apache.vxquery.runtime.functions.comparison.AbstractValueComparisonOperation; import org.apache.vxquery.runtime.functions.comparison.ValueLtComparisonOperation; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnMinScalarEvaluatorFactory extends AbstractMaxMinScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -33,4 +33,4 @@ protected AbstractValueComparisonOperation createValueComparisonOperation() { return new ValueLtComparisonOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnSumAggregateEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnSumAggregateEvaluatorFactory.java index b4fdcdcfc..6e96fe741 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnSumAggregateEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnSumAggregateEvaluatorFactory.java @@ -27,12 +27,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentAggregateEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.ArithmeticHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IAggregateEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IAggregateEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnSumAggregateEvaluatorFactory extends AbstractTaggedValueArgumentAggregateEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -82,4 +82,4 @@ protected void step(TaggedValuePointable[] args) throws SystemException { } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnSumScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnSumScalarEvaluatorFactory.java index 635fa8af3..2088e1ff2 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnSumScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/aggregate/FnSumScalarEvaluatorFactory.java @@ -29,13 +29,13 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.ArithmeticHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnSumScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -101,4 +101,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/AbstractArithmeticOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/AbstractArithmeticOperation.java index db4099bf8..51539d95a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/AbstractArithmeticOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/AbstractArithmeticOperation.java @@ -26,10 +26,10 @@ import org.apache.vxquery.datamodel.accessors.atomic.XSTimePointable; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; public abstract class AbstractArithmeticOperation { public abstract void operateDateDate(XSDatePointable datep1, XSDatePointable datep2, DynamicContext dCtx, @@ -172,4 +172,4 @@ public abstract void operateYMDurationInteger(IntegerPointable intp1, LongPointa public abstract void operateYMDurationYMDuration(IntegerPointable intp1, IntegerPointable intp2, DataOutput dOut) throws SystemException, IOException; -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/AbstractArithmeticScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/AbstractArithmeticScalarEvaluatorFactory.java index eb253a691..90e1c4e3f 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/AbstractArithmeticScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/AbstractArithmeticScalarEvaluatorFactory.java @@ -26,11 +26,11 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.ArithmeticHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; public abstract class AbstractArithmeticScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { @@ -74,4 +74,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } protected abstract AbstractArithmeticOperation createArithmeticOperation(); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/AddOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/AddOperation.java index d6d3b7e12..b5fdd6767 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/AddOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/AddOperation.java @@ -29,11 +29,11 @@ import org.apache.vxquery.exceptions.ErrorCode; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class AddOperation extends AbstractArithmeticOperation { protected final ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -485,4 +485,4 @@ public long operateLongDecimal(long longValue, XSDecimalPointable decp2) throws decp2.setDecimal(value1, place1); return decp2.longValue(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/AddScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/AddScalarEvaluatorFactory.java index 728bd712b..d701171f9 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/AddScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/AddScalarEvaluatorFactory.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.runtime.functions.arithmetic; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class AddScalarEvaluatorFactory extends AbstractArithmeticScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -29,4 +29,4 @@ public AddScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) { protected AbstractArithmeticOperation createArithmeticOperation() { return new AddOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/DivideOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/DivideOperation.java index 315c76169..f28c97834 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/DivideOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/DivideOperation.java @@ -29,11 +29,11 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToDecimalOperation; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class DivideOperation extends AbstractArithmeticOperation { protected final ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -499,4 +499,4 @@ public int operateDecimalInt(XSDecimalPointable decp1, int intValue) throws Syst return (int) value1; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/DivideScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/DivideScalarEvaluatorFactory.java index df427abd4..6caea8509 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/DivideScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/DivideScalarEvaluatorFactory.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.runtime.functions.arithmetic; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class DivideScalarEvaluatorFactory extends AbstractArithmeticScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -29,4 +29,4 @@ public DivideScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) { protected AbstractArithmeticOperation createArithmeticOperation() { return new DivideOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/IntegerDivideOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/IntegerDivideOperation.java index 32536065d..c9854f07a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/IntegerDivideOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/IntegerDivideOperation.java @@ -28,11 +28,11 @@ import org.apache.vxquery.exceptions.ErrorCode; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class IntegerDivideOperation extends AbstractArithmeticOperation { protected final ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -457,4 +457,4 @@ public void operateYMDurationYMDuration(IntegerPointable intp, IntegerPointable throw new SystemException(ErrorCode.XPTY0004); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/IntegerDivideScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/IntegerDivideScalarEvaluatorFactory.java index 0ab262643..1920ce44b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/IntegerDivideScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/IntegerDivideScalarEvaluatorFactory.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.runtime.functions.arithmetic; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class IntegerDivideScalarEvaluatorFactory extends AbstractArithmeticScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -29,4 +29,4 @@ public IntegerDivideScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) { protected AbstractArithmeticOperation createArithmeticOperation() { return new IntegerDivideOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/ModOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/ModOperation.java index 577b65990..4ff2476e0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/ModOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/ModOperation.java @@ -28,11 +28,11 @@ import org.apache.vxquery.exceptions.ErrorCode; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class ModOperation extends AbstractArithmeticOperation { protected final ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -393,4 +393,4 @@ public void operateYMDurationYMDuration(IntegerPointable intp, IntegerPointable throw new SystemException(ErrorCode.XPTY0004); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/ModScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/ModScalarEvaluatorFactory.java index f5cdc13a8..5e300eab7 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/ModScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/ModScalarEvaluatorFactory.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.runtime.functions.arithmetic; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class ModScalarEvaluatorFactory extends AbstractArithmeticScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -29,4 +29,4 @@ public ModScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) { protected AbstractArithmeticOperation createArithmeticOperation() { return new ModOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/MultiplyOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/MultiplyOperation.java index d4704cb8b..8be907754 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/MultiplyOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/MultiplyOperation.java @@ -28,11 +28,11 @@ import org.apache.vxquery.exceptions.ErrorCode; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class MultiplyOperation extends AbstractArithmeticOperation { protected final ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -403,4 +403,4 @@ public long operateLongDecimal(long longValue, XSDecimalPointable decp2) throws return decp1.longValue(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/MultiplyScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/MultiplyScalarEvaluatorFactory.java index fb5abb963..20e2f576b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/MultiplyScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/MultiplyScalarEvaluatorFactory.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.runtime.functions.arithmetic; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class MultiplyScalarEvaluatorFactory extends AbstractArithmeticScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -29,4 +29,4 @@ public MultiplyScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) { protected AbstractArithmeticOperation createArithmeticOperation() { return new MultiplyOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/SubtractOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/SubtractOperation.java index 9ac37ca3f..4311e04c3 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/SubtractOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/SubtractOperation.java @@ -29,11 +29,11 @@ import org.apache.vxquery.exceptions.ErrorCode; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class SubtractOperation extends AbstractArithmeticOperation { protected final ArrayBackedValueStorage abvsInner1 = new ArrayBackedValueStorage(); @@ -651,4 +651,4 @@ public long operateDecimalInt(XSDecimalPointable decp1, long longValue) throws S return decp2.longValue(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/SubtractScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/SubtractScalarEvaluatorFactory.java index ce97a57a8..a1e73c938 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/SubtractScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/arithmetic/SubtractScalarEvaluatorFactory.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.runtime.functions.arithmetic; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class SubtractScalarEvaluatorFactory extends AbstractArithmeticScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -29,4 +29,4 @@ public SubtractScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) { protected AbstractArithmeticOperation createArithmeticOperation() { return new SubtractOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentAggregateEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentAggregateEvaluator.java index 965e110a6..78faf89c5 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentAggregateEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentAggregateEvaluator.java @@ -21,10 +21,10 @@ import org.apache.vxquery.datamodel.accessors.TaggedValuePointable; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IAggregateEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.dataflow.common.data.accessors.IFrameTupleReference; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IAggregateEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.dataflow.common.data.accessors.IFrameTupleReference; public abstract class AbstractTaggedValueArgumentAggregateEvaluator implements IAggregateEvaluator { private final IScalarEvaluator[] args; @@ -54,4 +54,4 @@ public void step(IFrameTupleReference tuple) throws AlgebricksException { } protected abstract void step(TaggedValuePointable[] args) throws SystemException; -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentAggregateEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentAggregateEvaluatorFactory.java index 2ab0b6635..b2eaa5bd5 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentAggregateEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentAggregateEvaluatorFactory.java @@ -18,12 +18,12 @@ import org.apache.vxquery.context.DynamicContext; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IAggregateEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IAggregateEvaluatorFactory; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IAggregateEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IAggregateEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; public abstract class AbstractTaggedValueArgumentAggregateEvaluatorFactory implements IAggregateEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -47,4 +47,4 @@ public final IAggregateEvaluator createAggregateEvaluator(IHyracksTaskContext ct } protected abstract IAggregateEvaluator createEvaluator(IScalarEvaluator[] args) throws AlgebricksException; -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentScalarEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentScalarEvaluator.java index e0229c2bc..e3ea70278 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentScalarEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentScalarEvaluator.java @@ -21,10 +21,10 @@ import org.apache.vxquery.datamodel.accessors.TaggedValuePointable; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.dataflow.common.data.accessors.IFrameTupleReference; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.dataflow.common.data.accessors.IFrameTupleReference; public abstract class AbstractTaggedValueArgumentScalarEvaluator implements IScalarEvaluator { private final IScalarEvaluator[] args; @@ -54,4 +54,4 @@ public final void evaluate(IFrameTupleReference tuple, IPointable result) throws } protected abstract void evaluate(TaggedValuePointable[] args, IPointable result) throws SystemException; -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentScalarEvaluatorFactory.java index d07361b2f..35781cbb0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentScalarEvaluatorFactory.java @@ -16,10 +16,10 @@ */ package org.apache.vxquery.runtime.functions.base; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; public abstract class AbstractTaggedValueArgumentScalarEvaluatorFactory implements IScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -41,4 +41,4 @@ public final IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) thr protected abstract IScalarEvaluator createEvaluator(IHyracksTaskContext ctx, IScalarEvaluator[] args) throws AlgebricksException; -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentUnnestingEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentUnnestingEvaluator.java index 4aa30d725..aba250145 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentUnnestingEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentUnnestingEvaluator.java @@ -21,10 +21,10 @@ import org.apache.vxquery.datamodel.accessors.TaggedValuePointable; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IUnnestingEvaluator; -import org.apache.hyracks.dataflow.common.data.accessors.IFrameTupleReference; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IUnnestingEvaluator; +import edu.uci.ics.hyracks.dataflow.common.data.accessors.IFrameTupleReference; public abstract class AbstractTaggedValueArgumentUnnestingEvaluator implements IUnnestingEvaluator { private final IScalarEvaluator[] args; @@ -54,4 +54,4 @@ public final void init(IFrameTupleReference tuple) throws AlgebricksException { } protected abstract void init(TaggedValuePointable[] args) throws SystemException; -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentUnnestingEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentUnnestingEvaluatorFactory.java index f32a73436..312efea67 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentUnnestingEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/base/AbstractTaggedValueArgumentUnnestingEvaluatorFactory.java @@ -17,12 +17,12 @@ package org.apache.vxquery.runtime.functions.base; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.runtime.base.IUnnestingEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IUnnestingEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IUnnestingEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IUnnestingEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; public abstract class AbstractTaggedValueArgumentUnnestingEvaluatorFactory implements IUnnestingEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -46,4 +46,4 @@ public final IUnnestingEvaluator createUnnestingEvaluator(IHyracksTaskContext ct } protected abstract IUnnestingEvaluator createEvaluator(IHyracksTaskContext ctx, IScalarEvaluator[] args) throws AlgebricksException; -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/AndScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/AndScalarEvaluatorFactory.java index 599a4d766..c66261c59 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/AndScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/AndScalarEvaluatorFactory.java @@ -20,13 +20,13 @@ import org.apache.vxquery.datamodel.values.XDMConstants; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.dataflow.common.data.accessors.IFrameTupleReference; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.dataflow.common.data.accessors.IFrameTupleReference; public class AndScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -66,4 +66,4 @@ public final void evaluate(IFrameTupleReference tuple, IPointable result) throws } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/FnBooleanScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/FnBooleanScalarEvaluatorFactory.java index d74913056..b9c8c6f3e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/FnBooleanScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/FnBooleanScalarEvaluatorFactory.java @@ -26,18 +26,18 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class FnBooleanScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -168,4 +168,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/FnFalseScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/FnFalseScalarEvaluatorFactory.java index 53778d2d3..07e92ee68 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/FnFalseScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/FnFalseScalarEvaluatorFactory.java @@ -22,11 +22,11 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; public class FnFalseScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -45,4 +45,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/FnNotScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/FnNotScalarEvaluatorFactory.java index b9d45855c..94b03f16d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/FnNotScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/FnNotScalarEvaluatorFactory.java @@ -22,12 +22,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; public class FnNotScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -54,4 +54,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/FnTrueScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/FnTrueScalarEvaluatorFactory.java index a94d2df8f..33acf51f7 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/FnTrueScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/FnTrueScalarEvaluatorFactory.java @@ -22,11 +22,11 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; public class FnTrueScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -45,4 +45,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/OrScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/OrScalarEvaluatorFactory.java index da31e14a6..23d7ad968 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/OrScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/bool/OrScalarEvaluatorFactory.java @@ -20,13 +20,13 @@ import org.apache.vxquery.datamodel.values.XDMConstants; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.dataflow.common.data.accessors.IFrameTupleReference; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.dataflow.common.data.accessors.IFrameTupleReference; public class OrScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -65,4 +65,4 @@ public final void evaluate(IFrameTupleReference tuple, IPointable result) throws XDMConstants.setFalse(result); } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/AbstractCastToOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/AbstractCastToOperation.java index f68636170..c9cb11b13 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/AbstractCastToOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/AbstractCastToOperation.java @@ -29,20 +29,20 @@ import org.apache.vxquery.exceptions.ErrorCode; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public abstract class AbstractCastToOperation { - // - // Primitive Datatypes - // + /** + * Primitive Datatypes + */ public void convertAnyURI(UTF8StringPointable stringp, DataOutput dOut) throws SystemException, IOException { throw new SystemException(ErrorCode.XPTY0004); } @@ -135,9 +135,9 @@ public void convertYMDuration(IntegerPointable intp, DataOutput dOut) throws Sys throw new SystemException(ErrorCode.XPTY0004); } - // - // Derived Numeric Datatypes - // + /** + * Derived Numeric Datatypes + */ public void convertByte(BytePointable bytep, DataOutput dOut) throws SystemException, IOException { throw new SystemException(ErrorCode.XPTY0004); } @@ -186,9 +186,9 @@ public void convertUnsignedShort(IntegerPointable intp, DataOutput dOut) throws throw new SystemException(ErrorCode.XPTY0004); } - // - // Derived String Datatypes - // + /** + * Derived String Datatypes + */ public void convertEntity(UTF8StringPointable stringp, DataOutput dOut) throws SystemException, IOException { throw new SystemException(ErrorCode.XPTY0004); @@ -218,8 +218,8 @@ public void convertNMToken(UTF8StringPointable stringp, DataOutput dOut) throws throw new SystemException(ErrorCode.XPTY0004); } - public void convertNormalizedString(UTF8StringPointable stringp, DataOutput dOut) - throws SystemException, IOException { + public void convertNormalizedString(UTF8StringPointable stringp, DataOutput dOut) throws SystemException, + IOException { throw new SystemException(ErrorCode.XPTY0004); } diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastScalarEvaluatorFactory.java index 01e5d14d5..7c76eead0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastScalarEvaluatorFactory.java @@ -27,12 +27,12 @@ import org.apache.vxquery.types.BuiltinTypeRegistry; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastScalarEvaluatorFactory extends AbstractTypeScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -435,4 +435,4 @@ protected void setSequenceType(SequenceType sType) { }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToAnyURIOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToAnyURIOperation.java index ff49362f3..c6f2d74ba 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToAnyURIOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToAnyURIOperation.java @@ -22,7 +22,7 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastToAnyURIOperation extends AbstractCastToOperation { @@ -43,4 +43,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToBase64BinaryOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToBase64BinaryOperation.java index 680ce08aa..de1148a72 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToBase64BinaryOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToBase64BinaryOperation.java @@ -24,8 +24,8 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ByteArrayAccessibleOutputStream; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ByteArrayAccessibleOutputStream; public class CastToBase64BinaryOperation extends AbstractCastToOperation { private ByteArrayAccessibleOutputStream baaos = new ByteArrayAccessibleOutputStream(); @@ -47,7 +47,6 @@ public void convertString(UTF8StringPointable stringp, DataOutput dOut) throws S baaos.reset(); Base64OutputStream b64os = new Base64OutputStream(baaos, false); b64os.write(stringp.getByteArray(), stringp.getStartOffset() + 2, stringp.getLength() - 2); - b64os.close(); dOut.write(ValueTag.XS_BASE64_BINARY_TAG); dOut.write((byte) ((baaos.size() >>> 8) & 0xFF)); @@ -59,4 +58,4 @@ public void convertString(UTF8StringPointable stringp, DataOutput dOut) throws S public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) throws SystemException, IOException { convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToBooleanOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToBooleanOperation.java index edfae6600..e62f8f063 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToBooleanOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToBooleanOperation.java @@ -27,11 +27,11 @@ import org.apache.vxquery.runtime.functions.strings.LowerCaseCharacterIterator; import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastToBooleanOperation extends AbstractCastToOperation { @@ -116,4 +116,4 @@ public void convertString(UTF8StringPointable stringp, DataOutput dOut) throws S public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) throws SystemException, IOException { convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToByteOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToByteOperation.java index cc9b88e23..ab9b4f46a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToByteOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToByteOperation.java @@ -26,15 +26,15 @@ import org.apache.vxquery.runtime.functions.strings.ICharacterIterator; import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; -import org.apache.hyracks.data.std.api.INumeric; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.api.INumeric; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastToByteOperation extends AbstractCastToOperation { boolean negativeAllowed = true; @@ -188,4 +188,4 @@ private void writeByteValue(INumeric numericp, DataOutput dOut) throws SystemExc dOut.write(returnTag); dOut.write(numericp.byteValue()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDTDurationOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDTDurationOperation.java index 709043ddd..e5f1b4cd3 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDTDurationOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDTDurationOperation.java @@ -27,9 +27,9 @@ import org.apache.vxquery.runtime.functions.strings.ICharacterIterator; import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastToDTDurationOperation extends AbstractCastToOperation { @@ -116,4 +116,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDateOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDateOperation.java index 81919d97f..b84536285 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDateOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDateOperation.java @@ -28,7 +28,7 @@ import org.apache.vxquery.runtime.functions.strings.ICharacterIterator; import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastToDateOperation extends AbstractCastToOperation { @@ -114,4 +114,4 @@ public void convertString(UTF8StringPointable stringp, DataOutput dOut) throws S public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) throws SystemException, IOException { convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDateTimeOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDateTimeOperation.java index 4d191b70c..a62c6614f 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDateTimeOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDateTimeOperation.java @@ -28,7 +28,7 @@ import org.apache.vxquery.runtime.functions.strings.ICharacterIterator; import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastToDateTimeOperation extends AbstractCastToOperation { @@ -137,4 +137,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDecimalOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDecimalOperation.java index 8117d0ebb..fde37b210 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDecimalOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDecimalOperation.java @@ -26,16 +26,16 @@ import org.apache.vxquery.runtime.functions.strings.ICharacterIterator; import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; -import org.apache.hyracks.data.std.api.INumeric; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.api.INumeric; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastToDecimalOperation extends AbstractCastToOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -66,12 +66,8 @@ public void convertDouble(DoublePointable doublep, DataOutput dOut) throws Syste throw new SystemException(ErrorCode.FORG0001); } } - if (Double.isNaN(doublep.getDouble()) || Double.isInfinite(doublep.getDouble())) { - throw new SystemException(ErrorCode.FORG0001); - } abvsInner.reset(); - dOutInner.write(ValueTag.XS_STRING_TAG); - dOutInner.writeUTF(Double.toString(doublep.getDouble())); + castToString.convertDoubleCanonical(doublep, dOutInner); stringp.set(abvsInner.getByteArray(), abvsInner.getStartOffset() + 1, abvsInner.getLength() - 1); convertStringExtra(stringp, dOut, true); } @@ -93,7 +89,9 @@ public void convertFloat(FloatPointable floatp, DataOutput dOut) throws SystemEx @Override public void convertInteger(LongPointable longp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDecimal(longp, dOut); + dOut.write(ValueTag.XS_DECIMAL_TAG); + dOut.write((byte) 0); + dOut.writeLong(longp.getLong()); } @Override @@ -181,66 +179,57 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t * Derived Datatypes */ public void convertByte(BytePointable bytep, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDecimal(bytep, dOut); + writeDecimalValue(bytep, dOut); } public void convertInt(IntegerPointable intp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDecimal(intp, dOut); + writeDecimalValue(intp, dOut); } public void convertLong(LongPointable longp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDecimal(longp, dOut); + writeDecimalValue(longp, dOut); } public void convertNegativeInteger(LongPointable longp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDecimal(longp, dOut); + writeDecimalValue(longp, dOut); } public void convertNonNegativeInteger(LongPointable longp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDecimal(longp, dOut); + writeDecimalValue(longp, dOut); } public void convertNonPositiveInteger(LongPointable longp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDecimal(longp, dOut); + writeDecimalValue(longp, dOut); } public void convertPositiveInteger(LongPointable longp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDecimal(longp, dOut); + writeDecimalValue(longp, dOut); } public void convertShort(ShortPointable shortp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDecimal(shortp, dOut); + writeDecimalValue(shortp, dOut); } public void convertUnsignedByte(ShortPointable shortp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDecimal(shortp, dOut); + writeDecimalValue(shortp, dOut); } public void convertUnsignedInt(LongPointable longp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDecimal(longp, dOut); + writeDecimalValue(longp, dOut); } public void convertUnsignedLong(LongPointable longp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDecimal(longp, dOut); + writeDecimalValue(longp, dOut); } public void convertUnsignedShort(IntegerPointable intp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDecimal(intp, dOut); + writeDecimalValue(intp, dOut); } - private void writeIntegerAsDecimal(INumeric numericp, DataOutput dOut) throws SystemException, IOException { - byte decimalPlace = 0; - long value = numericp.longValue(); - - // Normalize the value and take off trailing zeros. - while (value != 0 && value % 10 == 0) { - value /= 10; - --decimalPlace; - } - + private void writeDecimalValue(INumeric numericp, DataOutput dOut) throws SystemException, IOException { dOut.write(ValueTag.XS_DECIMAL_TAG); - dOut.write(decimalPlace); - dOut.writeLong(value); + dOut.write((byte) 0); + dOut.writeLong(numericp.longValue()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDoubleOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDoubleOperation.java index ee0392857..499c1d378 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDoubleOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDoubleOperation.java @@ -26,17 +26,24 @@ import org.apache.vxquery.runtime.functions.strings.ICharacterIterator; import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; -import org.apache.hyracks.data.std.api.INumeric; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.api.INumeric; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastToDoubleOperation extends AbstractCastToOperation { + /* + * All the positive powers of 10 that can be represented exactly in float. + */ + private static final double powersOf10[] = { 1.0e0, 1.0e1, 1.0e2, 1.0e3, 1.0e4, 1.0e5, 1.0e6, 1.0e7, 1.0e8, 1.0e9, + 1.0e10, 1.0e11, 1.0e12, 1.0e13, 1.0e14, 1.0e15, 1.0e16, 1.0e17, 1.0e18, 1.0e19, 1.0e20, 1.0e21, 1.0e22 }; + private static final double powersOf2[] = { 1.0e16d, 1.0e32f, 1.0e64, 1.0e128, 1.0e256 }; + @Override public void convertBoolean(BooleanPointable boolp, DataOutput dOut) throws SystemException, IOException { double value = (boolp.getBoolean() ? 1 : 0); @@ -66,24 +73,30 @@ public void convertFloat(FloatPointable floatp, DataOutput dOut) throws SystemEx @Override public void convertInteger(LongPointable longp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDouble(longp, dOut); + double value = longp.doubleValue(); + dOut.write(ValueTag.XS_DOUBLE_TAG); + dOut.writeDouble(value); } @Override public void convertString(UTF8StringPointable stringp, DataOutput dOut) throws SystemException, IOException { ICharacterIterator charIterator = new UTF8StringCharacterIterator(stringp); charIterator.reset(); + short decimalPlace = 0; + long value = 0; double valueDouble; - boolean negativeValue = false; + boolean pastDecimal = false, negativeValue = false; int c = ICharacterIterator.EOS_CHAR; int c2 = ICharacterIterator.EOS_CHAR; int c3 = ICharacterIterator.EOS_CHAR; + long limit = -Long.MAX_VALUE; // Check sign. c = charIterator.next(); if (c == Character.valueOf('-')) { negativeValue = true; c = charIterator.next(); + limit = Long.MIN_VALUE; } // Check the special cases. if (c == Character.valueOf('I') || c == Character.valueOf('N')) { @@ -92,29 +105,129 @@ public void convertString(UTF8StringPointable stringp, DataOutput dOut) throws S if (charIterator.next() != ICharacterIterator.EOS_CHAR) { throw new SystemException(ErrorCode.FORG0001); } else if (c == Character.valueOf('I') && c2 == Character.valueOf('N') && c3 == Character.valueOf('F')) { - if (negativeValue) { - valueDouble = Double.NEGATIVE_INFINITY; - } else { - valueDouble = Double.POSITIVE_INFINITY; - } + valueDouble = Double.NEGATIVE_INFINITY; } else if (c == Character.valueOf('N') && c2 == Character.valueOf('a') && c3 == Character.valueOf('N')) { valueDouble = Double.NaN; } else { throw new SystemException(ErrorCode.FORG0001); } } else { - // We create an object to keep the conversion algorithm simple and improve precision. - // While a better solution may be available this will hold us over until then. - StringBuilder sb = new StringBuilder(); - stringp.toString(sb); - try { - valueDouble = Double.parseDouble(sb.toString()); - } catch (NumberFormatException e) { - throw new SystemException(ErrorCode.FORG0001); + // Read in the number. + do { + if (Character.isDigit(c)) { + if (value < limit / 10 + Character.getNumericValue(c)) { + throw new SystemException(ErrorCode.FOCA0006); + } + value = value * 10 - Character.getNumericValue(c); + if (pastDecimal) { + decimalPlace--; + } + } else if (c == Character.valueOf('.') && pastDecimal == false) { + pastDecimal = true; + } else if (c == Character.valueOf('E') || c == Character.valueOf('e')) { + break; + } else { + throw new SystemException(ErrorCode.FORG0001); + } + } while ((c = charIterator.next()) != ICharacterIterator.EOS_CHAR); + + // Parse the exponent. + if (c == Character.valueOf('E') || c == Character.valueOf('e')) { + int moveOffset = 0; + boolean negativeOffset = false; + // Check for the negative sign. + c = charIterator.next(); + if (c == Character.valueOf('-')) { + negativeOffset = true; + c = charIterator.next(); + } + // Process the numeric value. + do { + if (Character.isDigit(c)) { + moveOffset = moveOffset * 10 + Character.getNumericValue(c); + } else { + throw new SystemException(ErrorCode.FORG0001); + } + } while ((c = charIterator.next()) != ICharacterIterator.EOS_CHAR); + if (moveOffset > 324 || moveOffset < -324) { + throw new SystemException(ErrorCode.FOCA0006); + } + decimalPlace += (negativeOffset ? -moveOffset : moveOffset); } + + /* + * The following conditions to create the floating point value is using known valid float values. + * In addition, each one only needs one or two operations to get the float value, further minimizing + * possible errors. (Not perfect, but pretty good.) + */ + valueDouble = (double) value; + if (decimalPlace == 0 || valueDouble == 0.0f) { + // No modification required to float value. + } else if (decimalPlace >= 0) { + if (decimalPlace <= 16) { + valueDouble *= powersOf10[decimalPlace]; + } else { + // Multiply the value based on the exponent binary. + if ((decimalPlace & 15) != 0) { + valueDouble *= powersOf10[decimalPlace & 15]; + } + if ((decimalPlace >>= 4) != 0) { + int j; + for (j = 0; decimalPlace > 1; j++, decimalPlace >>= 1) { + if ((decimalPlace & 1) != 0) + valueDouble *= powersOf2[j]; + } + // Handle the last cast for infinity and max value. + double t = valueDouble * powersOf2[j]; + if (Double.isInfinite(t)) { + // Overflow + t = valueDouble / 2.0; + t *= powersOf2[j]; + if (Double.isInfinite(t)) { + valueDouble = Double.POSITIVE_INFINITY; + } + t = -Double.MAX_VALUE; + } + valueDouble = t; + } + } + } else { + if (decimalPlace >= -16) { + valueDouble /= powersOf10[-decimalPlace]; + } else { + if ((decimalPlace & 15) != 0) { + valueDouble /= powersOf10[decimalPlace & 15]; + } + if ((decimalPlace >>= 4) != 0) { + int j; + for (j = 0; decimalPlace > 1; j++, decimalPlace >>= 1) { + if ((decimalPlace & 1) != 0) + valueDouble /= powersOf2[j]; + } + // Handle the last cast for zero and min value. + double t = valueDouble / powersOf2[j]; + if (t == 0.0) { + // Underflow. + t = valueDouble * 2.0; + t /= powersOf2[j]; + if (t == 0.0) { + valueDouble = 0.0; + } + t = Double.MIN_VALUE; + } + valueDouble = t; + } + } + } + } + dOut.write(ValueTag.XS_DOUBLE_TAG); - dOut.writeDouble(valueDouble); + if (valueDouble == 0.0) { + dOut.writeDouble((negativeValue ? -0.0 : 0.0)); + } else { + dOut.writeDouble((negativeValue ? valueDouble : -valueDouble)); + } } @Override @@ -126,56 +239,56 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t * Derived Datatypes */ public void convertByte(BytePointable bytep, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDouble(bytep, dOut); + writeDoubleValue(bytep, dOut); } public void convertInt(IntegerPointable intp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDouble(intp, dOut); + writeDoubleValue(intp, dOut); } public void convertLong(LongPointable longp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDouble(longp, dOut); + writeDoubleValue(longp, dOut); } public void convertNegativeInteger(LongPointable longp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDouble(longp, dOut); + writeDoubleValue(longp, dOut); } public void convertNonNegativeInteger(LongPointable longp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDouble(longp, dOut); + writeDoubleValue(longp, dOut); } public void convertNonPositiveInteger(LongPointable longp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDouble(longp, dOut); + writeDoubleValue(longp, dOut); } public void convertPositiveInteger(LongPointable longp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDouble(longp, dOut); + writeDoubleValue(longp, dOut); } public void convertShort(ShortPointable shortp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDouble(shortp, dOut); + writeDoubleValue(shortp, dOut); } public void convertUnsignedByte(ShortPointable shortp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDouble(shortp, dOut); + writeDoubleValue(shortp, dOut); } public void convertUnsignedInt(LongPointable longp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDouble(longp, dOut); + writeDoubleValue(longp, dOut); } public void convertUnsignedLong(LongPointable longp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDouble(longp, dOut); + writeDoubleValue(longp, dOut); } public void convertUnsignedShort(IntegerPointable intp, DataOutput dOut) throws SystemException, IOException { - writeIntegerAsDouble(intp, dOut); + writeDoubleValue(intp, dOut); } - private void writeIntegerAsDouble(INumeric numericp, DataOutput dOut) throws SystemException, IOException { + private void writeDoubleValue(INumeric numericp, DataOutput dOut) throws SystemException, IOException { dOut.write(ValueTag.XS_DOUBLE_TAG); dOut.writeDouble(numericp.doubleValue()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDurationOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDurationOperation.java index 776f39a22..070c1083d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDurationOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToDurationOperation.java @@ -27,9 +27,9 @@ import org.apache.vxquery.runtime.functions.strings.ICharacterIterator; import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastToDurationOperation extends AbstractCastToOperation { @@ -129,4 +129,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToEntityOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToEntityOperation.java index bdcf4cc1a..88676d56e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToEntityOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToEntityOperation.java @@ -24,4 +24,4 @@ public CastToEntityOperation() { returnTag = ValueTag.XS_ENTITY_TAG; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToFloatOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToFloatOperation.java index 5009a64cf..d311c4c25 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToFloatOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToFloatOperation.java @@ -26,20 +26,24 @@ import org.apache.vxquery.runtime.functions.strings.ICharacterIterator; import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; -import org.apache.hyracks.data.std.api.INumeric; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.api.INumeric; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastToFloatOperation extends AbstractCastToOperation { /* * All the positive powers of 10 that can be represented exactly in float. */ + private static final float powersOf10upTo10[] = { 1.0e0f, 1.0e1f, 1.0e2f, 1.0e3f, 1.0e4f, 1.0e5f, 1.0e6f, 1.0e7f, + 1.0e8f, 1.0e9f, 1.0e10f }; + private static final float powersOf10from20to30[] = { 1.0e20f, 1.0e21f, 1.0e22f, 1.0e23f, 1.0e24f, 1.0e25f, + 1.0e26f, 1.0e27f, 1.0e28f, 1.0e29f, 1.0e30f }; @Override public void convertBoolean(BooleanPointable boolp, DataOutput dOut) throws SystemException, IOException { @@ -79,8 +83,10 @@ public void convertInteger(LongPointable longp, DataOutput dOut) throws SystemEx public void convertString(UTF8StringPointable stringp, DataOutput dOut) throws SystemException, IOException { ICharacterIterator charIterator = new UTF8StringCharacterIterator(stringp); charIterator.reset(); + byte decimalPlace = 0; + long value = 0; float valueFloat; - boolean negativeValue = false; + boolean pastDecimal = false, negativeValue = false; int c = ICharacterIterator.EOS_CHAR; int c2 = ICharacterIterator.EOS_CHAR; int c3 = ICharacterIterator.EOS_CHAR; @@ -98,31 +104,94 @@ public void convertString(UTF8StringPointable stringp, DataOutput dOut) throws S if (charIterator.next() != ICharacterIterator.EOS_CHAR) { throw new SystemException(ErrorCode.FORG0001); } else if (c == Character.valueOf('I') && c2 == Character.valueOf('N') && c3 == Character.valueOf('F')) { - if (negativeValue) { - valueFloat = Float.NEGATIVE_INFINITY; - } else { - valueFloat = Float.POSITIVE_INFINITY; - } + valueFloat = Float.NEGATIVE_INFINITY; } else if (c == Character.valueOf('N') && c2 == Character.valueOf('a') && c3 == Character.valueOf('N')) { valueFloat = Float.NaN; } else { throw new SystemException(ErrorCode.FORG0001); } } else { - // We create an object to keep the conversion algorithm simple and improve precision. - // While a better solution may be available this will hold us over until then. - StringBuilder sb = new StringBuilder(); - stringp.toString(sb); - try { - valueFloat = Float.parseFloat(sb.toString()); - } catch (NumberFormatException e) { - throw new SystemException(ErrorCode.FORG0001); + // Read in the number. + do { + if (Character.isDigit(c)) { + value = value * 10 - Character.getNumericValue(c); + if (pastDecimal) { + decimalPlace--; + } + } else if (c == Character.valueOf('.') && pastDecimal == false) { + pastDecimal = true; + } else if (c == Character.valueOf('E') || c == Character.valueOf('e')) { + break; + } else { + throw new SystemException(ErrorCode.FORG0001); + } + } while ((c = charIterator.next()) != ICharacterIterator.EOS_CHAR); + + // Parse the exponent. + if (c == Character.valueOf('E') || c == Character.valueOf('e')) { + int moveOffset = 0; + boolean negativeOffset = false; + // Check for the negative sign. + c = charIterator.next(); + if (c == Character.valueOf('-')) { + negativeOffset = true; + c = charIterator.next(); + } + // Process the numeric value. + do { + if (Character.isDigit(c)) { + moveOffset = moveOffset * 10 + Character.getNumericValue(c); + } else { + throw new SystemException(ErrorCode.FORG0001); + } + } while ((c = charIterator.next()) != ICharacterIterator.EOS_CHAR); + decimalPlace += (negativeOffset ? -moveOffset : moveOffset); + } + + /* + * The following conditions to create the floating point value is using known valid float values. + * In addition, each one only needs one or two operations to get the float value, further minimizing + * possible errors. (Not perfect, but pretty good.) + */ + valueFloat = (float) value; + if (decimalPlace == 0 || valueFloat == 0.0f) { + // No modification required to float value. + } else if (decimalPlace >= 0) { + if (decimalPlace <= 10) { + valueFloat *= powersOf10upTo10[decimalPlace]; + } else if (decimalPlace <= 20) { + valueFloat *= powersOf10upTo10[10]; + valueFloat *= powersOf10upTo10[decimalPlace - 10]; + } else if (decimalPlace <= 30) { + valueFloat *= powersOf10from20to30[decimalPlace]; + } else if (decimalPlace <= 38) { + valueFloat *= powersOf10from20to30[10]; + valueFloat *= powersOf10upTo10[decimalPlace - 30]; + } + } else { + if (decimalPlace >= -10) { + valueFloat /= powersOf10upTo10[-decimalPlace]; + } else if (decimalPlace >= -20) { + valueFloat /= powersOf10upTo10[10]; + valueFloat /= powersOf10upTo10[-decimalPlace - 10]; + } else if (decimalPlace >= -30) { + valueFloat /= powersOf10from20to30[-decimalPlace]; + } else if (decimalPlace >= -40) { + valueFloat /= powersOf10from20to30[10]; + valueFloat /= powersOf10upTo10[-decimalPlace - 30]; + } else if (decimalPlace >= -45) { + valueFloat /= powersOf10from20to30[0]; + valueFloat /= powersOf10from20to30[-decimalPlace - 20]; + } } } dOut.write(ValueTag.XS_FLOAT_TAG); - dOut.writeFloat(valueFloat); - + if (valueFloat == 0.0f) { + dOut.writeFloat((negativeValue ? -0.0f : 0.0f)); + } else { + dOut.writeFloat((negativeValue ? valueFloat : -valueFloat)); + } } @Override @@ -186,4 +255,4 @@ private void writeDoubleValue(INumeric numericp, DataOutput dOut) throws SystemE dOut.writeFloat(numericp.floatValue()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToGDayOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToGDayOperation.java index 76bac786d..0e01d3f54 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToGDayOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToGDayOperation.java @@ -28,7 +28,7 @@ import org.apache.vxquery.runtime.functions.strings.ICharacterIterator; import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastToGDayOperation extends AbstractCastToOperation { @@ -117,4 +117,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToGMonthDayOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToGMonthDayOperation.java index 92832a9d2..ab92cc28b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToGMonthDayOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToGMonthDayOperation.java @@ -28,7 +28,7 @@ import org.apache.vxquery.runtime.functions.strings.ICharacterIterator; import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastToGMonthDayOperation extends AbstractCastToOperation { @@ -117,4 +117,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToGMonthOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToGMonthOperation.java index f8979c6d3..3cd1edfcd 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToGMonthOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToGMonthOperation.java @@ -28,7 +28,7 @@ import org.apache.vxquery.runtime.functions.strings.ICharacterIterator; import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastToGMonthOperation extends AbstractCastToOperation { @@ -117,4 +117,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToGYearMonthOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToGYearMonthOperation.java index 181782479..99cdb4814 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToGYearMonthOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToGYearMonthOperation.java @@ -28,7 +28,7 @@ import org.apache.vxquery.runtime.functions.strings.ICharacterIterator; import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastToGYearMonthOperation extends AbstractCastToOperation { @@ -138,4 +138,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToGYearOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToGYearOperation.java index 22c1168df..08d589a46 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToGYearOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToGYearOperation.java @@ -28,7 +28,7 @@ import org.apache.vxquery.runtime.functions.strings.ICharacterIterator; import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastToGYearOperation extends AbstractCastToOperation { @@ -124,4 +124,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToHexBinaryOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToHexBinaryOperation.java index f29c71a5d..8bd6e359b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToHexBinaryOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToHexBinaryOperation.java @@ -26,8 +26,8 @@ import org.apache.vxquery.runtime.functions.strings.ICharacterIterator; import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastToHexBinaryOperation extends AbstractCastToOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -76,4 +76,4 @@ public void convertString(UTF8StringPointable stringp, DataOutput dOut) throws S public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) throws SystemException, IOException { convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToIDOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToIDOperation.java index 13d00e332..98272472b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToIDOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToIDOperation.java @@ -24,4 +24,4 @@ public CastToIDOperation() { returnTag = ValueTag.XS_ID_TAG; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToIDREFOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToIDREFOperation.java index f1ea0f864..745bbf06d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToIDREFOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToIDREFOperation.java @@ -24,4 +24,4 @@ public CastToIDREFOperation() { returnTag = ValueTag.XS_IDREF_TAG; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToIntOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToIntOperation.java index fc6742bce..43227ad24 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToIntOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToIntOperation.java @@ -26,15 +26,15 @@ import org.apache.vxquery.runtime.functions.strings.ICharacterIterator; import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; -import org.apache.hyracks.data.std.api.INumeric; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.api.INumeric; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastToIntOperation extends AbstractCastToOperation { boolean negativeAllowed = true; @@ -188,4 +188,4 @@ private void writeIntValue(INumeric numericp, DataOutput dOut) throws SystemExce dOut.write(returnTag); dOut.writeInt(numericp.intValue()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToIntegerOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToIntegerOperation.java index fa7c8587d..440c802ae 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToIntegerOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToIntegerOperation.java @@ -26,15 +26,15 @@ import org.apache.vxquery.runtime.functions.strings.ICharacterIterator; import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; -import org.apache.hyracks.data.std.api.INumeric; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.api.INumeric; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastToIntegerOperation extends AbstractCastToOperation { boolean negativeAllowed = true; @@ -190,4 +190,4 @@ private void writeIntegerValue(INumeric numericp, DataOutput dOut) throws System dOut.write(returnTag); dOut.writeLong(numericp.longValue()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToLanguageOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToLanguageOperation.java index 37c5e22d6..244117b59 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToLanguageOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToLanguageOperation.java @@ -24,4 +24,4 @@ public CastToLanguageOperation() { returnTag = ValueTag.XS_LANGUAGE_TAG; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToLongOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToLongOperation.java index c5e64a3d0..599afe667 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToLongOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToLongOperation.java @@ -25,4 +25,4 @@ public CastToLongOperation() { returnTag = ValueTag.XS_LONG_TAG; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNCNameOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNCNameOperation.java index 3150fcab3..21010e8b0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNCNameOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNCNameOperation.java @@ -24,4 +24,4 @@ public CastToNCNameOperation() { returnTag = ValueTag.XS_NCNAME_TAG; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNMTokenOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNMTokenOperation.java index bab513786..058b903d1 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNMTokenOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNMTokenOperation.java @@ -24,4 +24,4 @@ public CastToNMTokenOperation() { returnTag = ValueTag.XS_NMTOKEN_TAG; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNameOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNameOperation.java index 06e912072..719156dac 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNameOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNameOperation.java @@ -24,4 +24,4 @@ public CastToNameOperation() { returnTag = ValueTag.XS_NAME_TAG; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNegativeIntegerOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNegativeIntegerOperation.java index 9bcc10839..3c719f173 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNegativeIntegerOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNegativeIntegerOperation.java @@ -26,4 +26,4 @@ public CastToNegativeIntegerOperation() { returnTag = ValueTag.XS_NEGATIVE_INTEGER_TAG; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNonNegativeIntegerOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNonNegativeIntegerOperation.java index 0d79aad05..9d57ccf61 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNonNegativeIntegerOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNonNegativeIntegerOperation.java @@ -25,4 +25,4 @@ public CastToNonNegativeIntegerOperation() { returnTag = ValueTag.XS_NON_NEGATIVE_INTEGER_TAG; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNonPositiveIntegerOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNonPositiveIntegerOperation.java index f00a73340..081fc1e94 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNonPositiveIntegerOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNonPositiveIntegerOperation.java @@ -26,4 +26,4 @@ public CastToNonPositiveIntegerOperation() { returnTag = ValueTag.XS_NON_POSITIVE_INTEGER_TAG; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNormalizedStringOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNormalizedStringOperation.java index eadf9eb71..832a15925 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNormalizedStringOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNormalizedStringOperation.java @@ -24,4 +24,4 @@ public CastToNormalizedStringOperation() { returnTag = ValueTag.XS_NORMALIZED_STRING_TAG; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNotationOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNotationOperation.java index 4cc1025ae..f49e8625c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNotationOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToNotationOperation.java @@ -22,7 +22,7 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastToNotationOperation extends AbstractCastToOperation { @@ -38,4 +38,4 @@ public void convertString(UTF8StringPointable stringp, DataOutput dOut) throws S dOut.write(stringp.getByteArray(), stringp.getStartOffset(), stringp.getLength()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToPositiveIntegerOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToPositiveIntegerOperation.java index 050eb04a7..93a06d6b1 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToPositiveIntegerOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToPositiveIntegerOperation.java @@ -25,4 +25,4 @@ public CastToPositiveIntegerOperation() { returnTag = ValueTag.XS_POSITIVE_INTEGER_TAG; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToQNameOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToQNameOperation.java index e400af701..da7e6d46f 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToQNameOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToQNameOperation.java @@ -26,8 +26,8 @@ import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastToQNameOperation extends AbstractCastToOperation { ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -69,4 +69,4 @@ public void convertString(UTF8StringPointable stringp, DataOutput dOut) throws S dOut.write(abvsInner.getByteArray(), abvsInner.getStartOffset() + prefixLength, localNameLength); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToShortOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToShortOperation.java index 5b63dec2e..ab7c310c0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToShortOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToShortOperation.java @@ -26,15 +26,15 @@ import org.apache.vxquery.runtime.functions.strings.ICharacterIterator; import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; -import org.apache.hyracks.data.std.api.INumeric; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.api.INumeric; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastToShortOperation extends AbstractCastToOperation { boolean negativeAllowed = true; @@ -188,4 +188,4 @@ private void writeShortValue(INumeric numericp, DataOutput dOut) throws SystemEx dOut.write(returnTag); dOut.writeShort(numericp.shortValue()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToStringOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToStringOperation.java index 1622aaa10..90c6218fb 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToStringOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToStringOperation.java @@ -32,16 +32,16 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; -import org.apache.hyracks.data.std.util.ByteArrayAccessibleOutputStream; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.util.ByteArrayAccessibleOutputStream; public class CastToStringOperation extends AbstractCastToOperation { private ByteArrayAccessibleOutputStream baaos = new ByteArrayAccessibleOutputStream(); @@ -49,6 +49,16 @@ public class CastToStringOperation extends AbstractCastToOperation { private DataOutput dOutInner = abvsInner.getDataOutput(); int returnTag = ValueTag.XS_STRING_TAG; private final char[] hex = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' }; + private static final int DOUBLE_MANTISSA_BITS = 52; // size of the mantissa in bits + private static final int DOUBLE_MANTISSA_OFFSET = -1075; + private static final int DOUBLE_EXPONENT_MAX = 1023; + private static final int DOUBLE_EXPONENT_MIN = -1022; + private static final int FLOAT_MANTISSA_BITS = 23; // size of the mantissa in bits + private static final int FLOAT_MANTISSA_OFFSET = -150; + private static final int FLOAT_EXPONENT_MAX = 127; + private static final int FLOAT_EXPONENT_MIN = -126; + private static final int b = 2; // base of stored value + private static final int B = 10; // base of printed value @Override public void convertAnyURI(UTF8StringPointable stringp, DataOutput dOut) throws SystemException, IOException { @@ -59,7 +69,6 @@ public void convertAnyURI(UTF8StringPointable stringp, DataOutput dOut) throws S @Override public void convertBase64Binary(XSBinaryPointable binaryp, DataOutput dOut) throws SystemException, IOException { baaos.reset(); - @SuppressWarnings("resource") Base64OutputStream b64os = new Base64OutputStream(baaos, true); b64os.write(binaryp.getByteArray(), binaryp.getStartOffset() + 2, binaryp.getLength() - 2); @@ -141,15 +150,14 @@ public void convertDouble(DoublePointable doublep, DataOutput dOut) throws Syste abvsInner.reset(); double value = doublep.getDouble(); - if (Double.isInfinite(value)) { - if (value == Double.NEGATIVE_INFINITY) { - FunctionHelper.writeCharSequence("-", dOutInner); - } - FunctionHelper.writeCharSequence("INF", dOutInner); - sendStringDataOutput(dOut); - } else if (Double.isNaN(value)) { - FunctionHelper.writeCharSequence("NaN", dOutInner); - sendStringDataOutput(dOut); + if (!Double.isInfinite(value) && !Double.isNaN(value) && Math.abs(value) >= 0.000001 + && Math.abs(value) <= 1000000) { + CastToDecimalOperation castToDecimal = new CastToDecimalOperation(); + castToDecimal.convertDouble(doublep, dOutInner); + XSDecimalPointable decp = (XSDecimalPointable) XSDecimalPointable.FACTORY.createPointable(); + decp.set(abvsInner.getByteArray(), abvsInner.getStartOffset() + 1, + XSDecimalPointable.TYPE_TRAITS.getFixedLength()); + convertDecimal(decp, dOut); } else if (value == -0.0 || value == 0.0) { long bits = Double.doubleToLongBits(value); boolean negative = ((bits >> 63) == 0) ? false : true; @@ -159,23 +167,8 @@ public void convertDouble(DoublePointable doublep, DataOutput dOut) throws Syste } FunctionHelper.writeCharSequence("0", dOutInner); sendStringDataOutput(dOut); - } else if (Math.abs(value) >= 0.000001 && Math.abs(value) <= 10000000) { - //the jdk (toString function) does not output number in desired format when - //a number is between one and ten million, so we take care of this - //case separately here. - CastToDecimalOperation castToDecimal = new CastToDecimalOperation(); - castToDecimal.convertDouble(doublep, dOutInner); - XSDecimalPointable decp = (XSDecimalPointable) XSDecimalPointable.FACTORY.createPointable(); - decp.set(abvsInner.getByteArray(), abvsInner.getStartOffset() + 1, - XSDecimalPointable.TYPE_TRAITS.getFixedLength()); - if (Math.abs(value) <= 1000000) { - convertDecimal(decp, dOut); - } else { - decimalToScientificNotn(decp, dOut); - } } else { - dOut.write(returnTag); - dOut.writeUTF(Double.toString(value)); + convertDoubleCanonical(doublep, dOut); } } @@ -183,9 +176,109 @@ public void convertDoubleCanonical(DoublePointable doublep, DataOutput dOut) thr abvsInner.reset(); double value = doublep.getDouble(); - dOut.write(returnTag); - dOut.writeUTF(Double.toString(value)); - return; + if (Double.isInfinite(value)) { + if (value == Double.NEGATIVE_INFINITY) { + FunctionHelper.writeCharSequence("-", dOutInner); + } + FunctionHelper.writeCharSequence("INF", dOutInner); + } else if (Double.isNaN(value)) { + FunctionHelper.writeCharSequence("NaN", dOutInner); + } else { + /* + * The double to string algorithm is based on a paper by Robert G Burger and + * R Kent Dybvig titled "Print Floating-Point Numbers Quickly and Accurately". + */ + long bits = Double.doubleToLongBits(value); + boolean decimalPlaced = false; + + boolean negative = ((bits >> 63) == 0) ? false : true; + int e = (int) ((bits >> 52) & 0x7ffL); + long f = (e == 0) ? (bits & 0xfffffffffffffL) << 1 : (bits & 0xfffffffffffffL) | 0x10000000000000L; + e = e + DOUBLE_MANTISSA_OFFSET; + + if (negative) { + FunctionHelper.writeChar('-', dOutInner); + } + if (value == 0) { + FunctionHelper.writeCharSequence("0.0E0", dOutInner); + } else { + // Initialize variables + double r, s, mPlus, mMinus; + if (e >= 0) { + if (f == Math.pow(b, DOUBLE_MANTISSA_BITS - 1)) { + r = f * Math.pow(b, e) * 2; + s = 2; + mPlus = Math.pow(b, e); + mMinus = Math.pow(b, e + 1); + } else { + r = f * Math.pow(b, e + 1) * 2; + s = b * 2; + mPlus = Math.pow(b, e); + mMinus = Math.pow(b, e); + } + } else { + if (e == DOUBLE_EXPONENT_MIN || f != Math.pow(b, DOUBLE_MANTISSA_BITS - 1)) { + r = f * Math.pow(b, e) * 2; + s = 2; + mPlus = Math.pow(b, e); + mMinus = Math.pow(b, e + 1); + } else { + r = f * Math.pow(b, e + 1) * 2; + s = b * 2; + mPlus = Math.pow(b, e); + mMinus = Math.pow(b, e); + } + } + + double k = Math.ceil(Math.log10((r + mPlus) / s)); + if (k >= 0) { + s = s * Math.pow(B, k); + } else { + r = r * Math.pow(B, -k); + mPlus = mPlus * Math.pow(B, -k); + mMinus = mMinus * Math.pow(B, -k); + } + + double d; + while (!Double.isInfinite(mPlus) && !Double.isNaN(mPlus) && !Double.isInfinite(mMinus) + && !Double.isNaN(mMinus) && !Double.isInfinite(r) && !Double.isNaN(r)) { + if (s == r) { + // Special case where the value is off by a factor of ten. + d = 1; + } else { + d = Math.floor((r * B) / s); + } + r = r * B % s; + mPlus = mPlus * B; + mMinus = mMinus * B; + + if (r < mMinus && r + mPlus > s) { + if (r * 2 > s) { + d = d + 1; + } + FunctionHelper.writeChar((char) ('0' + d), dOutInner); + break; + } else if (r + mPlus > s) { + d = d + 1; + FunctionHelper.writeChar((char) ('0' + d), dOutInner); + break; + } else if (r < mMinus) { + FunctionHelper.writeChar((char) ('0' + d), dOutInner); + break; + } + FunctionHelper.writeChar((char) ('0' + d), dOutInner); + if (!decimalPlaced) { + decimalPlaced = true; + FunctionHelper.writeChar('.', dOutInner); + } + } + + long decimalPlace = FunctionHelper.getPowerOf10(value, DOUBLE_EXPONENT_MAX, DOUBLE_EXPONENT_MIN) - 1; + FunctionHelper.writeChar('E', dOutInner); + FunctionHelper.writeNumberWithPadding(decimalPlace, 1, dOutInner); + } + } + sendStringDataOutput(dOut); } @Override @@ -341,9 +434,99 @@ public void convertFloatCanonical(FloatPointable floatp, DataOutput dOut) throws } else if (Float.isNaN(value)) { FunctionHelper.writeCharSequence("NaN", dOutInner); } else { - dOut.write(returnTag); - dOut.writeUTF(Float.toString(value)); - return; + /* + * The double to string algorithm is based on a paper by Robert G Burger and + * R Kent Dybvig titled "Print Floating-Point Numbers Quickly and Accurately". + */ + long bits = Float.floatToIntBits(value); + boolean decimalPlaced = false; + + boolean negative = ((bits >> 31) == 0) ? false : true; + int e = (int) ((bits >> 23) & 0xff); + int f = (int) ((e == 0) ? (bits & 0x7fffff) << 1 : (bits & 0x7fffff) | 0x800000); + e = e + FLOAT_MANTISSA_OFFSET; + + if (negative) { + FunctionHelper.writeChar('-', dOutInner); + } + if (value == 0) { + FunctionHelper.writeCharSequence("0.0E0", dOutInner); + } else { + // Initialize variables + double r, s, mPlus, mMinus; + if (e >= 0) { + if (f == Math.pow(b, FLOAT_MANTISSA_BITS - 1)) { + r = f * Math.pow(b, e) * 2; + s = 2; + mPlus = Math.pow(b, e); + mMinus = Math.pow(b, e + 1); + } else { + r = f * Math.pow(b, e + 1) * 2; + s = b * 2; + mPlus = Math.pow(b, e); + mMinus = Math.pow(b, e); + } + } else { + if (e == FLOAT_EXPONENT_MIN || f != Math.pow(b, FLOAT_MANTISSA_BITS - 1)) { + r = f * Math.pow(b, e) * 2; + s = 2; + mPlus = Math.pow(b, e); + mMinus = Math.pow(b, e + 1); + } else { + r = f * Math.pow(b, e + 1) * 2; + s = b * 2; + mPlus = Math.pow(b, e); + mMinus = Math.pow(b, e); + } + } + + double k = Math.ceil(Math.log10((r + mPlus) / s)); + if (k >= 0) { + s = s * Math.pow(B, k); + } else { + r = r * Math.pow(B, -k); + mPlus = mPlus * Math.pow(B, -k); + mMinus = mMinus * Math.pow(B, -k); + } + + double d; + while (!Double.isInfinite(mPlus) && !Double.isNaN(mPlus) && !Double.isInfinite(mMinus) + && !Double.isNaN(mMinus)) { + if (s == r) { + // Special case where the value is off by a factor of ten. + d = 1; + } else { + d = Math.floor((r * B) / s); + } + r = r * B % s; + mPlus = mPlus * B; + mMinus = mMinus * B; + + if (r < mMinus && r + mPlus > s) { + if (r * 2 > s) { + d = d + 1; + } + FunctionHelper.writeChar((char) ('0' + d), dOutInner); + break; + } else if (r + mPlus > s) { + d = d + 1; + FunctionHelper.writeChar((char) ('0' + d), dOutInner); + break; + } else if (r < mMinus) { + FunctionHelper.writeChar((char) ('0' + d), dOutInner); + break; + } + FunctionHelper.writeChar((char) ('0' + d), dOutInner); + if (!decimalPlaced) { + decimalPlaced = true; + FunctionHelper.writeChar('.', dOutInner); + } + } + + long decimalPlace = FunctionHelper.getPowerOf10(value, FLOAT_EXPONENT_MAX, FLOAT_EXPONENT_MIN) - 1; + FunctionHelper.writeChar('E', dOutInner); + FunctionHelper.writeNumberWithPadding(decimalPlace, 1, dOutInner); + } } sendStringDataOutput(dOut); } @@ -665,31 +848,4 @@ private void sendStringDataOutput(DataOutput dOut) throws SystemException, IOExc dOut.write(abvsInner.getByteArray(), abvsInner.getStartOffset(), abvsInner.getLength()); } - public void decimalToScientificNotn(XSDecimalPointable decp, DataOutput dOut) throws SystemException, IOException { - byte decimalPlace = decp.getDecimalPlace(); - long value = decp.getDecimalValue(); - byte nDigits = decp.getDigitCount(); - abvsInner.reset(); - - if (!FunctionHelper.isNumberPostive(value)) { - // Negative result, but the rest of the calculations can be based on a positive value. - FunctionHelper.writeChar('-', dOutInner); - value *= -1; - } - - if (value == 0) { - FunctionHelper.writeChar('0', dOutInner); - } else { - long pow10 = (long) Math.pow(10, nDigits - 1); - FunctionHelper.writeNumberWithPadding((value / pow10), 0, dOutInner); - FunctionHelper.writeChar('.', dOutInner); - long mod = value % pow10; - FunctionHelper.writeNumberWithPadding(mod, (nDigits - 1), dOutInner); - FunctionHelper.writeChar('E', dOutInner); - long power = (nDigits - 1) - decimalPlace; - FunctionHelper.writeNumberWithPadding(power, 0, dOutInner); - } - sendStringDataOutput(dOut); - } - -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToTimeOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToTimeOperation.java index 45c188802..0f4015c95 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToTimeOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToTimeOperation.java @@ -28,7 +28,7 @@ import org.apache.vxquery.runtime.functions.strings.ICharacterIterator; import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastToTimeOperation extends AbstractCastToOperation { @@ -123,4 +123,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToTokenOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToTokenOperation.java index bdd8e8439..3d6cf5e1d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToTokenOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToTokenOperation.java @@ -24,4 +24,4 @@ public CastToTokenOperation() { returnTag = ValueTag.XS_TOKEN_TAG; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToUnsignedByteOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToUnsignedByteOperation.java index ca9b05bd0..f6866d8ec 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToUnsignedByteOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToUnsignedByteOperation.java @@ -25,4 +25,4 @@ public CastToUnsignedByteOperation() { returnTag = ValueTag.XS_UNSIGNED_BYTE_TAG; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToUnsignedIntOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToUnsignedIntOperation.java index 45dec6bee..84dbd1e31 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToUnsignedIntOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToUnsignedIntOperation.java @@ -25,4 +25,4 @@ public CastToUnsignedIntOperation() { returnTag = ValueTag.XS_UNSIGNED_INT_TAG; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToUnsignedLongOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToUnsignedLongOperation.java index 646b8bc53..ad513e9e3 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToUnsignedLongOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToUnsignedLongOperation.java @@ -25,4 +25,4 @@ public CastToUnsignedLongOperation() { returnTag = ValueTag.XS_UNSIGNED_LONG_TAG; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToUnsignedShortOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToUnsignedShortOperation.java index 931b3d5c7..e51d0d5ce 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToUnsignedShortOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToUnsignedShortOperation.java @@ -25,4 +25,4 @@ public CastToUnsignedShortOperation() { returnTag = ValueTag.XS_UNSIGNED_SHORT_TAG; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToUntypedAtomicOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToUntypedAtomicOperation.java index 17a3e1eef..86975962d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToUntypedAtomicOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToUntypedAtomicOperation.java @@ -24,4 +24,4 @@ public CastToUntypedAtomicOperation() { returnTag = ValueTag.XS_UNTYPED_ATOMIC_TAG; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToYMDurationOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToYMDurationOperation.java index c4dce8638..d1ed0a0f3 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToYMDurationOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/cast/CastToYMDurationOperation.java @@ -26,9 +26,9 @@ import org.apache.vxquery.runtime.functions.strings.ICharacterIterator; import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastToYMDurationOperation extends AbstractCastToOperation { @@ -95,4 +95,4 @@ public void convertYMDuration(IntegerPointable intp, DataOutput dOut) throws Sys dOut.write(intp.getByteArray(), intp.getStartOffset(), intp.getLength()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/AbstractCastableAsOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/AbstractCastableAsOperation.java index 8076191a3..9332c25bc 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/AbstractCastableAsOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/AbstractCastableAsOperation.java @@ -29,14 +29,14 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public abstract class AbstractCastableAsOperation { public void convertAnyURI(UTF8StringPointable stringp, DataOutput dOut) throws SystemException, IOException { @@ -154,9 +154,9 @@ public void convertYMDuration(IntegerPointable intp, DataOutput dOut) throws Sys dOut.write((byte) 0); } - // - // Derived Datatypes - // + /** + * Derived Datatypes + */ public void convertByte(BytePointable bytep, DataOutput dOut) throws SystemException, IOException { dOut.write(ValueTag.XS_BOOLEAN_TAG); dOut.write((byte) 0); diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsAnyURIOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsAnyURIOperation.java index 6ee2d7f90..1c17ad770 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsAnyURIOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsAnyURIOperation.java @@ -22,7 +22,7 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastableAsAnyURIOperation extends AbstractCastableAsOperation { @@ -43,4 +43,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsBase64BinaryOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsBase64BinaryOperation.java index 293fc81d3..6c7d97452 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsBase64BinaryOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsBase64BinaryOperation.java @@ -24,8 +24,8 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToBase64BinaryOperation; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsBase64BinaryOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -61,4 +61,4 @@ public void convertString(UTF8StringPointable stringp, DataOutput dOut) throws S public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) throws SystemException, IOException { convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsBooleanOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsBooleanOperation.java index 33f4f9674..10ad2a01c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsBooleanOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsBooleanOperation.java @@ -24,12 +24,12 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToBooleanOperation; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsBooleanOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -82,4 +82,4 @@ public void convertString(UTF8StringPointable stringp, DataOutput dOut) throws S public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) throws SystemException, IOException { convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsByteOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsByteOperation.java index 31bf45e42..d3efe1024 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsByteOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsByteOperation.java @@ -24,13 +24,13 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToByteOperation; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsByteOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -109,4 +109,4 @@ public void convertByte(BytePointable bytep, DataOutput dOut) throws SystemExcep dOut.write((byte) 1); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDTDurationOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDTDurationOperation.java index 1e68cc513..ec2e4c0f2 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDTDurationOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDTDurationOperation.java @@ -24,10 +24,10 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToDTDurationOperation; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsDTDurationOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -70,4 +70,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDateOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDateOperation.java index 822a073ea..e54d4362b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDateOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDateOperation.java @@ -25,8 +25,8 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToDateOperation; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsDateOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -62,4 +62,4 @@ public void convertString(UTF8StringPointable stringp, DataOutput dOut) throws S public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) throws SystemException, IOException { convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDateTimeOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDateTimeOperation.java index ef731c39e..5bdc33392 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDateTimeOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDateTimeOperation.java @@ -25,8 +25,8 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToDateTimeOperation; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsDateTimeOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -63,4 +63,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDecimalOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDecimalOperation.java index 7d3258168..96b10e543 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDecimalOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDecimalOperation.java @@ -24,12 +24,12 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToDecimalOperation; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsDecimalOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -100,4 +100,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDoubleOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDoubleOperation.java index 1b3978e8c..22205dfb3 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDoubleOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDoubleOperation.java @@ -24,15 +24,15 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToDoubleOperation; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsDoubleOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -149,4 +149,4 @@ public void convertUnsignedShort(IntegerPointable intp, DataOutput dOut) throws dOut.write(ValueTag.XS_BOOLEAN_TAG); dOut.write((byte) 1); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDurationOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDurationOperation.java index 01a9c4f01..9f2cc3853 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDurationOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsDurationOperation.java @@ -24,10 +24,10 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToDurationOperation; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsDurationOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -70,4 +70,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsFloatOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsFloatOperation.java index 7c2ecf981..cd42c5f6a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsFloatOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsFloatOperation.java @@ -24,15 +24,15 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToFloatOperation; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsFloatOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -149,4 +149,4 @@ public void convertUnsignedShort(IntegerPointable intp, DataOutput dOut) throws dOut.write(ValueTag.XS_BOOLEAN_TAG); dOut.write((byte) 1); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsGDayOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsGDayOperation.java index c0d9ad161..98cfc32d4 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsGDayOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsGDayOperation.java @@ -25,8 +25,8 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToGDayOperation; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsGDayOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -69,4 +69,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsGMonthDayOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsGMonthDayOperation.java index 59d24e617..f2f837fd6 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsGMonthDayOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsGMonthDayOperation.java @@ -25,8 +25,8 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToGMonthDayOperation; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsGMonthDayOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -69,4 +69,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsGMonthOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsGMonthOperation.java index 0584627f4..b1c9cb985 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsGMonthOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsGMonthOperation.java @@ -25,8 +25,8 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToGMonthOperation; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsGMonthOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -69,4 +69,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsGYearMonthOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsGYearMonthOperation.java index e012e6576..4d9b17d88 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsGYearMonthOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsGYearMonthOperation.java @@ -25,8 +25,8 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToGYearMonthOperation; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsGYearMonthOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -70,4 +70,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t dOut.write((byte) 1); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsGYearOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsGYearOperation.java index c926ae6ec..846ac0766 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsGYearOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsGYearOperation.java @@ -25,8 +25,8 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToGYearOperation; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsGYearOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -69,4 +69,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsHexBinaryOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsHexBinaryOperation.java index 99c7b775b..c177d53af 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsHexBinaryOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsHexBinaryOperation.java @@ -24,8 +24,8 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToHexBinaryOperation; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsHexBinaryOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -61,4 +61,4 @@ public void convertString(UTF8StringPointable stringp, DataOutput dOut) throws S public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) throws SystemException, IOException { convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsIntOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsIntOperation.java index 0186508bc..168160c3d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsIntOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsIntOperation.java @@ -24,15 +24,15 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToIntOperation; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsIntOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -130,4 +130,4 @@ public void convertUnsignedShort(IntegerPointable intp, DataOutput dOut) throws dOut.write(ValueTag.XS_BOOLEAN_TAG); dOut.write((byte) 1); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsIntegerOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsIntegerOperation.java index 7a3139334..b1707f2d7 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsIntegerOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsIntegerOperation.java @@ -24,15 +24,15 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToIntegerOperation; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsIntegerOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -165,4 +165,4 @@ public void convertUnsignedShort(IntegerPointable intp, DataOutput dOut) throws dOut.write(ValueTag.XS_BOOLEAN_TAG); dOut.write((byte) 1); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsLongOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsLongOperation.java index 31b123b5b..894a5cc19 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsLongOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsLongOperation.java @@ -18,4 +18,4 @@ public class CastableAsLongOperation extends CastableAsIntegerOperation { -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsNegativeIntegerOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsNegativeIntegerOperation.java index b3b7499e0..994b17fc8 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsNegativeIntegerOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsNegativeIntegerOperation.java @@ -18,4 +18,4 @@ public class CastableAsNegativeIntegerOperation extends CastableAsIntegerOperation { -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsNonNegativeIntegerOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsNonNegativeIntegerOperation.java index 0002946ab..c066a9929 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsNonNegativeIntegerOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsNonNegativeIntegerOperation.java @@ -18,4 +18,4 @@ public class CastableAsNonNegativeIntegerOperation extends CastableAsIntegerOperation { -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsNonPositiveIntegerOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsNonPositiveIntegerOperation.java index 100d11e8f..ab6ebd87b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsNonPositiveIntegerOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsNonPositiveIntegerOperation.java @@ -18,4 +18,4 @@ public class CastableAsNonPositiveIntegerOperation extends CastableAsIntegerOperation { -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsNotationOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsNotationOperation.java index b5ea6e29a..62193052b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsNotationOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsNotationOperation.java @@ -29,12 +29,12 @@ import org.apache.vxquery.exceptions.ErrorCode; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastableAsNotationOperation extends AbstractCastableAsOperation { public void convertAnyURI(UTF8StringPointable stringp, DataOutput dOut) throws SystemException, IOException { @@ -128,4 +128,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t public void convertYMDuration(IntegerPointable intp, DataOutput dOut) throws SystemException, IOException { throw new SystemException(ErrorCode.XPTY0004); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsPositiveIntegerOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsPositiveIntegerOperation.java index f75a2549c..af55a523d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsPositiveIntegerOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsPositiveIntegerOperation.java @@ -18,4 +18,4 @@ public class CastableAsPositiveIntegerOperation extends CastableAsIntegerOperation { -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsQNameOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsQNameOperation.java index 6c2c9ef33..25bafbe26 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsQNameOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsQNameOperation.java @@ -23,7 +23,7 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastableAsQNameOperation extends AbstractCastableAsOperation { @@ -39,4 +39,4 @@ public void convertString(UTF8StringPointable stringp, DataOutput dOut) throws S dOut.write((byte) 1); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsShortOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsShortOperation.java index 444e4c96c..2754ea5c2 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsShortOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsShortOperation.java @@ -24,14 +24,14 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToShortOperation; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsShortOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -119,4 +119,4 @@ public void convertUnsignedByte(ShortPointable shortp, DataOutput dOut) throws S dOut.write(ValueTag.XS_BOOLEAN_TAG); dOut.write((byte) 1); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsStringOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsStringOperation.java index ae6abdfd4..2a34c6235 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsStringOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsStringOperation.java @@ -29,12 +29,12 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class CastableAsStringOperation extends AbstractCastableAsOperation { @@ -174,4 +174,4 @@ public void convertYMDuration(IntegerPointable intp, DataOutput dOut) throws Sys dOut.write(ValueTag.XS_BOOLEAN_TAG); dOut.write((byte) 1); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsTimeOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsTimeOperation.java index 5c435c2ae..c9a803060 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsTimeOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsTimeOperation.java @@ -25,8 +25,8 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToTimeOperation; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsTimeOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -63,4 +63,4 @@ public void convertUntypedAtomic(UTF8StringPointable stringp, DataOutput dOut) t convertString(stringp, dOut); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsUnsignedByteOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsUnsignedByteOperation.java index 0b7446bf8..be8eb175c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsUnsignedByteOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsUnsignedByteOperation.java @@ -18,4 +18,4 @@ public class CastableAsUnsignedByteOperation extends CastableAsShortOperation { -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsUnsignedIntOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsUnsignedIntOperation.java index 0b96f5f62..63c69e1af 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsUnsignedIntOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsUnsignedIntOperation.java @@ -18,4 +18,4 @@ public class CastableAsUnsignedIntOperation extends CastableAsIntegerOperation { -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsUnsignedLongOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsUnsignedLongOperation.java index 3ab52781e..17a1ce490 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsUnsignedLongOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsUnsignedLongOperation.java @@ -18,4 +18,4 @@ public class CastableAsUnsignedLongOperation extends CastableAsIntegerOperation { -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsUnsignedShortOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsUnsignedShortOperation.java index 3445bcf82..c3a74411a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsUnsignedShortOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsUnsignedShortOperation.java @@ -18,4 +18,4 @@ public class CastableAsUnsignedShortOperation extends CastableAsIntOperation { -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsUntypedAtomicOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsUntypedAtomicOperation.java index b22185c8c..8d319900c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsUntypedAtomicOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsUntypedAtomicOperation.java @@ -17,4 +17,4 @@ package org.apache.vxquery.runtime.functions.castable; public class CastableAsUntypedAtomicOperation extends CastableAsStringOperation { -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsYMDurationOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsYMDurationOperation.java index 46876bfc1..2beef202a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsYMDurationOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableAsYMDurationOperation.java @@ -24,10 +24,10 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToYMDurationOperation; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableAsYMDurationOperation extends AbstractCastableAsOperation { private ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -70,4 +70,4 @@ public void convertYMDuration(IntegerPointable intp, DataOutput dOut) throws Sys dOut.write((byte) 1); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableScalarEvaluatorFactory.java index b76c74aaf..e93bb5c7f 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/castable/CastableScalarEvaluatorFactory.java @@ -28,12 +28,12 @@ import org.apache.vxquery.types.BuiltinTypeRegistry; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class CastableScalarEvaluatorFactory extends AbstractTypeScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -358,4 +358,4 @@ protected void setSequenceType(SequenceType sType) { }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/AbstractDisjunctiveComparisonOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/AbstractDisjunctiveComparisonOperation.java index 05bf9618b..f00479b17 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/AbstractDisjunctiveComparisonOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/AbstractDisjunctiveComparisonOperation.java @@ -28,12 +28,12 @@ import org.apache.vxquery.datamodel.accessors.atomic.XSTimePointable; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public abstract class AbstractDisjunctiveComparisonOperation extends AbstractValueComparisonOperation { final AbstractValueComparisonOperation aOp1 = createBaseComparisonOperation1(); @@ -326,4 +326,4 @@ public boolean operateYMDurationYMDuration(IntegerPointable intp1, IntegerPointa IOException { return (aOp1.operateYMDurationYMDuration(intp1, intp2) || aOp2.operateYMDurationYMDuration(intp1, intp2)); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/AbstractNegatingComparisonOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/AbstractNegatingComparisonOperation.java index 1c0b7eff8..997627021 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/AbstractNegatingComparisonOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/AbstractNegatingComparisonOperation.java @@ -28,12 +28,12 @@ import org.apache.vxquery.datamodel.accessors.atomic.XSTimePointable; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public abstract class AbstractNegatingComparisonOperation extends AbstractValueComparisonOperation { final AbstractValueComparisonOperation aOp = createBaseComparisonOperation(); @@ -316,4 +316,4 @@ public boolean operateYMDurationYMDuration(IntegerPointable intp1, IntegerPointa return !aOp.operateYMDurationYMDuration(intp1, intp2); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/AbstractValueComparisonOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/AbstractValueComparisonOperation.java index 61383ffd2..7f29a254a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/AbstractValueComparisonOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/AbstractValueComparisonOperation.java @@ -28,12 +28,12 @@ import org.apache.vxquery.datamodel.accessors.atomic.XSTimePointable; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public abstract class AbstractValueComparisonOperation { public abstract boolean operateAnyURIAnyURI(UTF8StringPointable stringp, UTF8StringPointable stringp2) @@ -155,4 +155,4 @@ public abstract boolean operateYMDurationDuration(IntegerPointable intp1, XSDura public abstract boolean operateYMDurationYMDuration(IntegerPointable intp1, IntegerPointable intp2) throws SystemException, IOException; -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/AbstractValueComparisonScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/AbstractValueComparisonScalarEvaluatorFactory.java index 4d5eca2c6..a1ae69e9e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/AbstractValueComparisonScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/AbstractValueComparisonScalarEvaluatorFactory.java @@ -30,13 +30,13 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public abstract class AbstractValueComparisonScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { @@ -138,4 +138,4 @@ protected boolean transformThenCompareTaggedValues(AbstractValueComparisonOperat } protected abstract AbstractValueComparisonOperation createValueComparisonOperation(); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueEqComparisonOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueEqComparisonOperation.java index f4eb34007..9e007b1bb 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueEqComparisonOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueEqComparisonOperation.java @@ -30,13 +30,13 @@ import org.apache.vxquery.datamodel.util.DateTime; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class ValueEqComparisonOperation extends AbstractValueComparisonOperation { protected final ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -422,4 +422,4 @@ private boolean arraysEqual(byte[] bytes1, int offset1, int length1, byte[] byte return true; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueEqComparisonScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueEqComparisonScalarEvaluatorFactory.java index 2ba505601..fdddcb542 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueEqComparisonScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueEqComparisonScalarEvaluatorFactory.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.runtime.functions.comparison; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class ValueEqComparisonScalarEvaluatorFactory extends AbstractValueComparisonScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -29,4 +29,4 @@ public ValueEqComparisonScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) { protected AbstractValueComparisonOperation createValueComparisonOperation() { return new ValueEqComparisonOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueGeComparisonOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueGeComparisonOperation.java index d3197da7a..413857251 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueGeComparisonOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueGeComparisonOperation.java @@ -23,4 +23,4 @@ protected AbstractValueComparisonOperation createBaseComparisonOperation() { return new ValueLtComparisonOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueGeComparisonScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueGeComparisonScalarEvaluatorFactory.java index 3bbddfa0c..88e890da9 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueGeComparisonScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueGeComparisonScalarEvaluatorFactory.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.runtime.functions.comparison; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class ValueGeComparisonScalarEvaluatorFactory extends AbstractValueComparisonScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -29,4 +29,4 @@ public ValueGeComparisonScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) { protected AbstractValueComparisonOperation createValueComparisonOperation() { return new ValueGeComparisonOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueGtComparisonOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueGtComparisonOperation.java index 9017de2c4..2852d2e68 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueGtComparisonOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueGtComparisonOperation.java @@ -23,4 +23,4 @@ protected AbstractValueComparisonOperation createBaseComparisonOperation() { return new ValueLeComparisonOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueGtComparisonScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueGtComparisonScalarEvaluatorFactory.java index 7b87dcef5..0e39f72e8 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueGtComparisonScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueGtComparisonScalarEvaluatorFactory.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.runtime.functions.comparison; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class ValueGtComparisonScalarEvaluatorFactory extends AbstractValueComparisonScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -29,4 +29,4 @@ public ValueGtComparisonScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) { protected AbstractValueComparisonOperation createValueComparisonOperation() { return new ValueGtComparisonOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueLeComparisonOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueLeComparisonOperation.java index 6849e7a18..1810cec65 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueLeComparisonOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueLeComparisonOperation.java @@ -28,4 +28,4 @@ protected AbstractValueComparisonOperation createBaseComparisonOperation2() { return new ValueEqComparisonOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueLeComparisonScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueLeComparisonScalarEvaluatorFactory.java index 00032be24..eb464e8f1 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueLeComparisonScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueLeComparisonScalarEvaluatorFactory.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.runtime.functions.comparison; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class ValueLeComparisonScalarEvaluatorFactory extends AbstractValueComparisonScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -29,4 +29,4 @@ public ValueLeComparisonScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) { protected AbstractValueComparisonOperation createValueComparisonOperation() { return new ValueLeComparisonOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueLtComparisonOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueLtComparisonOperation.java index baa41a1c0..512aa83db 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueLtComparisonOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueLtComparisonOperation.java @@ -31,13 +31,13 @@ import org.apache.vxquery.exceptions.ErrorCode; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class ValueLtComparisonOperation extends AbstractValueComparisonOperation { protected final ArrayBackedValueStorage abvsInner = new ArrayBackedValueStorage(); @@ -388,4 +388,4 @@ public boolean operateYMDurationYMDuration(IntegerPointable intp1, IntegerPointa return (intp1.compareTo(intp2) == -1); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueLtComparisonScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueLtComparisonScalarEvaluatorFactory.java index 218262603..dab381e3f 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueLtComparisonScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueLtComparisonScalarEvaluatorFactory.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.runtime.functions.comparison; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class ValueLtComparisonScalarEvaluatorFactory extends AbstractValueComparisonScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -29,4 +29,4 @@ public ValueLtComparisonScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) { protected AbstractValueComparisonOperation createValueComparisonOperation() { return new ValueLtComparisonOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueNeComparisonOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueNeComparisonOperation.java index 8d360553a..d82b38dec 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueNeComparisonOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueNeComparisonOperation.java @@ -23,4 +23,4 @@ protected AbstractValueComparisonOperation createBaseComparisonOperation() { return new ValueEqComparisonOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueNeComparisonScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueNeComparisonScalarEvaluatorFactory.java index 5427f771c..93e951ca2 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueNeComparisonScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/ValueNeComparisonScalarEvaluatorFactory.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.runtime.functions.comparison; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class ValueNeComparisonScalarEvaluatorFactory extends AbstractValueComparisonScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -29,4 +29,4 @@ public ValueNeComparisonScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) { protected AbstractValueComparisonOperation createValueComparisonOperation() { return new ValueNeComparisonOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/AbstractGeneralComparisonScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/AbstractGeneralComparisonScalarEvaluatorFactory.java index cc1e1170f..446b44521 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/AbstractGeneralComparisonScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/AbstractGeneralComparisonScalarEvaluatorFactory.java @@ -66,14 +66,14 @@ import org.apache.vxquery.runtime.functions.util.AtomizeHelper; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public abstract class AbstractGeneralComparisonScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { @@ -146,7 +146,7 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S /** * Check the second argument for a sequence and loop if required. - * + * * @param aOp * @param tvpArg1 * @param tvpArg2 @@ -181,7 +181,7 @@ protected boolean evaluateTaggedValueArgument2(AbstractValueComparisonOperation /** * Transform the values into values supported for general comparison. - * + * * @param aOp * @param tvpArg1 * @param tvpArg2 @@ -219,16 +219,8 @@ protected boolean transformThenCompareTaggedValues(AbstractValueComparisonOperat // Set up value comparison tagged value pointables. if (tid1 == ValueTag.XS_UNTYPED_ATOMIC_TAG && tid2 == ValueTag.XS_UNTYPED_ATOMIC_TAG) { // Only need to change tag since the storage is the same for untyped atomic and string. - dOutInner1.write(tvpTransform1.getByteArray(), tvpTransform1.getStartOffset(), - tvpTransform1.getLength()); - tvpCompare1.set(abvsInner1.getByteArray(), abvsInner1.getStartOffset(), abvsInner1.getLength()); tvpCompare1.getByteArray()[0] = ValueTag.XS_STRING_TAG; - tagTransformed1 = true; - dOutInner2.write(tvpTransform2.getByteArray(), tvpTransform2.getStartOffset(), - tvpTransform2.getLength()); - tvpCompare2.set(abvsInner2.getByteArray(), abvsInner2.getStartOffset(), abvsInner2.getLength()); tvpCompare2.getByteArray()[0] = ValueTag.XS_STRING_TAG; - tagTransformed2 = true; } else if (tid1 == ValueTag.XS_UNTYPED_ATOMIC_TAG) { tid1 = tid2; getCastToOperator(tid2); @@ -384,4 +376,4 @@ private void getCastToOperator(int tid) { } protected abstract AbstractValueComparisonOperation createValueComparisonOperation(); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralEqComparisonScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralEqComparisonScalarEvaluatorFactory.java index f30e262d8..d79c6b2aa 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralEqComparisonScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralEqComparisonScalarEvaluatorFactory.java @@ -19,7 +19,7 @@ import org.apache.vxquery.runtime.functions.comparison.AbstractValueComparisonOperation; import org.apache.vxquery.runtime.functions.comparison.ValueEqComparisonOperation; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class GeneralEqComparisonScalarEvaluatorFactory extends AbstractGeneralComparisonScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -32,4 +32,4 @@ public GeneralEqComparisonScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) protected AbstractValueComparisonOperation createValueComparisonOperation() { return new ValueEqComparisonOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralGeComparisonScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralGeComparisonScalarEvaluatorFactory.java index 282980351..a9a1761d8 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralGeComparisonScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralGeComparisonScalarEvaluatorFactory.java @@ -19,7 +19,7 @@ import org.apache.vxquery.runtime.functions.comparison.AbstractValueComparisonOperation; import org.apache.vxquery.runtime.functions.comparison.ValueGeComparisonOperation; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class GeneralGeComparisonScalarEvaluatorFactory extends AbstractGeneralComparisonScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -32,4 +32,4 @@ public GeneralGeComparisonScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) protected AbstractValueComparisonOperation createValueComparisonOperation() { return new ValueGeComparisonOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralGtComparisonScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralGtComparisonScalarEvaluatorFactory.java index bcec2185f..8ecf4b883 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralGtComparisonScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralGtComparisonScalarEvaluatorFactory.java @@ -19,7 +19,7 @@ import org.apache.vxquery.runtime.functions.comparison.AbstractValueComparisonOperation; import org.apache.vxquery.runtime.functions.comparison.ValueGtComparisonOperation; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class GeneralGtComparisonScalarEvaluatorFactory extends AbstractGeneralComparisonScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -32,4 +32,4 @@ public GeneralGtComparisonScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) protected AbstractValueComparisonOperation createValueComparisonOperation() { return new ValueGtComparisonOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralLeComparisonScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralLeComparisonScalarEvaluatorFactory.java index 13239d6bb..84ce2a829 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralLeComparisonScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralLeComparisonScalarEvaluatorFactory.java @@ -19,7 +19,7 @@ import org.apache.vxquery.runtime.functions.comparison.AbstractValueComparisonOperation; import org.apache.vxquery.runtime.functions.comparison.ValueLeComparisonOperation; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class GeneralLeComparisonScalarEvaluatorFactory extends AbstractGeneralComparisonScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -32,4 +32,4 @@ public GeneralLeComparisonScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) protected AbstractValueComparisonOperation createValueComparisonOperation() { return new ValueLeComparisonOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralLtComparisonScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralLtComparisonScalarEvaluatorFactory.java index 33f91addb..0f9f7ba1f 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralLtComparisonScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralLtComparisonScalarEvaluatorFactory.java @@ -19,7 +19,7 @@ import org.apache.vxquery.runtime.functions.comparison.AbstractValueComparisonOperation; import org.apache.vxquery.runtime.functions.comparison.ValueLtComparisonOperation; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class GeneralLtComparisonScalarEvaluatorFactory extends AbstractGeneralComparisonScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -32,4 +32,4 @@ public GeneralLtComparisonScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) protected AbstractValueComparisonOperation createValueComparisonOperation() { return new ValueLtComparisonOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralNeComparisonScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralNeComparisonScalarEvaluatorFactory.java index f54b7a9cb..839084678 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralNeComparisonScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/comparison/general/GeneralNeComparisonScalarEvaluatorFactory.java @@ -19,7 +19,7 @@ import org.apache.vxquery.runtime.functions.comparison.AbstractValueComparisonOperation; import org.apache.vxquery.runtime.functions.comparison.ValueNeComparisonOperation; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class GeneralNeComparisonScalarEvaluatorFactory extends AbstractGeneralComparisonScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -32,4 +32,4 @@ public GeneralNeComparisonScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) protected AbstractValueComparisonOperation createValueComparisonOperation() { return new ValueNeComparisonOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/conditional/IfThenElseScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/conditional/IfThenElseScalarEvaluatorFactory.java index a7df0cb34..b0584f81c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/conditional/IfThenElseScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/conditional/IfThenElseScalarEvaluatorFactory.java @@ -20,52 +20,43 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.exceptions.ErrorCode; import org.apache.vxquery.exceptions.SystemException; +import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.dataflow.common.data.accessors.IFrameTupleReference; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; public class IfThenElseScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; - private static final int CONDITION = 0; - private static final int TRUE_CONDITION = 1; - private static final int FALSE_CONDITION = 2; public IfThenElseScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) { super(args); } @Override - protected IScalarEvaluator createEvaluator(IHyracksTaskContext ctx, final IScalarEvaluator[] args) + protected IScalarEvaluator createEvaluator(IHyracksTaskContext ctx, IScalarEvaluator[] args) throws AlgebricksException { - final TaggedValuePointable conditionTvp = (TaggedValuePointable) TaggedValuePointable.FACTORY.createPointable(); - final BooleanPointable bp = (BooleanPointable) BooleanPointable.FACTORY.createPointable(); + return new AbstractTaggedValueArgumentScalarEvaluator(args) { + private final BooleanPointable bp = (BooleanPointable) BooleanPointable.FACTORY.createPointable(); - return new IScalarEvaluator() { @Override - public void evaluate(IFrameTupleReference tuple, IPointable result) throws AlgebricksException { - args[CONDITION].evaluate(tuple, conditionTvp); - - try { - if (conditionTvp.getTag() != ValueTag.XS_BOOLEAN_TAG) { - throw new SystemException(ErrorCode.FORG0006); - } - conditionTvp.getValue(bp); + protected void evaluate(TaggedValuePointable[] args, IPointable result) throws SystemException { + TaggedValuePointable tvp1 = args[0]; + if (tvp1.getTag() != ValueTag.XS_BOOLEAN_TAG) { + throw new SystemException(ErrorCode.FORG0006); + } + tvp1.getValue(bp); - if (bp.getBoolean()) { - args[TRUE_CONDITION].evaluate(tuple, result); - } else { - args[FALSE_CONDITION].evaluate(tuple, result); - } - } catch (SystemException e) { - throw new AlgebricksException(e); + if (bp.getBoolean()) { + result.set(args[1]); + } else { + result.set(args[2]); } } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/AbstractValueFromDateTimeScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/AbstractValueFromDateTimeScalarEvaluatorFactory.java index 8c8a09179..57d8867b2 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/AbstractValueFromDateTimeScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/AbstractValueFromDateTimeScalarEvaluatorFactory.java @@ -28,12 +28,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public abstract class AbstractValueFromDateTimeScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/AbstractValueFromDurationScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/AbstractValueFromDurationScalarEvaluatorFactory.java index e7479b066..2f1111563 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/AbstractValueFromDurationScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/AbstractValueFromDurationScalarEvaluatorFactory.java @@ -29,14 +29,14 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public abstract class AbstractValueFromDurationScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnAdjustDateTimeToTimezoneScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnAdjustDateTimeToTimezoneScalarEvaluatorFactory.java index f645fe6c2..b9f530a90 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnAdjustDateTimeToTimezoneScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnAdjustDateTimeToTimezoneScalarEvaluatorFactory.java @@ -29,13 +29,13 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnAdjustDateTimeToTimezoneScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnAdjustDateToTimezoneScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnAdjustDateToTimezoneScalarEvaluatorFactory.java index 21d08d1e3..20c89c94c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnAdjustDateToTimezoneScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnAdjustDateToTimezoneScalarEvaluatorFactory.java @@ -30,13 +30,13 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnAdjustDateToTimezoneScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnAdjustTimeToTimezoneScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnAdjustTimeToTimezoneScalarEvaluatorFactory.java index 80a519bb2..62007ae57 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnAdjustTimeToTimezoneScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnAdjustTimeToTimezoneScalarEvaluatorFactory.java @@ -30,13 +30,13 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnAdjustTimeToTimezoneScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnCurrentDateScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnCurrentDateScalarEvaluatorFactory.java index 965ce0863..1e7eee602 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnCurrentDateScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnCurrentDateScalarEvaluatorFactory.java @@ -28,12 +28,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.cast.CastToDateOperation; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnCurrentDateScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnCurrentDateTimeScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnCurrentDateTimeScalarEvaluatorFactory.java index 8ad2af044..53f32383a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnCurrentDateTimeScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnCurrentDateTimeScalarEvaluatorFactory.java @@ -28,12 +28,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.cast.CastToDateTimeOperation; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnCurrentDateTimeScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -65,4 +65,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnCurrentTimeScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnCurrentTimeScalarEvaluatorFactory.java index 1c22c37e2..46f1db1d6 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnCurrentTimeScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnCurrentTimeScalarEvaluatorFactory.java @@ -28,12 +28,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.cast.CastToTimeOperation; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnCurrentTimeScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -65,4 +65,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnDateTimeScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnDateTimeScalarEvaluatorFactory.java index 07436ea28..44795c6f4 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnDateTimeScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnDateTimeScalarEvaluatorFactory.java @@ -32,12 +32,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnDateTimeScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnDayFromDateScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnDayFromDateScalarEvaluatorFactory.java index dbf37890b..33aff2922 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnDayFromDateScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnDayFromDateScalarEvaluatorFactory.java @@ -20,7 +20,7 @@ import org.apache.vxquery.datamodel.accessors.atomic.XSDatePointable; import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnDayFromDateScalarEvaluatorFactory extends AbstractValueFromDateTimeScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnDayFromDateTimeScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnDayFromDateTimeScalarEvaluatorFactory.java index 0a9bdcba5..67476564c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnDayFromDateTimeScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnDayFromDateTimeScalarEvaluatorFactory.java @@ -20,7 +20,7 @@ import org.apache.vxquery.datamodel.accessors.atomic.XSDateTimePointable; import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnDayFromDateTimeScalarEvaluatorFactory extends AbstractValueFromDateTimeScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnDaysFromDurationScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnDaysFromDurationScalarEvaluatorFactory.java index 47e646d62..e9e051888 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnDaysFromDurationScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnDaysFromDurationScalarEvaluatorFactory.java @@ -18,7 +18,7 @@ import org.apache.vxquery.datamodel.util.DateTime; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnDaysFromDurationScalarEvaluatorFactory extends AbstractValueFromDurationScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnHoursFromDateTimeScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnHoursFromDateTimeScalarEvaluatorFactory.java index 90b54111a..2cd51028d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnHoursFromDateTimeScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnHoursFromDateTimeScalarEvaluatorFactory.java @@ -20,7 +20,7 @@ import org.apache.vxquery.datamodel.accessors.atomic.XSDateTimePointable; import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnHoursFromDateTimeScalarEvaluatorFactory extends AbstractValueFromDateTimeScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnHoursFromDurationScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnHoursFromDurationScalarEvaluatorFactory.java index 1591ec8bb..46e3b3daa 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnHoursFromDurationScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnHoursFromDurationScalarEvaluatorFactory.java @@ -18,7 +18,7 @@ import org.apache.vxquery.datamodel.util.DateTime; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnHoursFromDurationScalarEvaluatorFactory extends AbstractValueFromDurationScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnHoursFromTimeScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnHoursFromTimeScalarEvaluatorFactory.java index f4c14280d..5ed2784b7 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnHoursFromTimeScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnHoursFromTimeScalarEvaluatorFactory.java @@ -20,7 +20,7 @@ import org.apache.vxquery.datamodel.accessors.atomic.XSTimePointable; import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnHoursFromTimeScalarEvaluatorFactory extends AbstractValueFromDateTimeScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnImplicitTimezoneScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnImplicitTimezoneScalarEvaluatorFactory.java index 8172d2e0a..2efcefb60 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnImplicitTimezoneScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnImplicitTimezoneScalarEvaluatorFactory.java @@ -29,12 +29,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnImplicitTimezoneScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMinutesFromDateTimeScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMinutesFromDateTimeScalarEvaluatorFactory.java index 045fc9bb5..370f564b3 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMinutesFromDateTimeScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMinutesFromDateTimeScalarEvaluatorFactory.java @@ -20,7 +20,7 @@ import org.apache.vxquery.datamodel.accessors.atomic.XSDateTimePointable; import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnMinutesFromDateTimeScalarEvaluatorFactory extends AbstractValueFromDateTimeScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMinutesFromDurationScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMinutesFromDurationScalarEvaluatorFactory.java index 32549aa3a..8737da8d2 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMinutesFromDurationScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMinutesFromDurationScalarEvaluatorFactory.java @@ -18,7 +18,7 @@ import org.apache.vxquery.datamodel.util.DateTime; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnMinutesFromDurationScalarEvaluatorFactory extends AbstractValueFromDurationScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMinutesFromTimeScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMinutesFromTimeScalarEvaluatorFactory.java index 37b8dd470..c2c1431db 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMinutesFromTimeScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMinutesFromTimeScalarEvaluatorFactory.java @@ -20,7 +20,7 @@ import org.apache.vxquery.datamodel.accessors.atomic.XSTimePointable; import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnMinutesFromTimeScalarEvaluatorFactory extends AbstractValueFromDateTimeScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMonthFromDateScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMonthFromDateScalarEvaluatorFactory.java index 5c91f4659..10d4e6420 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMonthFromDateScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMonthFromDateScalarEvaluatorFactory.java @@ -20,7 +20,7 @@ import org.apache.vxquery.datamodel.accessors.atomic.XSDatePointable; import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnMonthFromDateScalarEvaluatorFactory extends AbstractValueFromDateTimeScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMonthFromDateTimeScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMonthFromDateTimeScalarEvaluatorFactory.java index 0fab0f0a7..7f7334d4c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMonthFromDateTimeScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMonthFromDateTimeScalarEvaluatorFactory.java @@ -20,7 +20,7 @@ import org.apache.vxquery.datamodel.accessors.atomic.XSDateTimePointable; import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnMonthFromDateTimeScalarEvaluatorFactory extends AbstractValueFromDateTimeScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMonthsFromDurationScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMonthsFromDurationScalarEvaluatorFactory.java index 56fc4551e..3a3a61f3c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMonthsFromDurationScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnMonthsFromDurationScalarEvaluatorFactory.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.runtime.functions.datetime; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnMonthsFromDurationScalarEvaluatorFactory extends AbstractValueFromDurationScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnSecondsFromDateTimeScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnSecondsFromDateTimeScalarEvaluatorFactory.java index b79891a73..a18b35769 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnSecondsFromDateTimeScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnSecondsFromDateTimeScalarEvaluatorFactory.java @@ -20,7 +20,7 @@ import org.apache.vxquery.datamodel.accessors.atomic.XSDateTimePointable; import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnSecondsFromDateTimeScalarEvaluatorFactory extends AbstractValueFromDateTimeScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnSecondsFromDurationScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnSecondsFromDurationScalarEvaluatorFactory.java index 075bdcd4b..443423bc9 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnSecondsFromDurationScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnSecondsFromDurationScalarEvaluatorFactory.java @@ -19,7 +19,7 @@ import org.apache.vxquery.datamodel.util.DateTime; import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnSecondsFromDurationScalarEvaluatorFactory extends AbstractValueFromDurationScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnSecondsFromTimeScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnSecondsFromTimeScalarEvaluatorFactory.java index ccdb25563..fadb339e0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnSecondsFromTimeScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnSecondsFromTimeScalarEvaluatorFactory.java @@ -20,7 +20,7 @@ import org.apache.vxquery.datamodel.accessors.atomic.XSTimePointable; import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnSecondsFromTimeScalarEvaluatorFactory extends AbstractValueFromDateTimeScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnTimezoneFromDateScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnTimezoneFromDateScalarEvaluatorFactory.java index 5e2759131..b524d22a3 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnTimezoneFromDateScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnTimezoneFromDateScalarEvaluatorFactory.java @@ -21,7 +21,7 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnTimezoneFromDateScalarEvaluatorFactory extends AbstractValueFromDateTimeScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnTimezoneFromDateTimeScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnTimezoneFromDateTimeScalarEvaluatorFactory.java index 06d6780fb..e8d0907cd 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnTimezoneFromDateTimeScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnTimezoneFromDateTimeScalarEvaluatorFactory.java @@ -21,7 +21,7 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnTimezoneFromDateTimeScalarEvaluatorFactory extends AbstractValueFromDateTimeScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnTimezoneFromTimeScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnTimezoneFromTimeScalarEvaluatorFactory.java index ae5b50f65..6a46e67c8 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnTimezoneFromTimeScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnTimezoneFromTimeScalarEvaluatorFactory.java @@ -21,7 +21,7 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnTimezoneFromTimeScalarEvaluatorFactory extends AbstractValueFromDateTimeScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnYearFromDateScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnYearFromDateScalarEvaluatorFactory.java index f701f6286..5aaa25e62 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnYearFromDateScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnYearFromDateScalarEvaluatorFactory.java @@ -20,7 +20,7 @@ import org.apache.vxquery.datamodel.accessors.atomic.XSDatePointable; import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnYearFromDateScalarEvaluatorFactory extends AbstractValueFromDateTimeScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnYearFromDateTimeScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnYearFromDateTimeScalarEvaluatorFactory.java index bd8663987..49490131e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnYearFromDateTimeScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnYearFromDateTimeScalarEvaluatorFactory.java @@ -20,7 +20,7 @@ import org.apache.vxquery.datamodel.accessors.atomic.XSDateTimePointable; import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnYearFromDateTimeScalarEvaluatorFactory extends AbstractValueFromDateTimeScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnYearsFromDurationScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnYearsFromDurationScalarEvaluatorFactory.java index 9aad48066..e07604653 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnYearsFromDurationScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/datetime/FnYearsFromDurationScalarEvaluatorFactory.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.runtime.functions.datetime; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnYearsFromDurationScalarEvaluatorFactory extends AbstractValueFromDurationScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/error/FnErrorScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/error/FnErrorScalarEvaluatorFactory.java index 05888206f..d596dbd01 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/error/FnErrorScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/error/FnErrorScalarEvaluatorFactory.java @@ -18,13 +18,6 @@ import java.io.DataInputStream; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.dataflow.common.comm.util.ByteBufferInputStream; import org.apache.vxquery.datamodel.accessors.SequencePointable; import org.apache.vxquery.datamodel.accessors.TaggedValuePointable; import org.apache.vxquery.datamodel.accessors.atomic.XSQNamePointable; @@ -35,6 +28,14 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.FunctionHelper; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.dataflow.common.comm.util.ByteBufferInputStream; + public class FnErrorScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -42,7 +43,6 @@ public FnErrorScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) { super(args); } - @SuppressWarnings("unused") @Override protected IScalarEvaluator createEvaluator(IHyracksTaskContext ctx, IScalarEvaluator[] args) throws AlgebricksException { @@ -121,4 +121,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/misc/FnDataScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/misc/FnDataScalarEvaluatorFactory.java index dac91cc1d..1a05efc5f 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/misc/FnDataScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/misc/FnDataScalarEvaluatorFactory.java @@ -28,12 +28,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.AtomizeHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnDataScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -87,4 +87,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/AbstractNodeConstructorScalarEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/AbstractNodeConstructorScalarEvaluator.java index dba35946e..93aa75c62 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/AbstractNodeConstructorScalarEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/AbstractNodeConstructorScalarEvaluator.java @@ -27,11 +27,11 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IMutableValueStorage; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IMutableValueStorage; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public abstract class AbstractNodeConstructorScalarEvaluator extends AbstractTaggedValueArgumentScalarEvaluator { protected final IHyracksTaskContext ctx; @@ -74,4 +74,4 @@ protected abstract void constructNode(DictionaryBuilder db, TaggedValuePointable throws IOException, SystemException; protected abstract boolean createsDictionary(); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/AttributeNodeConstructorScalarEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/AttributeNodeConstructorScalarEvaluator.java index 39216f4cb..c4abe0cb4 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/AttributeNodeConstructorScalarEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/AttributeNodeConstructorScalarEvaluator.java @@ -26,10 +26,10 @@ import org.apache.vxquery.exceptions.ErrorCode; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IMutableValueStorage; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IMutableValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class AttributeNodeConstructorScalarEvaluator extends AbstractNodeConstructorScalarEvaluator { private final AttributeNodeBuilder anb; @@ -70,4 +70,4 @@ protected void constructNode(DictionaryBuilder db, TaggedValuePointable[] args, protected boolean createsDictionary() { return true; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/AttributeNodeConstructorScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/AttributeNodeConstructorScalarEvaluatorFactory.java index 4b1a5a16f..1467956c4 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/AttributeNodeConstructorScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/AttributeNodeConstructorScalarEvaluatorFactory.java @@ -18,10 +18,10 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; public class AttributeNodeConstructorScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -35,4 +35,4 @@ protected IScalarEvaluator createEvaluator(IHyracksTaskContext ctx, IScalarEvalu throws AlgebricksException { return new AttributeNodeConstructorScalarEvaluator(ctx, args); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/CommentNodeConstructorScalarEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/CommentNodeConstructorScalarEvaluator.java index 917600a3d..7b187db24 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/CommentNodeConstructorScalarEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/CommentNodeConstructorScalarEvaluator.java @@ -25,10 +25,10 @@ import org.apache.vxquery.exceptions.ErrorCode; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IMutableValueStorage; -import org.apache.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IMutableValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; public class CommentNodeConstructorScalarEvaluator extends AbstractNodeConstructorScalarEvaluator { private final CommentNodeBuilder cnb; @@ -58,4 +58,4 @@ protected void constructNode(DictionaryBuilder db, TaggedValuePointable[] args, protected boolean createsDictionary() { return false; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/CommentNodeConstructorScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/CommentNodeConstructorScalarEvaluatorFactory.java index 8bc3d32fa..abddc43df 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/CommentNodeConstructorScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/CommentNodeConstructorScalarEvaluatorFactory.java @@ -18,10 +18,10 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; public class CommentNodeConstructorScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -35,4 +35,4 @@ protected IScalarEvaluator createEvaluator(IHyracksTaskContext ctx, IScalarEvalu throws AlgebricksException { return new CommentNodeConstructorScalarEvaluator(ctx, args); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/ElementNodeConstructorScalarEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/ElementNodeConstructorScalarEvaluator.java index cfcdd1358..bf9b4844d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/ElementNodeConstructorScalarEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/ElementNodeConstructorScalarEvaluator.java @@ -28,36 +28,23 @@ import org.apache.vxquery.datamodel.accessors.nodes.DocumentNodePointable; import org.apache.vxquery.datamodel.accessors.nodes.ElementNodePointable; import org.apache.vxquery.datamodel.accessors.nodes.NodeTreePointable; -import org.apache.vxquery.datamodel.accessors.nodes.PINodePointable; -import org.apache.vxquery.datamodel.accessors.nodes.TextOrCommentNodePointable; import org.apache.vxquery.datamodel.builders.nodes.AttributeNodeBuilder; -import org.apache.vxquery.datamodel.builders.nodes.CommentNodeBuilder; import org.apache.vxquery.datamodel.builders.nodes.DictionaryBuilder; import org.apache.vxquery.datamodel.builders.nodes.ElementNodeBuilder; -import org.apache.vxquery.datamodel.builders.nodes.PINodeBuilder; -import org.apache.vxquery.datamodel.builders.nodes.TextNodeBuilder; import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.exceptions.ErrorCode; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IMutableValueStorage; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IMutableValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; public class ElementNodeConstructorScalarEvaluator extends AbstractNodeConstructorScalarEvaluator { - - private final AttributeNodeBuilder anb; - - private final CommentNodeBuilder cnb; - private final ElementNodeBuilder enb; - private final PINodeBuilder pnb; - - private final TextNodeBuilder tnb; + private final AttributeNodeBuilder anb; private final List freeENBList; @@ -69,16 +56,10 @@ public class ElementNodeConstructorScalarEvaluator extends AbstractNodeConstruct private final SequencePointable seqp; - private final IMutableValueStorage abvs; - public ElementNodeConstructorScalarEvaluator(IHyracksTaskContext ctx, IScalarEvaluator[] args) { super(ctx, args); - anb = new AttributeNodeBuilder(); - cnb = new CommentNodeBuilder(); enb = new ElementNodeBuilder(); - pnb = new PINodeBuilder(); - tnb = new TextNodeBuilder(); - abvs = new ArrayBackedValueStorage(); + anb = new AttributeNodeBuilder(); freeENBList = new ArrayList(); namep = (XSQNamePointable) XSQNamePointable.FACTORY.createPointable(); cqp = (CodedQNamePointable) CodedQNamePointable.FACTORY.createPointable(); @@ -189,7 +170,6 @@ private void copyElement(ElementNodeBuilder enb, DictionaryBuilder db, NodeTreeP AttributeNodePointable anp = ppool.takeOne(AttributeNodePointable.class); TaggedValuePointable tvp = ppool.takeOne(TaggedValuePointable.class); ElementNodePointable cenp = ppool.takeOne(ElementNodePointable.class); - try { ElementNodeBuilder tempEnb = createENB(); enb.startChild(tempEnb); @@ -221,32 +201,17 @@ private void copyElement(ElementNodeBuilder enb, DictionaryBuilder db, NodeTreeP break; } case ValueTag.COMMENT_NODE_TAG: - abvs.reset(); - copyComment(tvp, ntp, abvs); - tempEnb.addChild(abvs); - break; case ValueTag.PI_NODE_TAG: - abvs.reset(); - copyPI(tvp, ntp, abvs); - tempEnb.addChild(abvs); - break; - case ValueTag.TEXT_NODE_TAG: - abvs.reset(); - copyText(tvp, ntp, abvs); - tempEnb.addChild(abvs); - break; - default: - abvs.reset(); - convertToText(tvp, abvs); - tempEnb.addChild(abvs); + case ValueTag.TEXT_NODE_TAG: { + tempEnb.addChild(tvp); break; + } } } } tempEnb.endChildrenChunk(); enb.endChild(tempEnb); freeENB(tempEnb); - } finally { ppool.giveBack(cenp); ppool.giveBack(tvp); @@ -302,7 +267,6 @@ private void processChildren(TaggedValuePointable tvp, int start, DictionaryBuil } private void processChild(TaggedValuePointable tvp, DictionaryBuilder db) throws IOException, SystemException { - if (tvp.getTag() != ValueTag.NODE_TREE_TAG) { enb.addChild(tvp); } else { @@ -328,19 +292,9 @@ private void processChild(TaggedValuePointable tvp, DictionaryBuilder db) throws break; } case ValueTag.COMMENT_NODE_TAG: - abvs.reset(); - copyComment(innerTvp, ntp, abvs); - enb.addChild(abvs); - break; case ValueTag.PI_NODE_TAG: - abvs.reset(); - copyPI(innerTvp, ntp, abvs); - enb.addChild(abvs); - break; case ValueTag.TEXT_NODE_TAG: { - abvs.reset(); - copyText(innerTvp, ntp, abvs); - enb.addChild(abvs); + enb.addChild(innerTvp); break; } case ValueTag.DOCUMENT_NODE_TAG: { @@ -378,61 +332,4 @@ private void freeENB(ElementNodeBuilder enb) { protected boolean createsDictionary() { return true; } - - private void copyComment(TaggedValuePointable tvp, NodeTreePointable ntp, IMutableValueStorage mvs) - throws IOException { - VoidPointable vp = ppool.takeOne(VoidPointable.class); - TextOrCommentNodePointable tcnp = ppool.takeOne(TextOrCommentNodePointable.class); - - tvp.getValue(tcnp); - tcnp.getValue(ntp, vp); - - cnb.reset(mvs); - cnb.setValue(vp); - - ppool.giveBack(vp); - ppool.giveBack(tcnp); - } - - private void copyPI(TaggedValuePointable tvp, NodeTreePointable ntp, IMutableValueStorage mvs) throws IOException { - VoidPointable vp1 = ppool.takeOne(VoidPointable.class); - VoidPointable vp2 = ppool.takeOne(VoidPointable.class); - PINodePointable pnp = ppool.takeOne(PINodePointable.class); - - tvp.getValue(pnp); - pnp.getContent(ntp, vp1); - pnp.getTarget(ntp, vp2); - - pnb.reset(mvs); - pnb.setContent(vp2); - pnb.setTarget(vp1); - - ppool.giveBack(pnp); - ppool.giveBack(vp1); - ppool.giveBack(vp2); - } - - private void copyText(TaggedValuePointable tvp, NodeTreePointable ntp, IMutableValueStorage mvs) throws IOException { - VoidPointable vp = ppool.takeOne(VoidPointable.class); - TextOrCommentNodePointable tcnp = ppool.takeOne(TextOrCommentNodePointable.class); - tvp.getValue(tcnp); - tcnp.getValue(ntp, vp); - - tnb.reset(mvs); - tnb.setValue(vp); - - ppool.giveBack(vp); - ppool.giveBack(tcnp); - - } - - private void convertToText(TaggedValuePointable tvp, IMutableValueStorage mvs) throws IOException { - VoidPointable vp = ppool.takeOne(VoidPointable.class); - TextNodeBuilder tnb = new TextNodeBuilder(); - tvp.getValue(vp); - tnb.reset(mvs); - tnb.setValue(vp); - - ppool.giveBack(vp); - } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/ElementNodeConstructorScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/ElementNodeConstructorScalarEvaluatorFactory.java index bf9c15623..aa61061ff 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/ElementNodeConstructorScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/ElementNodeConstructorScalarEvaluatorFactory.java @@ -18,10 +18,10 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; public class ElementNodeConstructorScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -35,4 +35,4 @@ protected IScalarEvaluator createEvaluator(IHyracksTaskContext ctx, IScalarEvalu throws AlgebricksException { return new ElementNodeConstructorScalarEvaluator(ctx, args); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/FnDocAvailableScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/FnDocAvailableScalarEvaluatorFactory.java index 8820234e9..3f74a4fc0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/FnDocAvailableScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/FnDocAvailableScalarEvaluatorFactory.java @@ -31,14 +31,14 @@ import org.apache.vxquery.xmlparser.TreeNodeIdProvider; import org.apache.vxquery.xmlparser.XMLParser; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; -import org.apache.hyracks.dataflow.common.comm.util.ByteBufferInputStream; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.dataflow.common.comm.util.ByteBufferInputStream; public class FnDocAvailableScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -86,4 +86,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/FnDocScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/FnDocScalarEvaluatorFactory.java index 038a185d2..2d957b6b0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/FnDocScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/FnDocScalarEvaluatorFactory.java @@ -31,14 +31,14 @@ import org.apache.vxquery.xmlparser.TreeNodeIdProvider; import org.apache.vxquery.xmlparser.XMLParser; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; -import org.apache.hyracks.dataflow.common.comm.util.ByteBufferInputStream; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.dataflow.common.comm.util.ByteBufferInputStream; public class FnDocScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -87,4 +87,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/FnNumberScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/FnNumberScalarEvaluatorFactory.java index 80f0c4260..51826b2c2 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/FnNumberScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/FnNumberScalarEvaluatorFactory.java @@ -28,12 +28,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.cast.CastToDoubleOperation; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnNumberScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/IdFromNodeScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/IdFromNodeScalarEvaluatorFactory.java index 64da25326..b3b4d6715 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/IdFromNodeScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/IdFromNodeScalarEvaluatorFactory.java @@ -29,12 +29,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class IdFromNodeScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/LocalIdFromNodeScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/LocalIdFromNodeScalarEvaluatorFactory.java index 4042326b3..b8aad528c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/LocalIdFromNodeScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/LocalIdFromNodeScalarEvaluatorFactory.java @@ -28,12 +28,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class LocalIdFromNodeScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/PINodeConstructorScalarEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/PINodeConstructorScalarEvaluator.java index 839b79b1e..66ee93c8b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/PINodeConstructorScalarEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/PINodeConstructorScalarEvaluator.java @@ -23,10 +23,10 @@ import org.apache.vxquery.datamodel.builders.nodes.PINodeBuilder; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IMutableValueStorage; -import org.apache.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IMutableValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; public class PINodeConstructorScalarEvaluator extends AbstractNodeConstructorScalarEvaluator { private final PINodeBuilder pinb; @@ -56,4 +56,4 @@ protected void constructNode(DictionaryBuilder db, TaggedValuePointable[] args, protected boolean createsDictionary() { return false; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/PINodeConstructorScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/PINodeConstructorScalarEvaluatorFactory.java index c8d9dddaa..b0bf7ec7a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/PINodeConstructorScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/PINodeConstructorScalarEvaluatorFactory.java @@ -18,10 +18,10 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; public class PINodeConstructorScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -35,4 +35,4 @@ protected IScalarEvaluator createEvaluator(IHyracksTaskContext ctx, IScalarEvalu throws AlgebricksException { return new PINodeConstructorScalarEvaluator(ctx, args); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/TextNodeConstructorScalarEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/TextNodeConstructorScalarEvaluator.java index 7d69a14fc..c27684e08 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/TextNodeConstructorScalarEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/TextNodeConstructorScalarEvaluator.java @@ -25,10 +25,10 @@ import org.apache.vxquery.exceptions.ErrorCode; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IMutableValueStorage; -import org.apache.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IMutableValueStorage; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; public class TextNodeConstructorScalarEvaluator extends AbstractNodeConstructorScalarEvaluator { private final TextNodeBuilder tnb; @@ -58,4 +58,4 @@ protected void constructNode(DictionaryBuilder db, TaggedValuePointable[] args, protected boolean createsDictionary() { return false; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/TextNodeConstructorScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/TextNodeConstructorScalarEvaluatorFactory.java index 1cbfb9580..984a9f4d7 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/TextNodeConstructorScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/TextNodeConstructorScalarEvaluatorFactory.java @@ -18,10 +18,10 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; public class TextNodeConstructorScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -35,4 +35,4 @@ protected IScalarEvaluator createEvaluator(IHyracksTaskContext ctx, IScalarEvalu throws AlgebricksException { return new TextNodeConstructorScalarEvaluator(ctx, args); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/TreeIdFromNodeScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/TreeIdFromNodeScalarEvaluatorFactory.java index e83c5d6df..4b4a1db6a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/TreeIdFromNodeScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/node/TreeIdFromNodeScalarEvaluatorFactory.java @@ -27,12 +27,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class TreeIdFromNodeScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/nodeid/SortDistinctNodesAscOrAtomicsScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/nodeid/SortDistinctNodesAscOrAtomicsScalarEvaluatorFactory.java index 09fa3b0be..02eeaaeb9 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/nodeid/SortDistinctNodesAscOrAtomicsScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/nodeid/SortDistinctNodesAscOrAtomicsScalarEvaluatorFactory.java @@ -21,11 +21,11 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; public class SortDistinctNodesAscOrAtomicsScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { @@ -45,4 +45,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/AbstractNumericOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/AbstractNumericOperation.java index b8eea3617..2d4407711 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/AbstractNumericOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/AbstractNumericOperation.java @@ -22,9 +22,9 @@ import org.apache.vxquery.datamodel.accessors.atomic.XSDecimalPointable; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; public abstract class AbstractNumericOperation { diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/AbstractNumericScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/AbstractNumericScalarEvaluatorFactory.java index 1a6ccc9b5..e8ee449b2 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/AbstractNumericScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/AbstractNumericScalarEvaluatorFactory.java @@ -29,13 +29,13 @@ import org.apache.vxquery.runtime.functions.util.FunctionHelper; import org.apache.vxquery.types.BuiltinTypeRegistry; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public abstract class AbstractNumericScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -141,4 +141,4 @@ private int getBaseTypeForArithmetics(int tid) throws SystemException { } protected abstract AbstractNumericOperation createNumericOperation(); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnAbsOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnAbsOperation.java index 6102beebe..f8494aace 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnAbsOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnAbsOperation.java @@ -23,9 +23,9 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; public class FnAbsOperation extends AbstractNumericOperation { @@ -53,4 +53,4 @@ public void operateInteger(LongPointable longp, DataOutput dOut) throws SystemEx dOut.write(ValueTag.XS_INTEGER_TAG); dOut.writeLong(Math.abs(longp.getLong())); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnAbsScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnAbsScalarEvaluatorFactory.java index 02f9a09f9..db7eeb2b7 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnAbsScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnAbsScalarEvaluatorFactory.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.runtime.functions.numeric; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnAbsScalarEvaluatorFactory extends AbstractNumericScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -29,4 +29,4 @@ public FnAbsScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) { protected AbstractNumericOperation createNumericOperation() { return new FnAbsOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnCeilingOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnCeilingOperation.java index e27e79b0b..d7579e125 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnCeilingOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnCeilingOperation.java @@ -23,9 +23,9 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; public class FnCeilingOperation extends AbstractNumericOperation { @@ -33,11 +33,7 @@ public class FnCeilingOperation extends AbstractNumericOperation { public void operateDecimal(XSDecimalPointable decp, DataOutput dOut) throws SystemException, IOException { dOut.write(ValueTag.XS_DECIMAL_TAG); dOut.write(0); - if (decp.getDecimalValue() > 0 && decp.getDecimalPlace() > 0) { - dOut.writeLong((long) (decp.getBeforeDecimalPlace()) + 1); - } else { - dOut.writeLong((long) (decp.getBeforeDecimalPlace())); - } + dOut.writeLong((long) Math.ceil(decp.doubleValue())); } @Override @@ -57,4 +53,4 @@ public void operateInteger(LongPointable longp, DataOutput dOut) throws SystemEx dOut.write(ValueTag.XS_INTEGER_TAG); dOut.writeLong(longp.getLong()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnCeilingScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnCeilingScalarEvaluatorFactory.java index a1168b09f..0f3101339 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnCeilingScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnCeilingScalarEvaluatorFactory.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.runtime.functions.numeric; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnCeilingScalarEvaluatorFactory extends AbstractNumericScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -29,4 +29,4 @@ public FnCeilingScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) { protected AbstractNumericOperation createNumericOperation() { return new FnCeilingOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnFloorOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnFloorOperation.java index 55fd732d1..a8675e793 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnFloorOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnFloorOperation.java @@ -23,9 +23,9 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; public class FnFloorOperation extends AbstractNumericOperation { @@ -33,11 +33,7 @@ public class FnFloorOperation extends AbstractNumericOperation { public void operateDecimal(XSDecimalPointable decp, DataOutput dOut) throws SystemException, IOException { dOut.write(ValueTag.XS_DECIMAL_TAG); dOut.write(0); - if (decp.getDecimalValue() < 0 && decp.getDecimalPlace() > 0) { - dOut.writeLong((long) (decp.getBeforeDecimalPlace()) - 1); - } else { - dOut.writeLong((long) (decp.getBeforeDecimalPlace())); - } + dOut.writeLong(decp.getBeforeDecimalPlace()); } @Override @@ -57,4 +53,4 @@ public void operateInteger(LongPointable longp, DataOutput dOut) throws SystemEx dOut.write(ValueTag.XS_INTEGER_TAG); dOut.writeLong(longp.getLong()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnFloorScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnFloorScalarEvaluatorFactory.java index f8a8c875d..44244646e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnFloorScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnFloorScalarEvaluatorFactory.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.runtime.functions.numeric; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnFloorScalarEvaluatorFactory extends AbstractNumericScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -29,4 +29,4 @@ public FnFloorScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) { protected AbstractNumericOperation createNumericOperation() { return new FnFloorOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnRoundHalfToEvenScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnRoundHalfToEvenScalarEvaluatorFactory.java index b811a103a..0ec2aa44c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnRoundHalfToEvenScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnRoundHalfToEvenScalarEvaluatorFactory.java @@ -30,18 +30,18 @@ import org.apache.vxquery.runtime.functions.cast.CastToDecimalOperation; import org.apache.vxquery.types.BuiltinTypeRegistry; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnRoundHalfToEvenScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -99,35 +99,28 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S return; } break; + } } catch (Exception e) { throw new SystemException(ErrorCode.SYSE0001, e); } + // Prepare input. try { getDecimalPointable(tp, tvp1); } catch (IOException e) { throw new SystemException(ErrorCode.SYSE0001, e); } + // Perform rounding on decimal value. - byte decimalPlace = tp.decp.getDecimalPlace(); - long decimalValue = tp.decp.getDecimalValue(); - long newValue; - //check if the input needs to rounded to even or normally - if (decimalPlace - precision == 1 && (Math.abs(decimalValue) % 10 == 5)) { - newValue = decimalValue / 10; - if (!(newValue % 2 == 0)) { - if (newValue > 0) { - newValue += 1; - } else { - newValue -= 1; - } - } - tp.decp.setDecimal(newValue, (byte) precision); - } else if ((precision - decimalPlace) < 0) { - decimalValue = (long) Math.round(decimalValue / Math.pow(10, -(precision - decimalPlace))); + // TODO round half to the nearest even number. + long decimalPlace = tp.decp.getDecimalPlace(); + if ((precision - decimalPlace) < 0) { + long decimalValue = tp.decp.getDecimalValue(); + decimalValue = (long) (decimalValue / Math.pow(10, -(precision - decimalPlace))); tp.decp.setDecimal(decimalValue, (byte) precision); } + // Return result. try { switch (tvp1.getTag()) { @@ -276,4 +269,4 @@ private int getBaseTypeForArithmetics(int tid) throws SystemException { }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnRoundOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnRoundOperation.java index 7b2572d0b..90e51564a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnRoundOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnRoundOperation.java @@ -23,9 +23,9 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; public class FnRoundOperation extends AbstractNumericOperation { @@ -33,7 +33,7 @@ public class FnRoundOperation extends AbstractNumericOperation { public void operateDecimal(XSDecimalPointable decp, DataOutput dOut) throws SystemException, IOException { dOut.write(ValueTag.XS_DECIMAL_TAG); dOut.write(0); - dOut.writeLong((long) (decp.getBeforeDecimalPlaceRounded())); + dOut.writeLong(Math.round(decp.doubleValue())); } @Override @@ -65,4 +65,4 @@ public void operateInteger(LongPointable longp, DataOutput dOut) throws SystemEx dOut.write(ValueTag.XS_INTEGER_TAG); dOut.writeLong(longp.getLong()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnRoundScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnRoundScalarEvaluatorFactory.java index 68fa3bd84..3457ff495 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnRoundScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/numeric/FnRoundScalarEvaluatorFactory.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.runtime.functions.numeric; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class FnRoundScalarEvaluatorFactory extends AbstractNumericScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -29,4 +29,4 @@ public FnRoundScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) { protected AbstractNumericOperation createNumericOperation() { return new FnRoundOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/qname/FnLocalNameFromQNameScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/qname/FnLocalNameFromQNameScalarEvaluatorFactory.java index 560bc0992..3f1065f64 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/qname/FnLocalNameFromQNameScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/qname/FnLocalNameFromQNameScalarEvaluatorFactory.java @@ -28,13 +28,13 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnLocalNameFromQNameScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -83,4 +83,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/qname/FnNamespaceUriFromQNameScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/qname/FnNamespaceUriFromQNameScalarEvaluatorFactory.java index 7a8851bf2..2131dd1a5 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/qname/FnNamespaceUriFromQNameScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/qname/FnNamespaceUriFromQNameScalarEvaluatorFactory.java @@ -28,13 +28,13 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnNamespaceUriFromQNameScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -87,4 +87,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/qname/FnPrefixFromQNameScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/qname/FnPrefixFromQNameScalarEvaluatorFactory.java index 1a2820bcb..9fd1117b6 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/qname/FnPrefixFromQNameScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/qname/FnPrefixFromQNameScalarEvaluatorFactory.java @@ -28,13 +28,13 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnPrefixFromQNameScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -88,4 +88,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/qname/FnQNameScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/qname/FnQNameScalarEvaluatorFactory.java index f35a12563..3aa40359c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/qname/FnQNameScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/qname/FnQNameScalarEvaluatorFactory.java @@ -30,13 +30,13 @@ import org.apache.vxquery.runtime.functions.strings.UTF8StringCharacterIterator; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnQNameScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -130,4 +130,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/ConcatenateScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/ConcatenateScalarEvaluatorFactory.java index b74a2b7a8..b6559b9e5 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/ConcatenateScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/ConcatenateScalarEvaluatorFactory.java @@ -27,13 +27,13 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class ConcatenateScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -76,4 +76,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnDistinctValuesScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnDistinctValuesScalarEvaluatorFactory.java index cbc1d03d1..792990880 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnDistinctValuesScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnDistinctValuesScalarEvaluatorFactory.java @@ -32,14 +32,14 @@ import org.apache.vxquery.runtime.functions.comparison.ValueEqComparisonOperation; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnDistinctValuesScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -118,4 +118,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnEmptyScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnEmptyScalarEvaluatorFactory.java index 9fbdd4feb..bff87e3e9 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnEmptyScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnEmptyScalarEvaluatorFactory.java @@ -24,11 +24,11 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; public class FnEmptyScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -56,4 +56,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnExactlyOneScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnExactlyOneScalarEvaluatorFactory.java index fb691c1c3..d6375a1da 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnExactlyOneScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnExactlyOneScalarEvaluatorFactory.java @@ -24,11 +24,11 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; public class FnExactlyOneScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -58,4 +58,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnExistsScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnExistsScalarEvaluatorFactory.java index 7392773a7..45c9f6e1e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnExistsScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnExistsScalarEvaluatorFactory.java @@ -24,11 +24,11 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; public class FnExistsScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -56,4 +56,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnIndexOfScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnIndexOfScalarEvaluatorFactory.java index a99406b0e..f5bb65e62 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnIndexOfScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnIndexOfScalarEvaluatorFactory.java @@ -33,13 +33,13 @@ import org.apache.vxquery.runtime.functions.comparison.ValueEqComparisonOperation; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnIndexOfScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -101,4 +101,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnInsertBeforeScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnInsertBeforeScalarEvaluatorFactory.java index 9f78c9bc6..157189906 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnInsertBeforeScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnInsertBeforeScalarEvaluatorFactory.java @@ -27,14 +27,14 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnInsertBeforeScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -119,4 +119,4 @@ private void addArgumentToSequence(TaggedValuePointable tvp) throws IOException } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnOneOrMoreScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnOneOrMoreScalarEvaluatorFactory.java index 24936c754..c81c35636 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnOneOrMoreScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnOneOrMoreScalarEvaluatorFactory.java @@ -24,11 +24,11 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; public class FnOneOrMoreScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -58,4 +58,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnRemoveScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnRemoveScalarEvaluatorFactory.java index 72db5c43f..067334123 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnRemoveScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnRemoveScalarEvaluatorFactory.java @@ -27,14 +27,14 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnRemoveScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -92,4 +92,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnReverseScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnReverseScalarEvaluatorFactory.java index cfd8cf377..1591013ba 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnReverseScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnReverseScalarEvaluatorFactory.java @@ -27,13 +27,13 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnReverseScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -74,4 +74,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnSubsequenceScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnSubsequenceScalarEvaluatorFactory.java index 6c21169a5..6244b4f31 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnSubsequenceScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnSubsequenceScalarEvaluatorFactory.java @@ -29,15 +29,15 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.numeric.FnRoundOperation; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnSubsequenceScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -110,9 +110,9 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S /** * XQuery Specification calls for double value. Integer and Decimal are allowed to cut down on casting. - * + * * @param tvp - * @return long + * @return * @throws SystemException * @throws IOException */ @@ -136,4 +136,4 @@ public long getLongFromArgument(TaggedValuePointable tvp) throws SystemException } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnUnorderedScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnUnorderedScalarEvaluatorFactory.java index 19506abfb..6f486a32f 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnUnorderedScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnUnorderedScalarEvaluatorFactory.java @@ -21,11 +21,11 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; public class FnUnorderedScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -44,4 +44,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnZeroOrOneScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnZeroOrOneScalarEvaluatorFactory.java index 0eb4a6ae1..5620fc0ee 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnZeroOrOneScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/FnZeroOrOneScalarEvaluatorFactory.java @@ -24,11 +24,11 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; public class FnZeroOrOneScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -58,4 +58,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/IterateUnnestingEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/IterateUnnestingEvaluatorFactory.java index 086917931..aadc1d0e9 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/IterateUnnestingEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/IterateUnnestingEvaluatorFactory.java @@ -22,12 +22,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentUnnestingEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentUnnestingEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.runtime.base.IUnnestingEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IUnnestingEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; public class IterateUnnestingEvaluatorFactory extends AbstractTaggedValueArgumentUnnestingEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -74,4 +74,4 @@ protected void init(TaggedValuePointable[] args) { } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/OpToScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/OpToScalarEvaluatorFactory.java index 5ae76e858..841034707 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/OpToScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/OpToScalarEvaluatorFactory.java @@ -28,13 +28,13 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class OpToScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -91,4 +91,4 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/SequenceAggregateEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/SequenceAggregateEvaluatorFactory.java index f3c04dea5..6cff90b41 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/SequenceAggregateEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/sequence/SequenceAggregateEvaluatorFactory.java @@ -28,13 +28,13 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentAggregateEvaluatorFactory; import org.apache.vxquery.util.GrowableIntArray; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IAggregateEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IAggregateEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class SequenceAggregateEvaluatorFactory extends AbstractTaggedValueArgumentAggregateEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -121,4 +121,4 @@ private void addItem(final IPointable p) throws SystemException { } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AbstractDescendantPathStepScalarEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AbstractDescendantPathStepScalarEvaluator.java index adee6f2aa..3322f9025 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AbstractDescendantPathStepScalarEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AbstractDescendantPathStepScalarEvaluator.java @@ -26,9 +26,9 @@ import org.apache.vxquery.exceptions.ErrorCode; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; public abstract class AbstractDescendantPathStepScalarEvaluator extends AbstractPathStepScalarEvaluator { private final DocumentNodePointable dnp; @@ -46,11 +46,9 @@ public AbstractDescendantPathStepScalarEvaluator(IScalarEvaluator[] args, IHyrac /** * Search through all tree children and children's children. - * + * * @param nodePointable - * Node pointable * @throws SystemException - * Could not save result. */ protected void searchSubtree(TaggedValuePointable nodePointable) throws SystemException { try { @@ -94,4 +92,4 @@ protected void searchSubtree(TaggedValuePointable nodePointable) throws SystemEx } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AbstractForwardAxisPathStep.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AbstractForwardAxisPathStep.java index b8f022c82..e4d25cfc7 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AbstractForwardAxisPathStep.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AbstractForwardAxisPathStep.java @@ -29,16 +29,15 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.datamodel.values.XDMConstants; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public abstract class AbstractForwardAxisPathStep { protected final DynamicContext dCtx; protected final PointablePool pp; protected final NodeTreePointable ntp = (NodeTreePointable) NodeTreePointable.FACTORY.createPointable(); private final ArrayBackedValueStorage nodeAbvs = new ArrayBackedValueStorage(); - private final TaggedValuePointable tvpConvert = (TaggedValuePointable) TaggedValuePointable.FACTORY.createPointable(); private final DocumentNodePointable dnp = (DocumentNodePointable) DocumentNodePointable.FACTORY.createPointable(); private final ElementNodePointable enp = (ElementNodePointable) ElementNodePointable.FACTORY.createPointable(); private final NodeSubTreeBuilder nstb = new NodeSubTreeBuilder(); @@ -62,8 +61,7 @@ protected void getSequence(TaggedValuePointable tvp, SequencePointable seqp) { return; } } - XDMConstants.setEmptySequence(tvpConvert); - tvpConvert.getValue(seqp); + XDMConstants.setEmptySequence(seqp); } protected void setNodeToResult(TaggedValuePointable tvpItem, IPointable result) throws IOException { @@ -73,4 +71,4 @@ protected void setNodeToResult(TaggedValuePointable tvpItem, IPointable result) nstb.finish(); result.set(nodeAbvs.getByteArray(), nodeAbvs.getStartOffset(), nodeAbvs.getLength()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AbstractPathStepScalarEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AbstractPathStepScalarEvaluator.java index f277b2676..0532fda38 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AbstractPathStepScalarEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AbstractPathStepScalarEvaluator.java @@ -27,10 +27,10 @@ import org.apache.vxquery.runtime.functions.step.NodeTestFilter.INodeFilter; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public abstract class AbstractPathStepScalarEvaluator extends AbstractTaggedValueArgumentScalarEvaluator { protected final SequenceBuilder seqb; @@ -80,4 +80,4 @@ protected void appendNodeToResult() throws IOException { setNodeToResult(node); seqb.addItem(node); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AbstractSinglePathStepScalarEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AbstractSinglePathStepScalarEvaluator.java index d2200c9e8..868653695 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AbstractSinglePathStepScalarEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AbstractSinglePathStepScalarEvaluator.java @@ -27,11 +27,11 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public abstract class AbstractSinglePathStepScalarEvaluator extends AbstractPathStepScalarEvaluator { protected final DynamicContext dCtx; @@ -110,4 +110,4 @@ protected void processNodeTree() throws SystemException, IOException { } } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AttributePathStepScalarEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AttributePathStepScalarEvaluator.java index b4ef7a1c0..30b50e497 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AttributePathStepScalarEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AttributePathStepScalarEvaluator.java @@ -24,8 +24,8 @@ import org.apache.vxquery.datamodel.values.XDMConstants; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; public class AttributePathStepScalarEvaluator extends AbstractSinglePathStepScalarEvaluator { private final TaggedValuePointable rootTVP; @@ -51,4 +51,4 @@ protected void getSequence(NodeTreePointable ntp, SequencePointable seqp) throws } XDMConstants.setEmptySequence(seqp); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AttributePathStepScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AttributePathStepScalarEvaluatorFactory.java index 8ce8c0bbb..da8c9b219 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AttributePathStepScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/AttributePathStepScalarEvaluatorFactory.java @@ -18,10 +18,10 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; public class AttributePathStepScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -35,4 +35,4 @@ protected IScalarEvaluator createEvaluator(IHyracksTaskContext ctx, IScalarEvalu throws AlgebricksException { return new AttributePathStepScalarEvaluator(args, ctx); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepOperatorDescriptor.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepOperatorDescriptor.java index a90963b0f..125623ca8 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepOperatorDescriptor.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepOperatorDescriptor.java @@ -29,9 +29,9 @@ import org.apache.vxquery.runtime.functions.step.NodeTestFilter.INodeFilter; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; public class ChildPathStepOperatorDescriptor extends AbstractForwardAxisPathStep { private List filter = new ArrayList(); @@ -66,12 +66,6 @@ protected void setFilterCode(List typeCodes) { /** * Single node tree input. * Requirement: "ntp" must be the node tree. - * - * @param result - * Node tree pointable - * @return found result - * @throws AlgebricksException - * Could not save result. */ public boolean step(IPointable result) throws AlgebricksException { ntp.getRootNode(tvpStep); @@ -83,16 +77,6 @@ public boolean step(IPointable result) throws AlgebricksException { /** * Find the next node to return. - * - * @param tvpInput - * pointable - * @param level - * level - * @param result - * result - * @return found result - * @throws AlgebricksException - * Could not save result. */ protected boolean stepNodeTree(TaggedValuePointable tvpInput, int level, IPointable result) throws AlgebricksException { @@ -130,4 +114,4 @@ protected boolean stepNodeTree(TaggedValuePointable tvpInput, int level, IPointa pp.giveBack(seqItem); } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepScalarEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepScalarEvaluator.java index 4162bee1a..729f8a2c6 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepScalarEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepScalarEvaluator.java @@ -24,11 +24,11 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class ChildPathStepScalarEvaluator extends AbstractTaggedValueArgumentScalarEvaluator { private final SequenceBuilder seqb = new SequenceBuilder(); @@ -63,4 +63,4 @@ protected final void evaluate(TaggedValuePointable[] args, IPointable result) th throw new SystemException(ErrorCode.SYSE0001, e); } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepScalarEvaluatorFactory.java index f10cdf3aa..31d01418a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepScalarEvaluatorFactory.java @@ -18,10 +18,10 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; public class ChildPathStepScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -35,4 +35,4 @@ protected IScalarEvaluator createEvaluator(IHyracksTaskContext ctx, IScalarEvalu throws AlgebricksException { return new ChildPathStepScalarEvaluator(args, ctx); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepUnnesting.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepUnnesting.java index 74ec91b48..dbae9de0c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepUnnesting.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepUnnesting.java @@ -27,10 +27,10 @@ import org.apache.vxquery.runtime.functions.step.NodeTestFilter.INodeFilter; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; public class ChildPathStepUnnesting extends AbstractForwardAxisPathStep { private int indexSeqArgs; @@ -62,7 +62,7 @@ protected void init(TaggedValuePointable[] args) throws SystemException { SequenceType sType = dCtx.getStaticContext().lookupSequenceType(ip.getInteger()); filter = NodeTestFilter.getNodeTestFilter(sType); } - + if (args[0].getTag() == ValueTag.SEQUENCE_TAG) { args[0].getValue(seqNtp); seqArgsLength = seqNtp.getEntryCount(); @@ -101,16 +101,6 @@ public boolean step(IPointable result) throws AlgebricksException { /** * Find the next node to return. - * - * @param tvpInput - * pointable - * @param level - * level - * @param result - * result - * @return found result - * @throws AlgebricksException - * Could not save result. */ protected boolean stepNodeTree(TaggedValuePointable tvpInput, int level, IPointable result) throws AlgebricksException { @@ -138,4 +128,4 @@ protected boolean stepNodeTree(TaggedValuePointable tvpInput, int level, IPointa return false; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepUnnestingEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepUnnestingEvaluator.java index b5d0aecc9..02515c423 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepUnnestingEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepUnnestingEvaluator.java @@ -20,10 +20,10 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentUnnestingEvaluator; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; public class ChildPathStepUnnestingEvaluator extends AbstractTaggedValueArgumentUnnestingEvaluator { final ChildPathStepUnnesting childPathStep; @@ -41,4 +41,4 @@ public boolean step(IPointable result) throws AlgebricksException { protected void init(TaggedValuePointable[] args) throws SystemException { childPathStep.init(args); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepUnnestingEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepUnnestingEvaluatorFactory.java index db7efc5a5..fc9844ae8 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepUnnestingEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/ChildPathStepUnnestingEvaluatorFactory.java @@ -18,11 +18,11 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentUnnestingEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.runtime.base.IUnnestingEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IUnnestingEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; public class ChildPathStepUnnestingEvaluatorFactory extends AbstractTaggedValueArgumentUnnestingEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -36,4 +36,4 @@ protected IUnnestingEvaluator createEvaluator(IHyracksTaskContext ctx, IScalarEv throws AlgebricksException { return new ChildPathStepUnnestingEvaluator(ctx, args); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantOrSelfPathStepScalarEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantOrSelfPathStepScalarEvaluator.java index 1e4816846..5572166d1 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantOrSelfPathStepScalarEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantOrSelfPathStepScalarEvaluator.java @@ -18,44 +18,61 @@ import java.io.IOException; +import org.apache.vxquery.datamodel.accessors.SequencePointable; import org.apache.vxquery.datamodel.accessors.TaggedValuePointable; -import org.apache.vxquery.datamodel.builders.sequence.SequenceBuilder; +import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.exceptions.ErrorCode; import org.apache.vxquery.exceptions.SystemException; +import org.apache.vxquery.types.DocumentType; +import org.apache.vxquery.types.ElementType; +import org.apache.vxquery.types.Quantifier; +import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class DescendantOrSelfPathStepScalarEvaluator extends AbstractDescendantPathStepScalarEvaluator { - private final SequenceBuilder seqb = new SequenceBuilder(); - - private final ArrayBackedValueStorage seqAbvs = new ArrayBackedValueStorage(); - - private final DescendantOrSelfPathStepUnnesting descendentOrSelfPathStep; - - private final TaggedValuePointable itemTvp = (TaggedValuePointable) TaggedValuePointable.FACTORY.createPointable(); + private final TaggedValuePointable rootTVP; + private final ArrayBackedValueStorage seqAbvs; + private final SequencePointable seqp = (SequencePointable) SequencePointable.FACTORY.createPointable(); + private final VoidPointable p = (VoidPointable) VoidPointable.FACTORY.createPointable(); + private final TaggedValuePointable tvp = (TaggedValuePointable) TaggedValuePointable.FACTORY.createPointable(); public DescendantOrSelfPathStepScalarEvaluator(IScalarEvaluator[] args, IHyracksTaskContext ctx) { super(args, ctx); - descendentOrSelfPathStep = new DescendantOrSelfPathStepUnnesting(ctx, ppool, true); + rootTVP = (TaggedValuePointable) TaggedValuePointable.FACTORY.createPointable(); + seqAbvs = new ArrayBackedValueStorage(); } @Override protected final void evaluate(TaggedValuePointable[] args, IPointable result) throws SystemException { try { - descendentOrSelfPathStep.init(args); + // Set up the result sequence. seqAbvs.reset(); seqb.reset(seqAbvs); - try { - while (descendentOrSelfPathStep.step(itemTvp)) { - seqb.addItem(itemTvp); + + // Check the argument passed in as sequence or node tree. + if (args[0].getTag() == ValueTag.SEQUENCE_TAG) { + args[0].getValue(seqp); + for (int j = 0; j < seqp.getEntryCount(); ++j) { + seqp.getEntry(j, p); + tvp.set(p.getByteArray(), p.getStartOffset(), p.getLength()); + if (tvp.getTag() != ValueTag.NODE_TREE_TAG) { + throw new SystemException(ErrorCode.SYSE0001); + } + tvp.getValue(ntp); + processNodeTree(rootTVP); } - } catch (AlgebricksException e) { - throw new SystemException(ErrorCode.SYSE0001, e); + } else if (args[0].getTag() == ValueTag.NODE_TREE_TAG) { + args[0].getValue(ntp); + processNodeTree(rootTVP); + } else { + throw new SystemException(ErrorCode.SYSE0001); } + seqb.finish(); result.set(seqAbvs); } catch (IOException e) { @@ -63,4 +80,29 @@ protected final void evaluate(TaggedValuePointable[] args, IPointable result) th } } -} + private void processNodeTree(TaggedValuePointable rootTVP) throws SystemException { + ntp.getRootNode(rootTVP); + + // Solve for self. + switch (rootTVP.getTag()) { + case ValueTag.DOCUMENT_NODE_TAG: + setNodeTest(SequenceType.create(DocumentType.ANYDOCUMENT, Quantifier.QUANT_ONE)); + break; + case ValueTag.ELEMENT_NODE_TAG: + setNodeTest(SequenceType.create(ElementType.ANYELEMENT, Quantifier.QUANT_ONE)); + break; + default: + throw new SystemException(ErrorCode.SYSE0001); + } + itemTvp.set(rootTVP); + try { + appendNodeToResult(); + } catch (IOException e) { + throw new SystemException(ErrorCode.SYSE0001, e); + } + + // Solve for descendants. + searchSubtree(rootTVP); + } + +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantOrSelfPathStepScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantOrSelfPathStepScalarEvaluatorFactory.java index d7df395f1..1a7b000fb 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantOrSelfPathStepScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantOrSelfPathStepScalarEvaluatorFactory.java @@ -18,10 +18,10 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; public class DescendantOrSelfPathStepScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -35,4 +35,4 @@ protected IScalarEvaluator createEvaluator(IHyracksTaskContext ctx, IScalarEvalu throws AlgebricksException { return new DescendantOrSelfPathStepScalarEvaluator(args, ctx); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantOrSelfPathStepUnnesting.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantOrSelfPathStepUnnesting.java index 37cd400d7..57ab9e70c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantOrSelfPathStepUnnesting.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantOrSelfPathStepUnnesting.java @@ -26,30 +26,22 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.exceptions.ErrorCode; import org.apache.vxquery.exceptions.SystemException; -import org.apache.vxquery.runtime.functions.step.NodeTestFilter.INodeFilter; -import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; public class DescendantOrSelfPathStepUnnesting extends AbstractForwardAxisPathStep { private boolean testSelf; - private boolean returnSelf; private int indexSeqArgs; private int seqArgsLength; private List indexSequence = new ArrayList(); - private List returnSequence = new ArrayList(); + private List checkSelf = new ArrayList(); - private final IntegerPointable ip = (IntegerPointable) IntegerPointable.FACTORY.createPointable(); private final SequencePointable seqNtp = (SequencePointable) SequencePointable.FACTORY.createPointable(); private final TaggedValuePointable tvpItem = (TaggedValuePointable) TaggedValuePointable.FACTORY.createPointable(); private final TaggedValuePointable tvpNtp = (TaggedValuePointable) TaggedValuePointable.FACTORY.createPointable(); private final TaggedValuePointable tvpStep = (TaggedValuePointable) TaggedValuePointable.FACTORY.createPointable(); - private INodeFilter filter; - private int filterLookupID = -1; - private boolean isfilter = false; public DescendantOrSelfPathStepUnnesting(IHyracksTaskContext ctx, PointablePool pp, boolean testSelf) { super(ctx, pp); @@ -57,23 +49,10 @@ public DescendantOrSelfPathStepUnnesting(IHyracksTaskContext ctx, PointablePool } protected void init(TaggedValuePointable[] args) throws SystemException { - returnSelf = true; + checkSelf.add(true); indexSeqArgs = 0; indexSequence.add(0); - returnSequence.add(0); - if (args.length > 1) { - isfilter = true; - if (args[1].getTag() != ValueTag.XS_INT_TAG) { - throw new IllegalArgumentException("Expected int value tag, got: " + args[1].getTag()); - } - args[1].getValue(ip); - if (ip.getInteger() != filterLookupID) { - filterLookupID = ip.getInteger(); - SequenceType sType = dCtx.getStaticContext().lookupSequenceType(ip.getInteger()); - filter = NodeTestFilter.getNodeTestFilter(sType); - } - } // Check the argument passed in as sequence or node tree. if (args[0].getTag() == ValueTag.SEQUENCE_TAG) { args[0].getValue(seqNtp); @@ -101,7 +80,7 @@ public boolean step(IPointable result) throws AlgebricksException { } // Next node tree in sequence. indexSeqArgs++; - returnSelf = true; + checkSelf.set(0, true); } } else { // Single node tree input. @@ -114,42 +93,36 @@ public boolean step(IPointable result) throws AlgebricksException { } private boolean processNodeTree(TaggedValuePointable rootTVP, IPointable result) throws AlgebricksException { - if (testSelf && returnSelf) { - returnSelf = false; + if (testSelf && checkSelf.get(0)) { + checkSelf.set(0, false); tvpItem.set(rootTVP); try { - if (!isfilter || (isfilter && filter.accept(ntp, tvpItem))) { - setNodeToResult(tvpItem, result); - return true; - } + setNodeToResult(tvpItem, result); + return true; } catch (IOException e) { String description = ErrorCode.SYSE0001 + ": " + ErrorCode.SYSE0001.getDescription(); throw new AlgebricksException(description); } } + // Solve for descendants. return stepNodeTree(rootTVP, 0, result); } /** * Search through all tree children and children's children. - * - * @param tvpInput - * pointable - * @param level - * level - * @param result - * result - * @return found result - * @throws AlgebricksException - * Could not save result. + * + * @param nodePointable + * @throws SystemException */ protected boolean stepNodeTree(TaggedValuePointable tvpInput, int level, IPointable result) throws AlgebricksException { // Set up next level tracking. - if (level + 1 > indexSequence.size()) { + if (level + 1 >= indexSequence.size()) { indexSequence.add(0); - returnSequence.add(0); + } + if (level + 1 >= checkSelf.size()) { + checkSelf.add(true); } SequencePointable seqItem = pp.takeOne(SequencePointable.class); @@ -159,16 +132,18 @@ protected boolean stepNodeTree(TaggedValuePointable tvpInput, int level, IPointa while (indexSequence.get(level) < seqLength) { // Get the next item seqItem.getEntry(indexSequence.get(level), tvpItem); + // Check current node - if (indexSequence.get(level) == returnSequence.get(level)) { - returnSequence.set(level, returnSequence.get(level) + 1); - if (!isfilter || (isfilter && filter.accept(ntp, tvpItem))) { - setNodeToResult(tvpItem, result); - return true; - } + if (checkSelf.get(level)) { + checkSelf.set(level, false); + setNodeToResult(tvpItem, result); + return true; } // Check children nodes - if (level + 1 <= indexSequence.size()) { + if (level + 1 < indexSequence.size()) { + if (level + 1 < checkSelf.size()) { + checkSelf.set(level + 1, true); + } if (stepNodeTree(tvpItem, level + 1, result)) { return true; } @@ -178,10 +153,8 @@ protected boolean stepNodeTree(TaggedValuePointable tvpInput, int level, IPointa // Reset for next node tree. if (level == 0) { indexSequence.set(level, 0); - returnSequence.set(level, 0); } else { indexSequence.remove(level); - returnSequence.remove(level); } return false; } catch (IOException e) { @@ -191,4 +164,4 @@ protected boolean stepNodeTree(TaggedValuePointable tvpInput, int level, IPointa pp.giveBack(seqItem); } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantOrSelfPathStepUnnestingEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantOrSelfPathStepUnnestingEvaluator.java index ecba5db37..9c0eb40c3 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantOrSelfPathStepUnnestingEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantOrSelfPathStepUnnestingEvaluator.java @@ -20,10 +20,10 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentUnnestingEvaluator; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; public class DescendantOrSelfPathStepUnnestingEvaluator extends AbstractTaggedValueArgumentUnnestingEvaluator { final DescendantOrSelfPathStepUnnesting descendantOrSelfPathStep; @@ -41,4 +41,4 @@ public boolean step(IPointable result) throws AlgebricksException { protected void init(TaggedValuePointable[] args) throws SystemException { descendantOrSelfPathStep.init(args); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantOrSelfPathStepUnnestingEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantOrSelfPathStepUnnestingEvaluatorFactory.java index 947745f6c..10e2f3d85 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantOrSelfPathStepUnnestingEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantOrSelfPathStepUnnestingEvaluatorFactory.java @@ -18,11 +18,11 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentUnnestingEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.runtime.base.IUnnestingEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IUnnestingEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; public class DescendantOrSelfPathStepUnnestingEvaluatorFactory extends AbstractTaggedValueArgumentUnnestingEvaluatorFactory { @@ -37,4 +37,4 @@ protected IUnnestingEvaluator createEvaluator(IHyracksTaskContext ctx, IScalarEv throws AlgebricksException { return new DescendantOrSelfPathStepUnnestingEvaluator(ctx, args); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantPathStepScalarEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantPathStepScalarEvaluator.java index cfa9cc6ed..c415f33ed 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantPathStepScalarEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantPathStepScalarEvaluator.java @@ -19,43 +19,42 @@ import java.io.IOException; import org.apache.vxquery.datamodel.accessors.TaggedValuePointable; -import org.apache.vxquery.datamodel.builders.sequence.SequenceBuilder; +import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.exceptions.ErrorCode; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class DescendantPathStepScalarEvaluator extends AbstractDescendantPathStepScalarEvaluator { - private final SequenceBuilder seqb = new SequenceBuilder(); + private final TaggedValuePointable rootTVP; - private final ArrayBackedValueStorage seqAbvs = new ArrayBackedValueStorage(); - - private final DescendantOrSelfPathStepUnnesting descendentOrSelfPathStep; - - private final TaggedValuePointable itemTvp = (TaggedValuePointable) TaggedValuePointable.FACTORY.createPointable(); + private final ArrayBackedValueStorage seqAbvs; public DescendantPathStepScalarEvaluator(IScalarEvaluator[] args, IHyracksTaskContext ctx) { super(args, ctx); - descendentOrSelfPathStep = new DescendantOrSelfPathStepUnnesting(ctx, ppool, false); + rootTVP = (TaggedValuePointable) TaggedValuePointable.FACTORY.createPointable(); + seqAbvs = new ArrayBackedValueStorage(); } @Override protected final void evaluate(TaggedValuePointable[] args, IPointable result) throws SystemException { try { - descendentOrSelfPathStep.init(args); + if (args[0].getTag() != ValueTag.NODE_TREE_TAG) { + throw new SystemException(ErrorCode.SYSE0001); + } + args[0].getValue(ntp); + + // Set up the result sequence and get the root node. seqAbvs.reset(); seqb.reset(seqAbvs); - try { - while (descendentOrSelfPathStep.step(itemTvp)) { - seqb.addItem(itemTvp); - } - } catch (AlgebricksException e) { - throw new SystemException(ErrorCode.SYSE0001, e); - } + ntp.getRootNode(rootTVP); + + // Solve for descendants. + searchSubtree(rootTVP); + seqb.finish(); result.set(seqAbvs); } catch (IOException e) { @@ -63,4 +62,4 @@ protected final void evaluate(TaggedValuePointable[] args, IPointable result) th } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantPathStepScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantPathStepScalarEvaluatorFactory.java index f0b38d65f..1dc108bbf 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantPathStepScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantPathStepScalarEvaluatorFactory.java @@ -18,10 +18,10 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; public class DescendantPathStepScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -35,4 +35,4 @@ protected IScalarEvaluator createEvaluator(IHyracksTaskContext ctx, IScalarEvalu throws AlgebricksException { return new DescendantOrSelfPathStepScalarEvaluator(args, ctx); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantPathStepUnnestingEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantPathStepUnnestingEvaluator.java index 189e4ad87..25455e8a6 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantPathStepUnnestingEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantPathStepUnnestingEvaluator.java @@ -20,10 +20,10 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentUnnestingEvaluator; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; public class DescendantPathStepUnnestingEvaluator extends AbstractTaggedValueArgumentUnnestingEvaluator { final DescendantOrSelfPathStepUnnesting descendantPathStep; @@ -41,4 +41,4 @@ public boolean step(IPointable result) throws AlgebricksException { protected void init(TaggedValuePointable[] args) throws SystemException { descendantPathStep.init(args); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantPathStepUnnestingEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantPathStepUnnestingEvaluatorFactory.java index f6d0c4988..357ab425c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantPathStepUnnestingEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/DescendantPathStepUnnestingEvaluatorFactory.java @@ -18,11 +18,11 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentUnnestingEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.runtime.base.IUnnestingEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IUnnestingEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; public class DescendantPathStepUnnestingEvaluatorFactory extends AbstractTaggedValueArgumentUnnestingEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -36,4 +36,4 @@ protected IUnnestingEvaluator createEvaluator(IHyracksTaskContext ctx, IScalarEv throws AlgebricksException { return new DescendantPathStepUnnestingEvaluator(ctx, args); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/NodeTestFilter.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/NodeTestFilter.java index 7b35e29cd..73d273898 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/NodeTestFilter.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/NodeTestFilter.java @@ -28,9 +28,9 @@ import org.apache.vxquery.types.NodeType; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; public class NodeTestFilter { @@ -179,4 +179,4 @@ public boolean accept(NodeTreePointable ntp, TaggedValuePointable tvp) { public interface INodeFilter { public boolean accept(NodeTreePointable ntp, TaggedValuePointable tvp); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/SelfPathStepScalarEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/SelfPathStepScalarEvaluator.java index 91d0d2b2c..dcd68aa43 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/SelfPathStepScalarEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/SelfPathStepScalarEvaluator.java @@ -28,10 +28,10 @@ import org.apache.vxquery.types.Quantifier; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class SelfPathStepScalarEvaluator extends AbstractPathStepScalarEvaluator { private final TaggedValuePointable rootTVP; @@ -81,4 +81,4 @@ protected final void evaluate(TaggedValuePointable[] args, IPointable result) th throw new SystemException(ErrorCode.SYSE0001, e); } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/SelfPathStepScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/SelfPathStepScalarEvaluatorFactory.java index ab6acad0a..7204f6047 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/SelfPathStepScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/step/SelfPathStepScalarEvaluatorFactory.java @@ -18,10 +18,10 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; public class SelfPathStepScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -35,4 +35,4 @@ protected IScalarEvaluator createEvaluator(IHyracksTaskContext ctx, IScalarEvalu throws AlgebricksException { return new SelfPathStepScalarEvaluator(args, ctx); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/AbstractCharacterIteratorCopyingEvaluator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/AbstractCharacterIteratorCopyingEvaluator.java index ef5511bde..c6689872e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/AbstractCharacterIteratorCopyingEvaluator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/AbstractCharacterIteratorCopyingEvaluator.java @@ -26,9 +26,9 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public abstract class AbstractCharacterIteratorCopyingEvaluator extends AbstractTaggedValueArgumentScalarEvaluator { private final ICharacterIterator charIterator; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/AbstractCharacterIteratorCopyingEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/AbstractCharacterIteratorCopyingEvaluatorFactory.java index e98a12c24..24309702e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/AbstractCharacterIteratorCopyingEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/AbstractCharacterIteratorCopyingEvaluatorFactory.java @@ -18,7 +18,7 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public abstract class AbstractCharacterIteratorCopyingEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnCodepointEqualEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnCodepointEqualEvaluatorFactory.java index 378294218..6b8b18b95 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnCodepointEqualEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnCodepointEqualEvaluatorFactory.java @@ -26,12 +26,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class FnCodepointEqualEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnCodepointsToStringEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnCodepointsToStringEvaluatorFactory.java index be7464651..dd1d5b069 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnCodepointsToStringEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnCodepointsToStringEvaluatorFactory.java @@ -28,14 +28,14 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnCodepointsToStringEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnCompareEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnCompareEvaluatorFactory.java index 76e80b09f..11d00c94e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnCompareEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnCompareEvaluatorFactory.java @@ -26,13 +26,13 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class FnCompareEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnConcatEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnConcatEvaluatorFactory.java index 7eef34885..053c93087 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnConcatEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnConcatEvaluatorFactory.java @@ -29,13 +29,13 @@ import org.apache.vxquery.runtime.functions.cast.CastToStringOperation; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnConcatEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnContainsEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnContainsEvaluatorFactory.java index 977ed19e2..d825371e9 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnContainsEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnContainsEvaluatorFactory.java @@ -26,12 +26,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class FnContainsEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnEndsWithEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnEndsWithEvaluatorFactory.java index 81062ed26..88630ede4 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnEndsWithEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnEndsWithEvaluatorFactory.java @@ -26,12 +26,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class FnEndsWithEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnLowerCaseEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnLowerCaseEvaluatorFactory.java index cf431cddb..1e3ac700f 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnLowerCaseEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnLowerCaseEvaluatorFactory.java @@ -24,11 +24,11 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class FnLowerCaseEvaluatorFactory extends AbstractCharacterIteratorCopyingEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnStartsWithEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnStartsWithEvaluatorFactory.java index 7d0cb7ac9..4c4ea2b0e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnStartsWithEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnStartsWithEvaluatorFactory.java @@ -26,12 +26,12 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class FnStartsWithEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnStringJoinEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnStringJoinEvaluatorFactory.java index 576b40935..11107d5fc 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnStringJoinEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnStringJoinEvaluatorFactory.java @@ -28,13 +28,13 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnStringJoinEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnStringLengthEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnStringLengthEvaluatorFactory.java index 298b45cd7..3388a5500 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnStringLengthEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnStringLengthEvaluatorFactory.java @@ -28,13 +28,13 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnStringLengthEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnStringScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnStringScalarEvaluatorFactory.java index 1f6ba13e4..d24850229 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnStringScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnStringScalarEvaluatorFactory.java @@ -28,15 +28,13 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluator; import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.cast.CastToStringOperation; -import org.apache.vxquery.runtime.functions.util.AtomizeHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnStringScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -52,9 +50,6 @@ protected IScalarEvaluator createEvaluator(IHyracksTaskContext ctx, IScalarEvalu final DataOutput dOut = abvs.getDataOutput(); final CastToStringOperation castToString = new CastToStringOperation(); final TypedPointables tp = new TypedPointables(); - final AtomizeHelper ah = new AtomizeHelper(); - final UTF8StringPointable stringNode = (UTF8StringPointable) UTF8StringPointable.FACTORY.createPointable(); - final TaggedValuePointable tvpNode = (TaggedValuePointable) TaggedValuePointable.FACTORY.createPointable(); return new AbstractTaggedValueArgumentScalarEvaluator(args) { @Override @@ -62,7 +57,6 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S TaggedValuePointable tvp1 = args[0]; try { abvs.reset(); - switch (tvp1.getTag()) { case ValueTag.XS_ANY_URI_TAG: tvp1.getValue(tp.utf8sp); @@ -188,15 +182,11 @@ protected void evaluate(TaggedValuePointable[] args, IPointable result) throws S XDMConstants.setEmptyString(result); return; } - case ValueTag.NODE_TREE_TAG: - ah.atomize(tvp1, ppool, tvpNode); - tvpNode.getValue(stringNode); - castToString.convertUntypedAtomic(stringNode, dOut); - break; - // Pass through if not empty sequence. + // Pass through if not empty sequence. default: throw new SystemException(ErrorCode.XPDY0002); } + result.set(abvs); } catch (IOException e) { throw new SystemException(ErrorCode.SYSE0001, e); diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnStringToCodepointsEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnStringToCodepointsEvaluatorFactory.java index f77d86912..a57f51944 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnStringToCodepointsEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnStringToCodepointsEvaluatorFactory.java @@ -30,13 +30,13 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnStringToCodepointsEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnSubstringAfterEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnSubstringAfterEvaluatorFactory.java index f06915240..b49f12120 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnSubstringAfterEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnSubstringAfterEvaluatorFactory.java @@ -24,11 +24,11 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class FnSubstringAfterEvaluatorFactory extends AbstractCharacterIteratorCopyingEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnSubstringBeforeEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnSubstringBeforeEvaluatorFactory.java index fb8e93733..3447f9189 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnSubstringBeforeEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnSubstringBeforeEvaluatorFactory.java @@ -24,11 +24,11 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class FnSubstringBeforeEvaluatorFactory extends AbstractCharacterIteratorCopyingEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnSubstringEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnSubstringEvaluatorFactory.java index 0691a8083..282caaa2d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnSubstringEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnSubstringEvaluatorFactory.java @@ -24,14 +24,14 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class FnSubstringEvaluatorFactory extends AbstractCharacterIteratorCopyingEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnUpperCaseEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnUpperCaseEvaluatorFactory.java index 08492ff3d..a8f0f3f5f 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnUpperCaseEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/FnUpperCaseEvaluatorFactory.java @@ -24,11 +24,11 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.util.FunctionHelper; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class FnUpperCaseEvaluatorFactory extends AbstractCharacterIteratorCopyingEvaluatorFactory { private static final long serialVersionUID = 1L; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/UTF8StringCharacterIterator.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/UTF8StringCharacterIterator.java index c17038481..7e9346910 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/UTF8StringCharacterIterator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/strings/UTF8StringCharacterIterator.java @@ -19,7 +19,7 @@ import java.util.logging.Level; import java.util.logging.Logger; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class UTF8StringCharacterIterator implements ICharacterIterator { private static final Logger LOGGER = Logger.getLogger(UTF8StringCharacterIterator.class.getName()); diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/type/AbstractTypeScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/type/AbstractTypeScalarEvaluatorFactory.java index d45108ec5..022617287 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/type/AbstractTypeScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/type/AbstractTypeScalarEvaluatorFactory.java @@ -24,11 +24,11 @@ import org.apache.vxquery.runtime.functions.base.AbstractTaggedValueArgumentScalarEvaluatorFactory; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; public abstract class AbstractTypeScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -70,4 +70,4 @@ protected final void evaluate(TaggedValuePointable[] args, IPointable result) th evaluate(args[0], result); } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/type/InstanceOfScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/type/InstanceOfScalarEvaluatorFactory.java index d9c579674..dd7ee617f 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/type/InstanceOfScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/type/InstanceOfScalarEvaluatorFactory.java @@ -21,11 +21,11 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; public class InstanceOfScalarEvaluatorFactory extends AbstractTypeScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -56,4 +56,4 @@ protected void setSequenceType(SequenceType sType) { } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/type/PromoteScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/type/PromoteScalarEvaluatorFactory.java index c1bb24ecc..594051d3b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/type/PromoteScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/type/PromoteScalarEvaluatorFactory.java @@ -30,12 +30,12 @@ import org.apache.vxquery.types.BuiltinTypeRegistry; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class PromoteScalarEvaluatorFactory extends AbstractTypeScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -203,4 +203,4 @@ protected void setSequenceType(SequenceType sType) { } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/type/SequenceTypeMatcher.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/type/SequenceTypeMatcher.java index 19c2f99ee..12d0d933c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/type/SequenceTypeMatcher.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/type/SequenceTypeMatcher.java @@ -35,7 +35,7 @@ import org.apache.vxquery.types.SchemaType; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public class SequenceTypeMatcher { private final NodeTreePointable ntp = (NodeTreePointable) NodeTreePointable.FACTORY.createPointable(); @@ -201,4 +201,4 @@ public void setSequenceType(SequenceType sType) { public String toString() { return "sequenceMatcher[" + this.sequenceType + "]"; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/type/TreatScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/type/TreatScalarEvaluatorFactory.java index 4913c7109..1bd6ac135 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/type/TreatScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/type/TreatScalarEvaluatorFactory.java @@ -21,11 +21,11 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.types.SequenceType; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; public class TreatScalarEvaluatorFactory extends AbstractTypeScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -55,4 +55,4 @@ protected void setSequenceType(SequenceType sType) { } }; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/AbstractNumericUnaryOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/AbstractNumericUnaryOperation.java index 70270ab69..cb5a018da 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/AbstractNumericUnaryOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/AbstractNumericUnaryOperation.java @@ -22,9 +22,9 @@ import org.apache.vxquery.datamodel.accessors.atomic.XSDecimalPointable; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; public abstract class AbstractNumericUnaryOperation { diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/AbstractNumericUnaryScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/AbstractNumericUnaryScalarEvaluatorFactory.java index bd8c360c7..922243bb0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/AbstractNumericUnaryScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/AbstractNumericUnaryScalarEvaluatorFactory.java @@ -28,13 +28,13 @@ import org.apache.vxquery.runtime.functions.util.FunctionHelper; import org.apache.vxquery.types.BuiltinTypeRegistry; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; -import org.apache.hyracks.api.context.IHyracksTaskContext; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluator; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.api.context.IHyracksTaskContext; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public abstract class AbstractNumericUnaryScalarEvaluatorFactory extends AbstractTaggedValueArgumentScalarEvaluatorFactory { @@ -135,4 +135,4 @@ private int getBaseTypeForArithmetics(int tid) throws SystemException { } protected abstract AbstractNumericUnaryOperation createNumericUnaryOperation(); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/NumericUnaryMinusOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/NumericUnaryMinusOperation.java index 2cd9d864d..db8a0568a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/NumericUnaryMinusOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/NumericUnaryMinusOperation.java @@ -23,9 +23,9 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; public class NumericUnaryMinusOperation extends AbstractNumericUnaryOperation { @@ -53,4 +53,4 @@ public void operateInteger(LongPointable longp, DataOutput dOut) throws SystemEx dOut.write(ValueTag.XS_INTEGER_TAG); dOut.writeLong(-longp.getLong()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/NumericUnaryMinusScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/NumericUnaryMinusScalarEvaluatorFactory.java index 9bf7385f6..fd1936642 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/NumericUnaryMinusScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/NumericUnaryMinusScalarEvaluatorFactory.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.runtime.functions.unary; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class NumericUnaryMinusScalarEvaluatorFactory extends AbstractNumericUnaryScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -29,4 +29,4 @@ public NumericUnaryMinusScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) { protected AbstractNumericUnaryOperation createNumericUnaryOperation() { return new NumericUnaryMinusOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/NumericUnaryPlusOperation.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/NumericUnaryPlusOperation.java index 7b29442ab..6174402c2 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/NumericUnaryPlusOperation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/NumericUnaryPlusOperation.java @@ -23,9 +23,9 @@ import org.apache.vxquery.datamodel.values.ValueTag; import org.apache.vxquery.exceptions.SystemException; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; public class NumericUnaryPlusOperation extends AbstractNumericUnaryOperation { @@ -52,4 +52,4 @@ public void operateInteger(LongPointable longp, DataOutput dOut) throws SystemEx dOut.write(ValueTag.XS_INTEGER_TAG); dOut.write(longp.getByteArray(), longp.getStartOffset(), longp.getLength()); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/NumericUnaryPlusScalarEvaluatorFactory.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/NumericUnaryPlusScalarEvaluatorFactory.java index 5e99dcc91..47ce59c27 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/NumericUnaryPlusScalarEvaluatorFactory.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/unary/NumericUnaryPlusScalarEvaluatorFactory.java @@ -16,7 +16,7 @@ */ package org.apache.vxquery.runtime.functions.unary; -import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; +import edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; public class NumericUnaryPlusScalarEvaluatorFactory extends AbstractNumericUnaryScalarEvaluatorFactory { private static final long serialVersionUID = 1L; @@ -29,4 +29,4 @@ public NumericUnaryPlusScalarEvaluatorFactory(IScalarEvaluatorFactory[] args) { protected AbstractNumericUnaryOperation createNumericUnaryOperation() { return new NumericUnaryMinusOperation(); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/util/ArithmeticHelper.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/util/ArithmeticHelper.java index 164736477..0c2b41a0c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/util/ArithmeticHelper.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/util/ArithmeticHelper.java @@ -29,10 +29,10 @@ import org.apache.vxquery.types.BuiltinTypeConstants; import org.apache.vxquery.types.BuiltinTypeRegistry; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class ArithmeticHelper { private final AbstractArithmeticOperation aOp; diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/util/AtomizeHelper.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/util/AtomizeHelper.java index cf70dd2fa..ed9cd72a5 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/util/AtomizeHelper.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/util/AtomizeHelper.java @@ -30,9 +30,9 @@ import org.apache.vxquery.datamodel.accessors.nodes.TextOrCommentNodePointable; import org.apache.vxquery.datamodel.values.ValueTag; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class AtomizeHelper { AttributeNodePointable anp = (AttributeNodePointable) AttributeNodePointable.FACTORY.createPointable(); diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/util/FunctionHelper.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/util/FunctionHelper.java index a57bf723e..3a20a8666 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/util/FunctionHelper.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/functions/util/FunctionHelper.java @@ -42,13 +42,13 @@ import org.apache.vxquery.types.BuiltinTypeRegistry; import org.apache.vxquery.xmlparser.XMLParser; -import org.apache.hyracks.api.exceptions.HyracksDataException; -import org.apache.hyracks.data.std.api.IPointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; -import org.apache.hyracks.dataflow.common.comm.util.ByteBufferInputStream; +import edu.uci.ics.hyracks.api.exceptions.HyracksDataException; +import edu.uci.ics.hyracks.data.std.api.IPointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.dataflow.common.comm.util.ByteBufferInputStream; public class FunctionHelper { @@ -458,7 +458,7 @@ public static void arithmeticOperation(AbstractArithmeticOperation aOp, DynamicC public static boolean compareTaggedValues(AbstractValueComparisonOperation aOp, TaggedValuePointable tvp1, TaggedValuePointable tvp2, DynamicContext dCtx, TypedPointables tp1, TypedPointables tp2) - throws SystemException { + throws SystemException { int tid1 = getBaseTypeForComparisons(tvp1.getTag()); int tid2 = getBaseTypeForComparisons(tvp2.getTag()); @@ -1028,12 +1028,6 @@ public static void getIntegerPointable(TaggedValuePointable tvp, DataOutput dOut /** * Get the local node id from a tagged value pointable when available. - * - * @param tvp1 - * pointable - * @param tp - * Typed pointable - * @return local node id */ public static int getLocalNodeId(TaggedValuePointable tvp1, TypedPointables tp) { final TaggedValuePointable tvp = (TaggedValuePointable) TaggedValuePointable.FACTORY.createPointable(); @@ -1073,10 +1067,6 @@ public static int getLocalNodeId(TaggedValuePointable tvp1, TypedPointables tp) /** * Returns the number of digits in a long. A few special cases that needed attention. - * - * @param value - * value - * @return Number of digits */ public static int getNumberOfDigits(long value) { if (value == 0) { @@ -1105,8 +1095,9 @@ public static long getPowerOf10(double value, long max, long min) { public static String getStringFromPointable(UTF8StringPointable stringp, ByteBufferInputStream bbis, DataInputStream di) throws SystemException { try { - bbis.setByteBuffer(ByteBuffer.wrap(Arrays.copyOfRange(stringp.getByteArray(), stringp.getStartOffset(), - stringp.getLength() + stringp.getStartOffset())), 0); + bbis.setByteBuffer( + ByteBuffer.wrap(Arrays.copyOfRange(stringp.getByteArray(), stringp.getStartOffset(), + stringp.getLength() + stringp.getStartOffset())), 0); return di.readUTF(); } catch (IOException e) { throw new SystemException(ErrorCode.SYSE0001, e); @@ -1114,8 +1105,8 @@ public static String getStringFromPointable(UTF8StringPointable stringp, ByteBuf } public static long getTimezone(ITimezone timezonep) { - return timezonep.getTimezoneHour() * DateTime.CHRONON_OF_HOUR - + timezonep.getTimezoneMinute() * DateTime.CHRONON_OF_MINUTE; + return timezonep.getTimezoneHour() * DateTime.CHRONON_OF_HOUR + timezonep.getTimezoneMinute() + * DateTime.CHRONON_OF_MINUTE; } public static boolean isDerivedFromDouble(int tid) { @@ -1168,10 +1159,9 @@ public static boolean isDerivedFromString(int tid) { /** * Returns 0 if positive, nonzero if negative. - * + * * @param value - * value - * @return boolean + * @return */ public static boolean isNumberPostive(long value) { return ((value & 0x8000000000000000L) == 0 ? true : false); @@ -1291,15 +1281,12 @@ public static void writeDateAsString(IDate date, DataOutput dOut) { /** * Writes a number to the DataOutput with zeros as place holders if the number is too small to fill the padding. - * + * * @param value - * value * @param padding - * padding * @param dOut - * data output + * @throws IOException */ - public static void writeNumberWithPadding(long value, int padding, DataOutput dOut) { if (value < 0) { writeChar('-', dOut); diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/provider/VXQueryBinaryHashFunctionFactoryProvider.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/provider/VXQueryBinaryHashFunctionFactoryProvider.java index d4b159dea..91e776d74 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/provider/VXQueryBinaryHashFunctionFactoryProvider.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/provider/VXQueryBinaryHashFunctionFactoryProvider.java @@ -18,9 +18,9 @@ import org.apache.vxquery.runtime.factory.hashfunction.VXQueryRawBinaryHashFunctionFactory; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.data.IBinaryHashFunctionFactoryProvider; -import org.apache.hyracks.api.dataflow.value.IBinaryHashFunctionFactory; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.data.IBinaryHashFunctionFactoryProvider; +import edu.uci.ics.hyracks.api.dataflow.value.IBinaryHashFunctionFactory; public class VXQueryBinaryHashFunctionFactoryProvider implements IBinaryHashFunctionFactoryProvider { diff --git a/vxquery-core/src/main/java/org/apache/vxquery/runtime/provider/VXQueryBinaryHashFunctionFamilyProvider.java b/vxquery-core/src/main/java/org/apache/vxquery/runtime/provider/VXQueryBinaryHashFunctionFamilyProvider.java index c5276b14d..b73cc75a6 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/runtime/provider/VXQueryBinaryHashFunctionFamilyProvider.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/runtime/provider/VXQueryBinaryHashFunctionFamilyProvider.java @@ -16,10 +16,10 @@ */ package org.apache.vxquery.runtime.provider; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.data.IBinaryHashFunctionFamilyProvider; -import org.apache.hyracks.api.dataflow.value.IBinaryHashFunctionFamily; -import org.apache.hyracks.data.std.accessors.MurmurHash3BinaryHashFunctionFamily; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.data.IBinaryHashFunctionFamilyProvider; +import edu.uci.ics.hyracks.api.dataflow.value.IBinaryHashFunctionFamily; +import edu.uci.ics.hyracks.data.std.accessors.MurmurHash3BinaryHashFunctionFamily; public class VXQueryBinaryHashFunctionFamilyProvider implements IBinaryHashFunctionFamilyProvider { diff --git a/vxquery-core/src/main/java/org/apache/vxquery/serializer/XMLSerializer.java b/vxquery-core/src/main/java/org/apache/vxquery/serializer/XMLSerializer.java index 5c55731dd..189ae242a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/serializer/XMLSerializer.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/serializer/XMLSerializer.java @@ -42,18 +42,18 @@ import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.runtime.functions.cast.CastToStringOperation; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.data.IPrinter; -import org.apache.hyracks.data.std.primitive.BooleanPointable; -import org.apache.hyracks.data.std.primitive.BytePointable; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.primitive.FloatPointable; -import org.apache.hyracks.data.std.primitive.IntegerPointable; -import org.apache.hyracks.data.std.primitive.LongPointable; -import org.apache.hyracks.data.std.primitive.ShortPointable; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.primitive.VoidPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.data.IPrinter; +import edu.uci.ics.hyracks.data.std.primitive.BooleanPointable; +import edu.uci.ics.hyracks.data.std.primitive.BytePointable; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.primitive.FloatPointable; +import edu.uci.ics.hyracks.data.std.primitive.IntegerPointable; +import edu.uci.ics.hyracks.data.std.primitive.LongPointable; +import edu.uci.ics.hyracks.data.std.primitive.ShortPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; public class XMLSerializer implements IPrinter { private final PointablePool pp; @@ -366,7 +366,7 @@ private void printElementNode(PrintStream ps, TaggedValuePointable tvp) { enp.getAttributeSequence(ntp, seqp); if (seqp.getByteArray() != null && seqp.getEntryCount() > 0) { ps.append(' '); - printSequence(ps, seqp, " "); + printSequence(ps, seqp); } enp.getChildrenSequence(ntp, seqp); @@ -422,19 +422,12 @@ private void printSequence(PrintStream ps, TaggedValuePointable tvp) { } private void printSequence(PrintStream ps, SequencePointable seqp) { - printSequence(ps, seqp, null); - } - - private void printSequence(PrintStream ps, SequencePointable seqp, String between) { VoidPointable vp = pp.takeOne(VoidPointable.class); try { int len = seqp.getEntryCount(); for (int i = 0; i < len; ++i) { seqp.getEntry(i, vp); print(vp.getByteArray(), vp.getStartOffset(), vp.getLength(), ps); - if (i < len - 1 && between != null) { - ps.append(between); - } } } finally { pp.giveBack(vp); @@ -806,4 +799,4 @@ private void printYMDuration(PrintStream ps, TaggedValuePointable tvp) { @Override public void init() throws AlgebricksException { } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/AbstractNodeType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/AbstractNodeType.java index c7180ae85..1ce12740c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/AbstractNodeType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/AbstractNodeType.java @@ -17,10 +17,8 @@ package org.apache.vxquery.types; abstract class AbstractNodeType implements NodeType { - private static final long serialVersionUID = 1L; - @Override public final boolean isAtomicType() { return false; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/AnyItemType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/AnyItemType.java index a2cb3ab86..c6db3ad3b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/AnyItemType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/AnyItemType.java @@ -17,7 +17,6 @@ package org.apache.vxquery.types; public final class AnyItemType implements ItemType { - private static final long serialVersionUID = 1L; public static final AnyItemType INSTANCE = new AnyItemType(); private AnyItemType() { diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/AnyNodeType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/AnyNodeType.java index 1e85eb667..2f8ffcefb 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/AnyNodeType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/AnyNodeType.java @@ -17,7 +17,6 @@ package org.apache.vxquery.types; public final class AnyNodeType extends AbstractNodeType { - private static final long serialVersionUID = 1L; public static final AnyNodeType INSTANCE = new AnyNodeType(); private AnyNodeType() { @@ -42,4 +41,4 @@ public int hashCode() { public boolean equals(Object other) { return other instanceof AnyNodeType; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/AnySimpleType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/AnySimpleType.java index ee6193f4b..bc5044c2b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/AnySimpleType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/AnySimpleType.java @@ -17,7 +17,6 @@ package org.apache.vxquery.types; public final class AnySimpleType implements SimpleType { - private static final long serialVersionUID = 1L; public static final SimpleType INSTANCE = new AnySimpleType(); private AnySimpleType() { @@ -67,4 +66,4 @@ public int hashCode() { public boolean equals(Object other) { return other instanceof AnySimpleType; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/AnyType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/AnyType.java index 2cb9672ea..19519c2ec 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/AnyType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/AnyType.java @@ -17,7 +17,6 @@ package org.apache.vxquery.types; public final class AnyType implements ComplexType { - private static final long serialVersionUID = 1L; public static final SchemaType INSTANCE = new AnyType(); private AnyType() { @@ -67,4 +66,4 @@ public int hashCode() { public boolean equals(Object other) { return other instanceof AnyType; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/AtomicType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/AtomicType.java index e7257e5ae..19830afe0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/AtomicType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/AtomicType.java @@ -17,4 +17,4 @@ package org.apache.vxquery.types; public interface AtomicType extends ItemType, SimpleType { -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/AttributeType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/AttributeType.java index 72b9497ab..0cacd590b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/AttributeType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/AttributeType.java @@ -17,8 +17,6 @@ package org.apache.vxquery.types; public final class AttributeType extends AbstractNodeType { - private static final long serialVersionUID = 1L; - public static final AttributeType ANYATTRIBUTE = new AttributeType(NameTest.STAR_NAMETEST, BuiltinTypeRegistry.XS_ANY_ATOMIC); @@ -83,4 +81,4 @@ public boolean equals(Object obj) { return false; return true; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinAtomicType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinAtomicType.java index 3df9bacf4..bc5ee48e7 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinAtomicType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinAtomicType.java @@ -81,4 +81,4 @@ public boolean equals(Object obj) { return false; return true; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinTypeConstants.java b/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinTypeConstants.java index eefebcc6c..3e788198d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinTypeConstants.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinTypeConstants.java @@ -73,4 +73,4 @@ public class BuiltinTypeConstants { public static final int XS_ENTITIES_TYPE_ID = 51; public static final int BUILTIN_TYPE_COUNT = 52; -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinTypeQNames.java b/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinTypeQNames.java index 9f762ff15..aafbf1656 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinTypeQNames.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinTypeQNames.java @@ -125,4 +125,4 @@ public class BuiltinTypeQNames { XQueryConstants.XS_PREFIX); public static final QName XSEXT_TYPE_TYPE_QNAME = new QName(XQueryConstants.XSEXT_NSURI, "type", XQueryConstants.XSEXT_PREFIX); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinTypeRegistry.java b/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinTypeRegistry.java index 7cfcb5c2b..a5da4d7ec 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinTypeRegistry.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/BuiltinTypeRegistry.java @@ -345,4 +345,4 @@ public QName getTypeName(int id) { typeMap.put(BuiltinTypeQNames.XS_NOTATION_TYPE_QNAME, XS_NOTATION); TYPE_MAP = Collections.unmodifiableMap(typeMap); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/CommentType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/CommentType.java index d84d848ae..4ca4a7c9c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/CommentType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/CommentType.java @@ -17,7 +17,6 @@ package org.apache.vxquery.types; public final class CommentType extends AbstractNodeType { - private static final long serialVersionUID = 1L; public static final CommentType INSTANCE = new CommentType(); private CommentType() { @@ -42,4 +41,4 @@ public int hashCode() { public boolean equals(Object other) { return other instanceof CommentType; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/ComplexType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/ComplexType.java index 45dc0cc45..e570589ce 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/ComplexType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/ComplexType.java @@ -18,4 +18,4 @@ public interface ComplexType extends SchemaType { -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/DerivationProcess.java b/vxquery-core/src/main/java/org/apache/vxquery/types/DerivationProcess.java index 2204220c3..cbe0a4a9d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/DerivationProcess.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/DerivationProcess.java @@ -18,4 +18,4 @@ public enum DerivationProcess { RESTRICTION, EXTENSION, LIST, UNION -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/DocumentType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/DocumentType.java index aa62ebde5..bc0284211 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/DocumentType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/DocumentType.java @@ -17,8 +17,6 @@ package org.apache.vxquery.types; public final class DocumentType extends AbstractNodeType { - private static final long serialVersionUID = 1L; - public static final DocumentType ANYDOCUMENT = new DocumentType(ElementType.ANYELEMENT); private ElementType elementType; @@ -67,4 +65,4 @@ public boolean equals(Object obj) { return false; return true; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/ElementType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/ElementType.java index 0fd159420..26dffe98a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/ElementType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/ElementType.java @@ -17,8 +17,6 @@ package org.apache.vxquery.types; public final class ElementType extends AbstractNodeType { - private static final long serialVersionUID = 1L; - public static final ElementType ANYELEMENT = new ElementType(NameTest.STAR_NAMETEST, AnyType.INSTANCE, true); private NameTest nameTest; @@ -94,4 +92,4 @@ public boolean equals(Object obj) { return false; return true; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/EmptySequenceType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/EmptySequenceType.java index 4afeb40c7..6eca7c45e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/EmptySequenceType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/EmptySequenceType.java @@ -17,7 +17,6 @@ package org.apache.vxquery.types; public final class EmptySequenceType implements ItemType { - private static final long serialVersionUID = 1L; public static final EmptySequenceType INSTANCE = new EmptySequenceType(); private EmptySequenceType() { @@ -37,4 +36,4 @@ public int hashCode() { public boolean equals(Object other) { return other instanceof EmptySequenceType; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/ItemType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/ItemType.java index 054657e4c..1b1ab8fac 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/ItemType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/ItemType.java @@ -18,4 +18,4 @@ public interface ItemType extends XQType { public boolean isAtomicType(); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/NameTest.java b/vxquery-core/src/main/java/org/apache/vxquery/types/NameTest.java index fde6e0781..e3fe1937d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/NameTest.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/NameTest.java @@ -19,7 +19,7 @@ import java.io.Serializable; import java.util.Arrays; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public final class NameTest implements Serializable { private static final long serialVersionUID = 1L; @@ -92,4 +92,4 @@ public boolean equals(Object obj) { return false; return true; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/NodeKind.java b/vxquery-core/src/main/java/org/apache/vxquery/types/NodeKind.java index c7fc25cc7..f03eab8d8 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/NodeKind.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/NodeKind.java @@ -24,4 +24,4 @@ public enum NodeKind { ELEMENT, PI, TEXT, -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/NodeType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/NodeType.java index cd43f979a..33513a68b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/NodeType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/NodeType.java @@ -18,4 +18,4 @@ public interface NodeType extends ItemType { public NodeKind getNodeKind(); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/NoneType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/NoneType.java index 70c0a0a15..2eeb1d483 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/NoneType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/NoneType.java @@ -17,7 +17,6 @@ package org.apache.vxquery.types; public final class NoneType implements ItemType { - private static final long serialVersionUID = 1L; public static final NoneType INSTANCE = new NoneType(); private NoneType() { @@ -37,4 +36,4 @@ public int hashCode() { public boolean equals(Object other) { return other instanceof NoneType; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/ProcessingInstructionType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/ProcessingInstructionType.java index c445ba725..d1f294a02 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/ProcessingInstructionType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/ProcessingInstructionType.java @@ -18,11 +18,9 @@ import java.util.Arrays; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; public final class ProcessingInstructionType extends AbstractNodeType { - private static final long serialVersionUID = 1L; - public static final ProcessingInstructionType ANYPI = new ProcessingInstructionType(null); private byte[] target; @@ -73,4 +71,4 @@ public boolean equals(Object obj) { return false; return true; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/SchemaType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/SchemaType.java index 4e9dce5bd..369de6460 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/SchemaType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/SchemaType.java @@ -28,4 +28,4 @@ public interface SchemaType extends XQType { public boolean isComplexType(); public boolean isAtomicType(); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/SimpleType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/SimpleType.java index 3c02ba734..26b948cf7 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/SimpleType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/SimpleType.java @@ -18,4 +18,4 @@ public interface SimpleType extends SchemaType { -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/TextType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/TextType.java index 7c7fec782..070924525 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/TextType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/TextType.java @@ -17,7 +17,6 @@ package org.apache.vxquery.types; public final class TextType extends AbstractNodeType { - private static final long serialVersionUID = 1L; public static final TextType INSTANCE = new TextType(); private TextType() { @@ -42,4 +41,4 @@ public int hashCode() { public boolean equals(Object other) { return other instanceof TextType; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/TypeHelper.java b/vxquery-core/src/main/java/org/apache/vxquery/types/TypeHelper.java index 5ce1e3af6..2dd02721f 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/TypeHelper.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/TypeHelper.java @@ -28,4 +28,4 @@ public static boolean isBoolean(Class type) { public static boolean isSortable(Class type) { return false; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/TypeUtils.java b/vxquery-core/src/main/java/org/apache/vxquery/types/TypeUtils.java index f76a4234c..09882d081 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/TypeUtils.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/TypeUtils.java @@ -84,4 +84,4 @@ public static boolean isSubtypeTypeOf(AtomicType subType, AtomicType superType) subType = (AtomicType) subType.getBaseType(); } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/types/XQType.java b/vxquery-core/src/main/java/org/apache/vxquery/types/XQType.java index 59e894d9e..fbde3ed77 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/types/XQType.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/types/XQType.java @@ -19,4 +19,4 @@ import java.io.Serializable; public interface XQType extends Serializable { -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/util/Filter.java b/vxquery-core/src/main/java/org/apache/vxquery/util/Filter.java index 91f42e0b1..5115210c0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/util/Filter.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/util/Filter.java @@ -34,4 +34,4 @@ public boolean accept(Object value) throws SystemException { }; public boolean accept(T value) throws SystemException; -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/util/GrowableIntArray.java b/vxquery-core/src/main/java/org/apache/vxquery/util/GrowableIntArray.java index 9e7ecc08b..82f2c086c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/util/GrowableIntArray.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/util/GrowableIntArray.java @@ -90,4 +90,4 @@ public void grow(int increment) { } array = Arrays.copyOf(array, array.length + increment); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/util/SourceLocation.java b/vxquery-core/src/main/java/org/apache/vxquery/util/SourceLocation.java index 0ec195c7e..3e697edc2 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/util/SourceLocation.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/util/SourceLocation.java @@ -55,4 +55,4 @@ public int getColumnNumber() { public String toString() { return sourceFileName + " (" + lineNumber + ":" + columnNumber + ")"; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/ITreeNodeIdProvider.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/ITreeNodeIdProvider.java index f5f183015..425938ff5 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/ITreeNodeIdProvider.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/ITreeNodeIdProvider.java @@ -18,4 +18,4 @@ public interface ITreeNodeIdProvider { public int getId(); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/SAXContentHandler.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/SAXContentHandler.java index 03a125b74..296d06200 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/SAXContentHandler.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/SAXContentHandler.java @@ -16,15 +16,10 @@ import java.io.DataOutput; import java.io.IOException; +import java.nio.ByteBuffer; import java.util.ArrayList; import java.util.List; -import org.apache.hyracks.api.comm.IFrameFieldAppender; -import org.apache.hyracks.api.comm.IFrameWriter; -import org.apache.hyracks.api.exceptions.HyracksDataException; -import org.apache.hyracks.data.std.primitive.UTF8StringPointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; -import org.apache.hyracks.dataflow.common.comm.util.FrameUtils; import org.apache.vxquery.datamodel.accessors.TaggedValuePointable; import org.apache.vxquery.datamodel.accessors.nodes.NodeTreePointable; import org.apache.vxquery.datamodel.builders.atomic.UTF8StringBuilder; @@ -49,6 +44,14 @@ import org.xml.sax.SAXException; import org.xml.sax.ext.LexicalHandler; +import edu.uci.ics.hyracks.api.comm.IFrameWriter; +import edu.uci.ics.hyracks.api.exceptions.HyracksDataException; +import edu.uci.ics.hyracks.data.std.primitive.UTF8StringPointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.dataflow.common.comm.io.FrameTupleAccessor; +import edu.uci.ics.hyracks.dataflow.common.comm.io.FrameTupleAppender; +import edu.uci.ics.hyracks.dataflow.common.comm.util.FrameUtils; + public class SAXContentHandler implements ContentHandler, LexicalHandler { // XML node builders private final AttributeNodeBuilder anb; @@ -62,7 +65,9 @@ public class SAXContentHandler implements ContentHandler, LexicalHandler { private final List freeENBList; // Frame writing variables - private IFrameFieldAppender appender; + private FrameTupleAppender appender; + private ByteBuffer frame; + private FrameTupleAccessor fta; private int tupleIndex; private IFrameWriter writer; @@ -112,11 +117,12 @@ public SAXContentHandler(boolean attachTypes, ITreeNodeIdProvider nodeIdProvider textABVS = new ArrayBackedValueStorage(); } - public SAXContentHandler(boolean attachTypes, ITreeNodeIdProvider nodeIdProvider, IFrameFieldAppender appender, - List childSequenceTypes) { + public SAXContentHandler(boolean attachTypes, ITreeNodeIdProvider nodeIdProvider, ByteBuffer frame, + FrameTupleAppender appender, List childSequenceTypes) { this(attachTypes, nodeIdProvider); // Frame writing variables + this.frame = frame; this.appender = appender; setChildPathSteps(childSequenceTypes); } @@ -139,8 +145,9 @@ private void setChildPathSteps(List childSeq) { } } - public void setupElementWriter(IFrameWriter writer, int tupleIndex) { + public void setupElementWriter(IFrameWriter writer, FrameTupleAccessor fta, int tupleIndex) { this.writer = writer; + this.fta = fta; this.tupleIndex = tupleIndex; } @@ -167,7 +174,7 @@ public void endDocument() throws SAXException { flushText(); docb.endChildrenChunk(); docb.finish(); - if (appender != null) { + if (frame != null && appender != null) { writeElement(); } } catch (IOException e) { @@ -275,23 +282,12 @@ public void startDocument() throws SAXException { } } - /** - * The filter settings here are similar to one in the class linked below. - * - * @see org.apache.vxquery.runtime.functions.step.NodeTestFilter.java - */ private boolean startElementChildPathStep(String uri, String localName) { if (subElement != null && depth <= subElement.length) { // Check path step if it exists. - subElement[depth - 1] = true; - if (uri != null) { - if (childUri[depth - 1] != null && uri.compareTo(childUri[depth - 1]) != 0) { - subElement[depth - 1] = false; - } - } - if (localName != null) { - if (childLocalName[depth - 1] != null && localName.compareTo(childLocalName[depth - 1]) != 0) { - subElement[depth - 1] = false; + if (uri.compareTo(childUri[depth - 1]) == 0) { + if (localName.compareTo(childLocalName[depth - 1]) == 0) { + subElement[depth - 1] = true; } } } @@ -516,34 +512,29 @@ private void endChildInParent(AbstractNodeBuilder anb, boolean endNewElement) th } private void addNodeToTuple(TaggedValuePointable result, int t) throws HyracksDataException { - FrameUtils.appendFieldToWriter(writer, appender, result.getByteArray(), result.getStartOffset(), - result.getLength()); - // // Send to the writer. - // if (!addNodeToTupleAppender(result, t)) { - // FrameUtils.flushFrame(frame, writer); - // appender.reset(frame, true); - // if (!addNodeToTupleAppender(result, t)) { - // throw new HyracksDataException("Could not write frame."); - // } - // } - } - // - // private boolean addNodeToTupleAppender(TaggedValuePointable result, int t) throws HyracksDataException { - // // First copy all new fields over. - // if (fta.getFieldCount() > 0) { - // for (int f = 0; f < fta.getFieldCount(); ++f) { - // if (!appender.appendField(fta, t, f)) { - // return false; - // } - // } - // } - // return appender.appendField(result.getByteArray(), result.getStartOffset(), result.getLength()); - // } + // Send to the writer. + if (!addNodeToTupleAppender(result, t)) { + FrameUtils.flushFrame(frame, writer); + appender.reset(frame, true); + if (!addNodeToTupleAppender(result, t)) { + throw new HyracksDataException("Could not write frame."); + } + } + } - private String getStringFromBytes(byte[] bytes) { - if (bytes == null) { - return null; + private boolean addNodeToTupleAppender(TaggedValuePointable result, int t) throws HyracksDataException { + // First copy all new fields over. + if (fta.getFieldCount() > 0) { + for (int f = 0; f < fta.getFieldCount(); ++f) { + if (!appender.appendField(fta, t, f)) { + return false; + } + } } + return appender.appendField(result.getByteArray(), result.getStartOffset(), result.getLength()); + } + + private String getStringFromBytes(byte[] bytes) { StringBuilder sb = new StringBuilder(); UTF8StringPointable.toString(sb, bytes, 0); return sb.toString(); @@ -566,4 +557,4 @@ private boolean foundFirstNonSkippedElement() { return true; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/TreeNodeIdProvider.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/TreeNodeIdProvider.java index 957b91e55..7f1f3f32d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/TreeNodeIdProvider.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/TreeNodeIdProvider.java @@ -51,4 +51,4 @@ private byte getBitsNeeded(int number) { } return count; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/XMLParser.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/XMLParser.java index 77d500cff..23977d576 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/XMLParser.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlparser/XMLParser.java @@ -21,13 +21,10 @@ import java.io.IOException; import java.io.InputStreamReader; import java.io.Reader; +import java.nio.ByteBuffer; import java.util.ArrayList; import java.util.List; -import org.apache.hyracks.api.comm.IFrameFieldAppender; -import org.apache.hyracks.api.comm.IFrameWriter; -import org.apache.hyracks.api.exceptions.HyracksDataException; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; import org.apache.vxquery.context.StaticContext; import org.apache.vxquery.exceptions.VXQueryFileNotFoundException; import org.apache.vxquery.exceptions.VXQueryParseException; @@ -37,6 +34,12 @@ import org.xml.sax.XMLReader; import org.xml.sax.helpers.XMLReaderFactory; +import edu.uci.ics.hyracks.api.comm.IFrameWriter; +import edu.uci.ics.hyracks.api.exceptions.HyracksDataException; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.dataflow.common.comm.io.FrameTupleAccessor; +import edu.uci.ics.hyracks.dataflow.common.comm.io.FrameTupleAppender; + public class XMLParser { final XMLReader parser; final SAXContentHandler handler; @@ -45,23 +48,24 @@ public class XMLParser { final int bufferSize; public XMLParser(boolean attachTypes, ITreeNodeIdProvider idProvider, String nodeId) throws HyracksDataException { - this(attachTypes, idProvider, nodeId, null, null, null); + this(attachTypes, idProvider, nodeId, null, null, null, null); } - public XMLParser(boolean attachTypes, ITreeNodeIdProvider idProvider, String nodeId, IFrameFieldAppender appender, - List childSeq, StaticContext staticContext) throws HyracksDataException { + public XMLParser(boolean attachTypes, ITreeNodeIdProvider idProvider, String nodeId, ByteBuffer frame, + FrameTupleAppender appender, List childSeq, StaticContext staticContext) + throws HyracksDataException { bufferSize = Integer.parseInt(System.getProperty("vxquery.buffer_size", "-1")); this.nodeId = nodeId; try { parser = XMLReaderFactory.createXMLReader(); - if (appender == null) { + if (frame == null || appender == null) { handler = new SAXContentHandler(attachTypes, idProvider); } else { List childSequenceTypes = new ArrayList(); for (int typeCode : childSeq) { childSequenceTypes.add(staticContext.lookupSequenceType(typeCode)); } - handler = new SAXContentHandler(attachTypes, idProvider, appender, childSequenceTypes); + handler = new SAXContentHandler(attachTypes, idProvider, frame, appender, childSequenceTypes); } parser.setContentHandler(handler); parser.setProperty("http://xml.org/sax/properties/lexical-handler", handler); @@ -98,7 +102,7 @@ public void parseDocument(File file, ArrayBackedValueStorage abvs) throws Hyrack } } - public void parseElements(File file, IFrameWriter writer, int tupleIndex) + public void parseElements(File file, IFrameWriter writer, FrameTupleAccessor fta, int tupleIndex) throws HyracksDataException { try { Reader input; @@ -108,7 +112,7 @@ public void parseElements(File file, IFrameWriter writer, int tupleIndex) input = new InputStreamReader(new FileInputStream(file)); } in.setCharacterStream(input); - handler.setupElementWriter(writer, tupleIndex); + handler.setupElementWriter(writer, fta, tupleIndex); parser.parse(in); input.close(); } catch (FileNotFoundException e) { @@ -126,4 +130,4 @@ public void parseElements(File file, IFrameWriter writer, int tupleIndex) } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ASTNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ASTNode.java index ee31758ee..9cc076d2b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ASTNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ASTNode.java @@ -35,4 +35,4 @@ public SourceLocation getSourceLocation() { public String toString() { return Debug.toString(this); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ASTTag.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ASTTag.java index 65acb2134..c069aeedc 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ASTTag.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ASTTag.java @@ -19,4 +19,4 @@ public enum ASTTag { VERSION_DECL, PROLOG, LIBRARY_MODULE, MODULE_DECLARATION, MAIN_MODULE, QUERY_BODY, BOUNDARY_SPACE_DECLARATION, DEFAULT_ELEMENT_NAMESPACE_DECLARATION, DEFAULT_FUNCTION_NAMESPACE_DECLARATION, OPTION_DECLARATION, FT_OPTION_DECLARATION, ORDERING_MODE_DECLARATION, EMPTY_ORDER_DECLARATION, COPY_NAMESPACES_DECLARATION, DEFAULT_COLLATION_DECLARATION, BASE_URI_DECLARATION, SCHEMA_IMPORT, MODULE_IMPORT, VARIABLE_DECLARATION, TYPE_DECLARATION, SEQUENCE_TYPE, ITEM_TYPE, ATOMIC_TYPE, ANY_NODE_TEST, ITEM_TEST, DOCUMENT_TEST, QNAME, ELEMENT_TEST, SCHEMA_ELEMENT_TEST, ATTRIBUTE_TEST, SCHEMA_ATTRIBUTE_TEST, TEXT_TEST, COMMENT_TEST, PI_TEST, TYPE_NAME, CONSTRUCTION_DECLARATION, FUNCTION_DECLARATION, FUNCTION_PARAMETER, ENCLOSED_EXPRESSION, EXPRESSION, FLWOR_EXPRESSION, FOR_CLAUSE, FOR_VARIABLE_DECLARATION, LET_VARIABLE_DECLARATION, LET_CLAUSE, WHERE_CLAUSE, ORDERBY_CLAUSE, ORDER_SPECIFICATION, QUANTIFIED_EXPRESSION, QUANTIFIED_VARIABLE_DECLARATION, TYPESWITCH_EXPRESSION, CASE_CLAUSE, IF_EXPRESSION, INFIX_EXPRESSION, TYPE_EXPRESSION, UNARY_EXPRESSION, VALIDATE_EXPRESSION, EXTENSION_EXPRESSION, PRAGMA_NODE, PATH_EXPRESSION, AXIS_STEP, NAME_TEST, FILTER_EXPRESSION, LITERAL, VARIABLE_REFERENCE, PARENTHESIZED_EXPRESSION, CONTEXT_ITEM, ORDERED_EXPRESSION, UNORDERED_EXPRESSION, FUNCTION_EXPRESSION, DIRECT_ELEMENT_CONSTRUCTOR, DIRECT_ATTRIBUTE_CONSTRUCTOR, DQUOTED_ATTRIBUTE_CONTENT, SQUOTED_ATTRIBUTE_CONTENT, TEXTUAL_NODE_CONTENT, CDATA_SECTION, DIRECT_COMMENT_CONSTRUCTOR, DIRECT_PI_CONSTRUCTOR, COMPUTED_DOCUMENT_CONSTRUCTOR, COMPUTED_ATTRIBUTE_CONSTRUCTOR, COMPUTED_ELEMENT_CONSTRUCTOR, COMPUTED_TEXT_CONSTRUCTOR, COMPUTED_COMMENT_CONSTRUCTOR, EMPTY_SEQUENCE_TYPE, RELATIVE_PATH_EXPRESSION, COMPUTED_PI_CONSTRUCTOR, NCNAME, CONTENT_CHARS, NAMESPACE_DECLARATION, SINGLE_TYPE -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/AnyNodeTestNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/AnyNodeTestNode.java index 34659bd08..29a8376c8 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/AnyNodeTestNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/AnyNodeTestNode.java @@ -27,4 +27,4 @@ public AnyNodeTestNode(SourceLocation loc) { public ASTTag getTag() { return ASTTag.ANY_NODE_TEST; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/AtomicTypeNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/AtomicTypeNode.java index 1c710ae5b..58b95cb61 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/AtomicTypeNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/AtomicTypeNode.java @@ -37,4 +37,4 @@ public void setName(QNameNode name) { public QNameNode getName() { return name; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/AttributeTestNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/AttributeTestNode.java index c25c17352..195aec86e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/AttributeTestNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/AttributeTestNode.java @@ -46,4 +46,4 @@ public QNameNode getTypeName() { public void setTypeName(QNameNode typeName) { this.typeName = typeName; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/AxisStepNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/AxisStepNode.java index b12950897..61833d8ff 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/AxisStepNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/AxisStepNode.java @@ -61,4 +61,4 @@ public List getPredicates() { public void setPredicates(List predicates) { this.predicates = predicates; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/BaseUriDeclNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/BaseUriDeclNode.java index 4f498fc4e..5c2ac8d44 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/BaseUriDeclNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/BaseUriDeclNode.java @@ -37,4 +37,4 @@ public String getUri() { public void setUri(String uri) { this.uri = uri; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/BoundarySpaceDeclNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/BoundarySpaceDeclNode.java index 2ad09c014..808b0ad3b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/BoundarySpaceDeclNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/BoundarySpaceDeclNode.java @@ -38,4 +38,4 @@ public StaticContext.BoundarySpaceProperty getMode() { public void setMode(StaticContext.BoundarySpaceProperty mode) { this.mode = mode; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/CDataSectionNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/CDataSectionNode.java index 3d56ac899..bbdd26d49 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/CDataSectionNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/CDataSectionNode.java @@ -37,4 +37,4 @@ public String getContent() { public void setContent(String content) { this.content = content; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/CaseClauseNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/CaseClauseNode.java index 54ac17d19..d3e0c0875 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/CaseClauseNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/CaseClauseNode.java @@ -55,4 +55,4 @@ public ASTNode getValueExpr() { public void setValueExpr(ASTNode valueExpr) { this.valueExpr = valueExpr; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/CommentTestNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/CommentTestNode.java index e5f814523..c02992a91 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/CommentTestNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/CommentTestNode.java @@ -27,4 +27,4 @@ public CommentTestNode(SourceLocation loc) { public ASTTag getTag() { return ASTTag.COMMENT_TEST; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedAttributeConstructorNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedAttributeConstructorNode.java index d210c82c8..d3cefef7d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedAttributeConstructorNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedAttributeConstructorNode.java @@ -46,4 +46,4 @@ public ASTNode getContent() { public void setContent(ASTNode content) { this.content = content; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedCommentConstructorNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedCommentConstructorNode.java index 627013522..b033ad723 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedCommentConstructorNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedCommentConstructorNode.java @@ -37,4 +37,4 @@ public ASTNode getContent() { public void setContent(ASTNode content) { this.content = content; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedDocumentConstructorNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedDocumentConstructorNode.java index 7f078b07c..497a4a4c8 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedDocumentConstructorNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedDocumentConstructorNode.java @@ -37,4 +37,4 @@ public ASTNode getContent() { public void setContent(ASTNode content) { this.content = content; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedElementConstructorNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedElementConstructorNode.java index 99baf3528..af3e35d98 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedElementConstructorNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedElementConstructorNode.java @@ -46,4 +46,4 @@ public ASTNode getContent() { public void setContent(ASTNode content) { this.content = content; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedPIConstructorNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedPIConstructorNode.java index 6bfea1ed7..faea166e9 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedPIConstructorNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedPIConstructorNode.java @@ -46,4 +46,4 @@ public ASTNode getContent() { public void setContent(ASTNode content) { this.content = content; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedTextConstructorNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedTextConstructorNode.java index 5bd281ecd..78496f7a2 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedTextConstructorNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ComputedTextConstructorNode.java @@ -37,4 +37,4 @@ public ASTNode getContent() { public void setContent(ASTNode content) { this.content = content; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ConstructionDeclNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ConstructionDeclNode.java index 66e4eda85..beb15c879 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ConstructionDeclNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ConstructionDeclNode.java @@ -38,4 +38,4 @@ public StaticContext.ConstructionModeProperty getMode() { public void setMode(StaticContext.ConstructionModeProperty mode) { this.mode = mode; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ContentCharsNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ContentCharsNode.java index ac5836a43..2c70da0de 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ContentCharsNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ContentCharsNode.java @@ -37,4 +37,4 @@ public String getContent() { public void setContent(String content) { this.content = content; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ContextItemExprNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ContextItemExprNode.java index 6891b8156..ca1e1fdbf 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ContextItemExprNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ContextItemExprNode.java @@ -27,4 +27,4 @@ public ContextItemExprNode(SourceLocation loc) { public ASTTag getTag() { return ASTTag.CONTEXT_ITEM; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/CopyNamespacesDeclNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/CopyNamespacesDeclNode.java index fdbaa61fd..a4cefbad2 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/CopyNamespacesDeclNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/CopyNamespacesDeclNode.java @@ -38,4 +38,4 @@ public StaticContext.CopyNamespacesModeProperty getMode() { public void setMode(StaticContext.CopyNamespacesModeProperty mode) { this.mode = mode; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DQuotedAttributeContentNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DQuotedAttributeContentNode.java index 0b066d6e8..dbd2181d5 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DQuotedAttributeContentNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DQuotedAttributeContentNode.java @@ -37,4 +37,4 @@ public String getContent() { public void setContent(String content) { this.content = content; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DefaultCollationDeclNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DefaultCollationDeclNode.java index ec2a2b0fb..530e4a0b7 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DefaultCollationDeclNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DefaultCollationDeclNode.java @@ -37,4 +37,4 @@ public String getCollation() { public void setCollation(String collation) { this.collation = collation; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DefaultElementNamespaceDeclNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DefaultElementNamespaceDeclNode.java index 06ff43654..b53df5270 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DefaultElementNamespaceDeclNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DefaultElementNamespaceDeclNode.java @@ -37,4 +37,4 @@ public String getUri() { public void setUri(String uri) { this.uri = uri; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DefaultFunctionNamespaceDeclNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DefaultFunctionNamespaceDeclNode.java index 19c091ab8..ac335dd18 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DefaultFunctionNamespaceDeclNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DefaultFunctionNamespaceDeclNode.java @@ -37,4 +37,4 @@ public String getUri() { public void setUri(String uri) { this.uri = uri; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DirectAttributeConstructorNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DirectAttributeConstructorNode.java index bd936ec17..096a8ce4d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DirectAttributeConstructorNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DirectAttributeConstructorNode.java @@ -48,4 +48,4 @@ public List getValue() { public void setValue(List value) { this.value = value; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DirectCommentConstructorNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DirectCommentConstructorNode.java index f415fbf21..6cc758888 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DirectCommentConstructorNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DirectCommentConstructorNode.java @@ -37,4 +37,4 @@ public String getContent() { public void setContent(String content) { this.content = content; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DirectElementConstructorNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DirectElementConstructorNode.java index 38f762a96..22c8d6889 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DirectElementConstructorNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DirectElementConstructorNode.java @@ -66,4 +66,4 @@ public List getContent() { public void setContent(List content) { this.content = content; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DirectPIConstructorNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DirectPIConstructorNode.java index 65e82e5fd..53319520d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DirectPIConstructorNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DirectPIConstructorNode.java @@ -46,4 +46,4 @@ public String getContent() { public void setContent(String content) { this.content = content; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DocumentTestNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DocumentTestNode.java index 6a2bb2d63..2c275d642 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DocumentTestNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/DocumentTestNode.java @@ -37,4 +37,4 @@ public ASTNode getElementTest() { public void setElementTest(ASTNode elementTest) { this.elementTest = elementTest; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ElementTestNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ElementTestNode.java index 2c947ad5f..87aebb4cc 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ElementTestNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ElementTestNode.java @@ -55,4 +55,4 @@ public boolean isNillable() { public void setNillable(boolean nillable) { this.nillable = nillable; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/EmptyOrderDeclNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/EmptyOrderDeclNode.java index 223896edb..7cd0d20d3 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/EmptyOrderDeclNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/EmptyOrderDeclNode.java @@ -38,4 +38,4 @@ public StaticContext.EmptyOrderProperty getMode() { public void setMode(StaticContext.EmptyOrderProperty mode) { this.mode = mode; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/EmptySequenceTypeNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/EmptySequenceTypeNode.java index 8856f6ab7..f6c9926c3 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/EmptySequenceTypeNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/EmptySequenceTypeNode.java @@ -27,4 +27,4 @@ public EmptySequenceTypeNode(SourceLocation loc) { public ASTTag getTag() { return ASTTag.EMPTY_SEQUENCE_TYPE; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/EnclosedExprNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/EnclosedExprNode.java index 347db46d7..a3185b7d3 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/EnclosedExprNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/EnclosedExprNode.java @@ -37,4 +37,4 @@ public void setExpression(ASTNode expression) { public ASTNode getExpression() { return expression; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ExprNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ExprNode.java index 8302df47a..1dfe913ed 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ExprNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ExprNode.java @@ -39,4 +39,4 @@ public List getExpressions() { public void setExpressions(List expressions) { this.expressions = expressions; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ExtensionExprNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ExtensionExprNode.java index a9c2a6d28..fd3ecbeb5 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ExtensionExprNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ExtensionExprNode.java @@ -48,4 +48,4 @@ public List getPragmas() { public void setPragmas(List pragmas) { this.pragmas = pragmas; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FLWORClauseNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FLWORClauseNode.java index 1caaf2b55..625c1f16b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FLWORClauseNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FLWORClauseNode.java @@ -22,4 +22,4 @@ public abstract class FLWORClauseNode extends ASTNode { public FLWORClauseNode(SourceLocation loc) { super(loc); } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FLWORExprNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FLWORExprNode.java index c59f1c5ef..5a8989929 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FLWORExprNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FLWORExprNode.java @@ -48,4 +48,4 @@ public ASTNode getReturnExpr() { public void setReturnExpr(ASTNode returnExpr) { this.returnExpr = returnExpr; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FTOptionDeclNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FTOptionDeclNode.java index a249913eb..e9bde4b25 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FTOptionDeclNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FTOptionDeclNode.java @@ -37,4 +37,4 @@ public ASTNode getMatchOption() { public void setMatchOption(ASTNode matchOption) { this.matchOption = matchOption; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FilterExprNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FilterExprNode.java index a19749bf5..2f740ff8e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FilterExprNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FilterExprNode.java @@ -48,4 +48,4 @@ public List getPredicates() { public void setPredicates(List predicates) { this.predicates = predicates; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ForClauseNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ForClauseNode.java index 6fca1a3f0..021cee079 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ForClauseNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ForClauseNode.java @@ -39,4 +39,4 @@ public List getVariables() { public void setVariables(List variables) { this.variables = variables; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ForVarDeclNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ForVarDeclNode.java index 053db917c..226f88fa0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ForVarDeclNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ForVarDeclNode.java @@ -73,4 +73,4 @@ public QNameNode getScoreVar() { public void setScoreVar(QNameNode scoreVar) { this.scoreVar = scoreVar; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FunctionDeclNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FunctionDeclNode.java index f1c1a0759..6e7d90889 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FunctionDeclNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FunctionDeclNode.java @@ -66,4 +66,4 @@ public ASTNode getBody() { public void setBody(ASTNode body) { this.body = body; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FunctionExprNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FunctionExprNode.java index 32afc3230..291be0957 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FunctionExprNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/FunctionExprNode.java @@ -48,4 +48,4 @@ public List getArguments() { public void setArguments(List arguments) { this.arguments = arguments; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/IfExprNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/IfExprNode.java index f963dec84..620022f8a 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/IfExprNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/IfExprNode.java @@ -55,4 +55,4 @@ public ASTNode getElseExpr() { public void setElseExpr(ASTNode elseExpr) { this.elseExpr = elseExpr; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/InfixExprNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/InfixExprNode.java index e105f1d51..83988bcfc 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/InfixExprNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/InfixExprNode.java @@ -59,4 +59,4 @@ public ASTNode getRightExpr() { public void setRightExpr(ASTNode rightExpr) { this.rightExpr = rightExpr; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ItemTestNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ItemTestNode.java index 35a720927..f33f631b5 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ItemTestNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ItemTestNode.java @@ -27,4 +27,4 @@ public ItemTestNode(SourceLocation loc) { public ASTTag getTag() { return ASTTag.ITEM_TEST; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ItemTypeNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ItemTypeNode.java index 6389e972d..678511da8 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ItemTypeNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ItemTypeNode.java @@ -27,4 +27,4 @@ public ItemTypeNode(SourceLocation loc) { public ASTTag getTag() { return ASTTag.ITEM_TYPE; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/LetClauseNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/LetClauseNode.java index fd332d8c8..a92c03e73 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/LetClauseNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/LetClauseNode.java @@ -39,4 +39,4 @@ public List getVariables() { public void setVariables(List variables) { this.variables = variables; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/LetVarDeclNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/LetVarDeclNode.java index 06445434b..b11177c9f 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/LetVarDeclNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/LetVarDeclNode.java @@ -64,4 +64,4 @@ public void setScoreVar(QNameNode scoreVar) { public QNameNode getScoreVar() { return scoreVar; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/LibraryModuleNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/LibraryModuleNode.java index 5553dddd3..7342499aa 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/LibraryModuleNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/LibraryModuleNode.java @@ -37,4 +37,4 @@ public ModuleDeclNode getModuleDecl() { public void setModuleDecl(ModuleDeclNode moduleDecl) { this.moduleDecl = moduleDecl; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/LiteralNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/LiteralNode.java index 774e38a72..04ef09cdc 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/LiteralNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/LiteralNode.java @@ -53,4 +53,4 @@ public LiteralType getType() { public void setType(LiteralType type) { this.type = type; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/MainModuleNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/MainModuleNode.java index 6416c7082..0a7984769 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/MainModuleNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/MainModuleNode.java @@ -37,4 +37,4 @@ public QueryBodyNode getQueryBody() { public void setQueryBody(QueryBodyNode queryBody) { this.queryBody = queryBody; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ModuleDeclNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ModuleDeclNode.java index f163f788b..2e342a7d9 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ModuleDeclNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ModuleDeclNode.java @@ -46,4 +46,4 @@ public String getTargetNS() { public void setTargetNS(String targetNS) { this.targetNS = targetNS; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ModuleImportNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ModuleImportNode.java index fe2b0f80c..c3ba74525 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ModuleImportNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ModuleImportNode.java @@ -57,4 +57,4 @@ public List getLocations() { public void setLocations(List locations) { this.locations = locations; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ModuleNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ModuleNode.java index 531900d3d..bc2faa36f 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ModuleNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ModuleNode.java @@ -42,4 +42,4 @@ public PrologNode getProlog() { public void setProlog(PrologNode prolog) { this.prolog = prolog; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/NCNameNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/NCNameNode.java index 201773b30..759a9fecb 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/NCNameNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/NCNameNode.java @@ -37,4 +37,4 @@ public String getName() { public void setName(String name) { this.name = name; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/NameTestNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/NameTestNode.java index e707f8318..6248ed6d3 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/NameTestNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/NameTestNode.java @@ -46,4 +46,4 @@ public String getLocalName() { public void setLocalName(String localName) { this.localName = localName; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/NamespaceDeclNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/NamespaceDeclNode.java index 3b6412222..2e6b625d9 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/NamespaceDeclNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/NamespaceDeclNode.java @@ -46,4 +46,4 @@ public String getUri() { public void setUri(String uri) { this.uri = uri; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/OptionDeclNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/OptionDeclNode.java index 3b33e3241..2dfd4bd51 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/OptionDeclNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/OptionDeclNode.java @@ -46,4 +46,4 @@ public String getValue() { public void setValue(String value) { this.value = value; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/OrderSpecNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/OrderSpecNode.java index 0c1df9375..4d53cabe1 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/OrderSpecNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/OrderSpecNode.java @@ -66,4 +66,4 @@ public String getCollation() { public void setCollation(String collation) { this.collation = collation; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/OrderbyClauseNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/OrderbyClauseNode.java index 7510670ca..9b9bca473 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/OrderbyClauseNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/OrderbyClauseNode.java @@ -48,4 +48,4 @@ public boolean isStable() { public void setStable(boolean stable) { this.stable = stable; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/OrderedExprNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/OrderedExprNode.java index 2510e962d..a99866c49 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/OrderedExprNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/OrderedExprNode.java @@ -37,4 +37,4 @@ public ASTNode getExpr() { public void setExpr(ASTNode expr) { this.expr = expr; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/OrderingModeDeclNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/OrderingModeDeclNode.java index 1080be4f2..cd57b14ee 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/OrderingModeDeclNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/OrderingModeDeclNode.java @@ -38,4 +38,4 @@ public StaticContext.OrderingModeProperty getMode() { public void setMode(StaticContext.OrderingModeProperty mode) { this.mode = mode; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/PITestNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/PITestNode.java index d7bd8bc63..80a9507b1 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/PITestNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/PITestNode.java @@ -37,4 +37,4 @@ public String getTarget() { public void setTarget(String target) { this.target = target; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ParamNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ParamNode.java index 2eb0fcc29..42201fc92 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ParamNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ParamNode.java @@ -46,4 +46,4 @@ public TypeDeclNode getType() { public void setType(TypeDeclNode type) { this.type = type; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ParenthesizedExprNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ParenthesizedExprNode.java index da6b5ac0f..62c7603d1 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ParenthesizedExprNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ParenthesizedExprNode.java @@ -37,4 +37,4 @@ public ASTNode getExpr() { public void setExpr(ASTNode expr) { this.expr = expr; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/PathExprNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/PathExprNode.java index fd2f1a52b..f674848ee 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/PathExprNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/PathExprNode.java @@ -49,4 +49,4 @@ public List getPaths() { public void setPaths(List paths) { this.paths = paths; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/PragmaNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/PragmaNode.java index abc97363e..cd30ea226 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/PragmaNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/PragmaNode.java @@ -46,4 +46,4 @@ public String getPragmaValue() { public void setPragmaValue(String pragmaValue) { this.pragmaValue = pragmaValue; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/PrologNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/PrologNode.java index 641037235..70e3e417e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/PrologNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/PrologNode.java @@ -39,4 +39,4 @@ public List getDecls() { public void setDecls(List decls) { this.decls = decls; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/QNameNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/QNameNode.java index 821018526..7b412aa05 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/QNameNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/QNameNode.java @@ -46,4 +46,4 @@ public String getLocalName() { public void setLocalName(String localName) { this.localName = localName; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/QuantifiedExprNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/QuantifiedExprNode.java index e75ca143b..be5ef1d0c 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/QuantifiedExprNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/QuantifiedExprNode.java @@ -61,4 +61,4 @@ public void setVariables(List variables) { public List getVariables() { return variables; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/QuantifiedVarDeclNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/QuantifiedVarDeclNode.java index 6c5cf87e8..2274e75fa 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/QuantifiedVarDeclNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/QuantifiedVarDeclNode.java @@ -55,4 +55,4 @@ public ASTNode getSequence() { public void setSequence(ASTNode sequence) { this.sequence = sequence; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/QueryBodyNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/QueryBodyNode.java index c5b23f8a8..8fc86d366 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/QueryBodyNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/QueryBodyNode.java @@ -37,4 +37,4 @@ public void setExpression(ASTNode expression) { public ASTNode getExpression() { return expression; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/RelativePathExprNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/RelativePathExprNode.java index 291a7d614..3b7d52bef 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/RelativePathExprNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/RelativePathExprNode.java @@ -47,4 +47,4 @@ public ASTNode getPath() { public void setPath(ASTNode path) { this.path = path; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SQuotedAttributeContentNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SQuotedAttributeContentNode.java index ccdc520da..d102815ce 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SQuotedAttributeContentNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SQuotedAttributeContentNode.java @@ -37,4 +37,4 @@ public String getContent() { public void setContent(String content) { this.content = content; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SchemaAttributeTestNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SchemaAttributeTestNode.java index c20f47311..7a0582fde 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SchemaAttributeTestNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SchemaAttributeTestNode.java @@ -37,4 +37,4 @@ public QNameNode getName() { public void setName(QNameNode name) { this.name = name; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SchemaElementTestNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SchemaElementTestNode.java index 36050a1de..782daa672 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SchemaElementTestNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SchemaElementTestNode.java @@ -37,4 +37,4 @@ public QNameNode getName() { public void setName(QNameNode name) { this.name = name; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SchemaImportNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SchemaImportNode.java index 39c05b0f2..49a263f46 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SchemaImportNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SchemaImportNode.java @@ -66,4 +66,4 @@ public void setDefaultElementNamespace(boolean defaultElementNamespace) { public boolean isDefaultElementNamespace() { return defaultElementNamespace; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SequenceTypeNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SequenceTypeNode.java index 7cc63cb51..17fb4ee50 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SequenceTypeNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SequenceTypeNode.java @@ -47,4 +47,4 @@ public XQueryConstants.TypeQuantifier getQuantifier() { public void setQuantifier(XQueryConstants.TypeQuantifier quantifier) { this.quantifier = quantifier; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SingleTypeNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SingleTypeNode.java index b8014a44e..3bc78fab8 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SingleTypeNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/SingleTypeNode.java @@ -46,4 +46,4 @@ public boolean isOptional() { public void setOptional(boolean optional) { this.optional = optional; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/TextTestNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/TextTestNode.java index a5552fb8c..e08f68079 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/TextTestNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/TextTestNode.java @@ -27,4 +27,4 @@ public TextTestNode(SourceLocation loc) { public ASTTag getTag() { return ASTTag.TEXT_TEST; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/TextualNodeContentNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/TextualNodeContentNode.java index 6b83fd620..12a6fb733 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/TextualNodeContentNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/TextualNodeContentNode.java @@ -37,4 +37,4 @@ public String getContent() { public void setContent(String content) { this.content = content; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/TypeDeclNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/TypeDeclNode.java index 5b7acccbb..3d54f9af7 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/TypeDeclNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/TypeDeclNode.java @@ -37,4 +37,4 @@ public SequenceTypeNode getType() { public void setType(SequenceTypeNode type) { this.type = type; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/TypeExprNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/TypeExprNode.java index 9dc8eb0d5..27a3edeb2 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/TypeExprNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/TypeExprNode.java @@ -59,4 +59,4 @@ public ASTNode getType() { public void setType(ASTNode type) { this.type = type; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/TypeswitchExprNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/TypeswitchExprNode.java index 1f7511088..333ae4cfb 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/TypeswitchExprNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/TypeswitchExprNode.java @@ -66,4 +66,4 @@ public ASTNode getDefaultClause() { public void setDefaultClause(ASTNode defaultClause) { this.defaultClause = defaultClause; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/UnaryExprNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/UnaryExprNode.java index 5313c7030..c6375c311 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/UnaryExprNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/UnaryExprNode.java @@ -52,4 +52,4 @@ public List getSigns() { public void setSigns(List signs) { this.signs = signs; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/UnorderedExprNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/UnorderedExprNode.java index 52b9ad37f..3343386d5 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/UnorderedExprNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/UnorderedExprNode.java @@ -37,4 +37,4 @@ public ASTNode getExpr() { public void setExpr(ASTNode expr) { this.expr = expr; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ValidateExprNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ValidateExprNode.java index 997104191..6535591c2 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ValidateExprNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/ValidateExprNode.java @@ -47,4 +47,4 @@ public void setMode(XQueryConstants.ValidationMode mode) { public XQueryConstants.ValidationMode getMode() { return mode; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/VarDeclNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/VarDeclNode.java index 41a3ca8c6..d86056682 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/VarDeclNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/VarDeclNode.java @@ -55,4 +55,4 @@ public ASTNode getValue() { public void setValue(ASTNode value) { this.value = value; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/VarRefNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/VarRefNode.java index b15496813..82ea5db04 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/VarRefNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/VarRefNode.java @@ -37,4 +37,4 @@ public QNameNode getVariable() { public void setVariable(QNameNode variable) { this.variable = variable; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/VersionDeclNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/VersionDeclNode.java index e1887677b..0c866c805 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/VersionDeclNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/VersionDeclNode.java @@ -47,4 +47,4 @@ public String getEncoding() { public void setEncoding(String encoding) { this.encoding = encoding; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/WhereClauseNode.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/WhereClauseNode.java index fdc6c5798..25f01e6ba 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/WhereClauseNode.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/ast/WhereClauseNode.java @@ -37,4 +37,4 @@ public ASTNode getCondition() { public void setCondition(ASTNode condition) { this.condition = condition; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/Module.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/Module.java index 5de394143..8707a8ba6 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/Module.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/Module.java @@ -17,8 +17,8 @@ import org.apache.vxquery.compiler.CompilerControlBlock; import org.apache.vxquery.context.StaticContext; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalPlan; -import org.apache.hyracks.api.job.JobSpecification; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalPlan; +import edu.uci.ics.hyracks.api.job.JobSpecification; public class Module { private ModuleType moduleType; @@ -87,4 +87,4 @@ public JobSpecification getHyracksJobSpecification() { public void setHyracksJobSpecification(JobSpecification jobSpec) { this.jobSpec = jobSpec; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/NoopXQueryCompilationListener.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/NoopXQueryCompilationListener.java index e4f6837ed..6b815935e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/NoopXQueryCompilationListener.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/NoopXQueryCompilationListener.java @@ -41,4 +41,4 @@ public void notifyOptimizedResult(Module module) { @Override public void notifyParseResult(ModuleNode moduleNode) { } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/PrologVariable.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/PrologVariable.java index 070529e3c..960c931ab 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/PrologVariable.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/PrologVariable.java @@ -28,4 +28,4 @@ public PrologVariable(XQueryVariable variable) { public XQueryVariable getVariable() { return variable; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryCompiler.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryCompiler.java index e42caba7d..3055c6432 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryCompiler.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryCompiler.java @@ -40,37 +40,37 @@ import org.apache.vxquery.xmlquery.ast.ModuleNode; import org.apache.vxquery.xmlquery.translator.XMLQueryTranslator; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; -import org.apache.hyracks.algebricks.common.exceptions.NotImplementedException; -import org.apache.hyracks.algebricks.common.utils.Pair; -import org.apache.hyracks.algebricks.compiler.api.HeuristicCompilerFactoryBuilder; -import org.apache.hyracks.algebricks.compiler.api.ICompiler; -import org.apache.hyracks.algebricks.compiler.api.ICompilerFactory; -import org.apache.hyracks.algebricks.compiler.rewriter.rulecontrollers.PrioritizedRuleController; -import org.apache.hyracks.algebricks.compiler.rewriter.rulecontrollers.SequentialFixpointRuleController; -import org.apache.hyracks.algebricks.compiler.rewriter.rulecontrollers.SequentialOnceRuleController; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.IOptimizationContext; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; -import org.apache.hyracks.algebricks.core.algebra.expressions.ConstantExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.IAlgebricksConstantValue; -import org.apache.hyracks.algebricks.core.algebra.expressions.IExpressionEvalSizeComputer; -import org.apache.hyracks.algebricks.core.algebra.expressions.IExpressionTypeComputer; -import org.apache.hyracks.algebricks.core.algebra.expressions.IMergeAggregationExpressionFactory; -import org.apache.hyracks.algebricks.core.algebra.expressions.INullableTypeComputer; -import org.apache.hyracks.algebricks.core.algebra.expressions.IVariableTypeEnvironment; -import org.apache.hyracks.algebricks.core.algebra.metadata.IMetadataProvider; -import org.apache.hyracks.algebricks.core.algebra.prettyprint.LogicalOperatorPrettyPrintVisitor; -import org.apache.hyracks.algebricks.core.rewriter.base.AbstractRuleController; -import org.apache.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; -import org.apache.hyracks.algebricks.core.rewriter.base.IOptimizationContextFactory; -import org.apache.hyracks.algebricks.core.rewriter.base.PhysicalOptimizationConfig; -import org.apache.hyracks.algebricks.data.ISerializerDeserializerProvider; -import org.apache.hyracks.algebricks.data.ITypeTraitProvider; -import org.apache.hyracks.api.dataflow.value.ISerializerDeserializer; -import org.apache.hyracks.api.dataflow.value.ITypeTraits; -import org.apache.hyracks.api.job.JobSpecification; -import org.apache.hyracks.data.std.primitive.VoidPointable; +import edu.uci.ics.hyracks.algebricks.common.exceptions.AlgebricksException; +import edu.uci.ics.hyracks.algebricks.common.exceptions.NotImplementedException; +import edu.uci.ics.hyracks.algebricks.common.utils.Pair; +import edu.uci.ics.hyracks.algebricks.compiler.api.HeuristicCompilerFactoryBuilder; +import edu.uci.ics.hyracks.algebricks.compiler.api.ICompiler; +import edu.uci.ics.hyracks.algebricks.compiler.api.ICompilerFactory; +import edu.uci.ics.hyracks.algebricks.compiler.rewriter.rulecontrollers.PrioritizedRuleController; +import edu.uci.ics.hyracks.algebricks.compiler.rewriter.rulecontrollers.SequentialFixpointRuleController; +import edu.uci.ics.hyracks.algebricks.compiler.rewriter.rulecontrollers.SequentialOnceRuleController; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.IOptimizationContext; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.ConstantExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.IAlgebricksConstantValue; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.IExpressionEvalSizeComputer; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.IExpressionTypeComputer; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.IMergeAggregationExpressionFactory; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.INullableTypeComputer; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.IVariableTypeEnvironment; +import edu.uci.ics.hyracks.algebricks.core.algebra.metadata.IMetadataProvider; +import edu.uci.ics.hyracks.algebricks.core.algebra.prettyprint.LogicalOperatorPrettyPrintVisitor; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.AbstractRuleController; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.IAlgebraicRewriteRule; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.IOptimizationContextFactory; +import edu.uci.ics.hyracks.algebricks.core.rewriter.base.PhysicalOptimizationConfig; +import edu.uci.ics.hyracks.algebricks.data.ISerializerDeserializerProvider; +import edu.uci.ics.hyracks.algebricks.data.ITypeTraitProvider; +import edu.uci.ics.hyracks.api.dataflow.value.ISerializerDeserializer; +import edu.uci.ics.hyracks.api.dataflow.value.ITypeTraits; +import edu.uci.ics.hyracks.api.job.JobSpecification; +import edu.uci.ics.hyracks.data.std.primitive.VoidPointable; public class XMLQueryCompiler { private final XQueryCompilationListener listener; @@ -126,7 +126,7 @@ public IOptimizationContext createOptimizationContext(int varCounter, builder.setLogicalRewrites(buildDefaultLogicalRewrites()); builder.setPhysicalRewrites(buildDefaultPhysicalRewrites()); builder.setSerializerDeserializerProvider(new ISerializerDeserializerProvider() { - @SuppressWarnings("rawtypes") + @SuppressWarnings("unchecked") @Override public ISerializerDeserializer getSerializerDeserializer(Object type) throws AlgebricksException { return null; @@ -164,13 +164,7 @@ public Object getType(ILogicalExpression expr, IMetadataProvider metadataP builder.setNullableTypeComputer(new INullableTypeComputer() { @Override public Object makeNullableType(Object type) throws AlgebricksException { - SequenceType st = (SequenceType) type; - if (st.getQuantifier().allowsEmptySequence()) { - return type; - } else if (st.getQuantifier() == Quantifier.QUANT_ONE) { - return SequenceType.create(st.getItemType(), Quantifier.QUANT_QUESTION); - } - return type; + throw new NotImplementedException("NullableTypeComputer is not implented (makeNullableType)"); } @Override @@ -199,8 +193,7 @@ public void compile(String name, Reader query, CompilerControlBlock ccb, int opt module = new XMLQueryTranslator(ccb).translateModule(moduleNode); pprinter = new LogicalOperatorPrettyPrintVisitor(new VXQueryLogicalExpressionPrettyPrintVisitor( module.getModuleContext())); - VXQueryMetadataProvider mdProvider = new VXQueryMetadataProvider(nodeList, ccb.getSourceFileMap(), - module.getModuleContext()); + VXQueryMetadataProvider mdProvider = new VXQueryMetadataProvider(nodeList, ccb.getSourceFileMap()); compiler = cFactory.createCompiler(module.getBody(), mdProvider, 0); listener.notifyTranslationResult(module); XMLQueryTypeChecker.typeCheckModule(module); @@ -241,13 +234,11 @@ private static List>> b defaultLogicalRewrites.add(new Pair>(priorityCtrl, RewriteRuleset.buildXQueryNormalizationRuleCollection())); defaultLogicalRewrites.add(new Pair>(seqCtrlFullDfs, - RewriteRuleset.buildInlineRedundantExpressionNormalizationRuleCollection())); + RewriteRuleset.buildRedundantExpressionNormalizationRuleCollection())); defaultLogicalRewrites.add(new Pair>(priorityCtrl, RewriteRuleset.buildNestedDataSourceRuleCollection())); defaultLogicalRewrites.add(new Pair>(seqOnceCtrl, RewriteRuleset.buildTypeInferenceRuleCollection())); - defaultLogicalRewrites.add(new Pair>(seqCtrlNoDfs, - RewriteRuleset.buildUnnestingRuleCollection())); defaultLogicalRewrites.add(new Pair>(seqCtrlFullDfs, RewriteRuleset.buildNormalizationRuleCollection())); defaultLogicalRewrites.add(new Pair>(seqCtrlNoDfs, @@ -276,4 +267,4 @@ private static List>> b return defaultPhysicalRewrites; } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryParser.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryParser.java index 04690f5df..f2a97cc78 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryParser.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryParser.java @@ -44,4 +44,4 @@ public static ModuleNode parse(String sourceName, Reader input) throws SystemExc private XMLQueryParser() { } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryTypeChecker.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryTypeChecker.java index aee9812fc..fdf3a535d 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryTypeChecker.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XMLQueryTypeChecker.java @@ -20,4 +20,4 @@ private XMLQueryTypeChecker() { static void typeCheckModule(Module module) { } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XQueryCompilationListener.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XQueryCompilationListener.java index 48bc7e623..94aedb668 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XQueryCompilationListener.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XQueryCompilationListener.java @@ -26,4 +26,4 @@ public interface XQueryCompilationListener { public void notifyCodegenResult(Module module); public void notifyOptimizedResult(Module module); -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XQueryConstants.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XQueryConstants.java index d8fdf949d..00997b95b 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XQueryConstants.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/query/XQueryConstants.java @@ -62,4 +62,4 @@ public enum PathType { SLASH, SLASH_SLASH, } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/translator/VXQueryPositionWriter.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/translator/VXQueryPositionWriter.java index e4e222dfc..f8a3c65f0 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/translator/VXQueryPositionWriter.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/translator/VXQueryPositionWriter.java @@ -18,13 +18,14 @@ import java.io.IOException; import java.io.Serializable; -import org.apache.hyracks.algebricks.runtime.base.IUnnestingPositionWriter; import org.apache.vxquery.datamodel.values.ValueTag; +import edu.uci.ics.hyracks.algebricks.runtime.base.IUnnestingPositionWriter; + public class VXQueryPositionWriter implements IUnnestingPositionWriter, Serializable { private static final long serialVersionUID = 1L; - public void write(DataOutput dataOutput, long position) throws IOException { + public void write(DataOutput dataOutput, int position) throws IOException { dataOutput.writeByte(ValueTag.XS_INTEGER_TAG); dataOutput.writeLong(position); } diff --git a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/translator/XMLQueryTranslator.java b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/translator/XMLQueryTranslator.java index d2ff3da5c..6b443b63e 100644 --- a/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/translator/XMLQueryTranslator.java +++ b/vxquery-core/src/main/java/org/apache/vxquery/xmlquery/translator/XMLQueryTranslator.java @@ -33,31 +33,6 @@ import org.apache.commons.lang3.mutable.Mutable; import org.apache.commons.lang3.mutable.MutableObject; import org.apache.commons.lang3.tuple.Pair; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalExpression; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalOperator; -import org.apache.hyracks.algebricks.core.algebra.base.ILogicalPlan; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalOperatorTag; -import org.apache.hyracks.algebricks.core.algebra.base.LogicalVariable; -import org.apache.hyracks.algebricks.core.algebra.expressions.AbstractFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.AggregateFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.ConstantExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.ScalarFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.UnnestingFunctionCallExpression; -import org.apache.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AggregateOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.DistributeResultOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.EmptyTupleSourceOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.NestedTupleSourceOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.OrderOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.SelectOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.SubplanOperator; -import org.apache.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; -import org.apache.hyracks.algebricks.core.algebra.plan.ALogicalPlanImpl; -import org.apache.hyracks.data.std.primitive.DoublePointable; -import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; -import org.apache.hyracks.data.std.util.ByteArrayAccessibleOutputStream; import org.apache.vxquery.compiler.CompilerControlBlock; import org.apache.vxquery.compiler.algebricks.VXQueryConstantValue; import org.apache.vxquery.context.StaticContext; @@ -181,6 +156,30 @@ import org.apache.vxquery.xmlquery.query.XQueryConstants.PathType; import org.apache.vxquery.xmlquery.query.XQueryConstants.TypeQuantifier; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.ILogicalPlan; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalExpressionTag; +import edu.uci.ics.hyracks.algebricks.core.algebra.base.LogicalVariable; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.AggregateFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.ConstantExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.ScalarFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.UnnestingFunctionCallExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.expressions.VariableReferenceExpression; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AggregateOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.AssignOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.DistributeResultOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.EmptyTupleSourceOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.NestedTupleSourceOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.OrderOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.SelectOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.SubplanOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.operators.logical.UnnestOperator; +import edu.uci.ics.hyracks.algebricks.core.algebra.plan.ALogicalPlanImpl; +import edu.uci.ics.hyracks.data.std.primitive.DoublePointable; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; +import edu.uci.ics.hyracks.data.std.util.ByteArrayAccessibleOutputStream; + public class XMLQueryTranslator { private static final Pattern UNQUOTER = Pattern .compile("(<)|(>)|(')|(&)|(")|(\"\")|('')|(&#\\d+;)|(&#x(?:[A-Fa-f0-9])+;)"); @@ -225,8 +224,8 @@ public Module translateModule(ModuleNode moduleNode) throws SystemException { Module module = new Module(); moduleCtx = new StaticContextImpl(rootCtx); - moduleCtx.registerVariable(new XQueryVariable(XMLQueryCompilerConstants.DOT_VAR_NAME, - SequenceType.create(AnyItemType.INSTANCE, Quantifier.QUANT_ONE), newLogicalVariable())); + moduleCtx.registerVariable(new XQueryVariable(XMLQueryCompilerConstants.DOT_VAR_NAME, SequenceType.create( + AnyItemType.INSTANCE, Quantifier.QUANT_ONE), newLogicalVariable())); rootVarScope = new RootVariableScope(); currCtx = moduleCtx; module.setModuleContext(moduleCtx); @@ -402,8 +401,8 @@ private void parsePrologPass1(PrologNode prologNode) throws SystemException { paramTypes[i] = Pair. of(pName, pType); } Signature sign = new Signature(rType, paramTypes); - Function f = external ? new ExternalFunction(name, sign) - : new UserDefinedXQueryFunction(name, sign, null); + Function f = external ? new ExternalFunction(name, sign) : new UserDefinedXQueryFunction(name, + sign, null); moduleCtx.registerFunction(f); break; } @@ -511,8 +510,8 @@ private SequenceType createSequenceType(ASTNode type) throws SystemException { case SINGLE_TYPE: { SingleTypeNode stNode = (SingleTypeNode) type; ItemType iType = createItemType(stNode.getAtomicType()); - return SequenceType.create(iType, - stNode.isOptional() ? Quantifier.QUANT_QUESTION : Quantifier.QUANT_ONE); + return SequenceType.create(iType, stNode.isOptional() ? Quantifier.QUANT_QUESTION + : Quantifier.QUANT_ONE); } default: @@ -763,7 +762,7 @@ private LogicalVariable translateExpression(ASTNode value, TranslationContext tC return translateQuantifiedExprNode(tCtx, qeNode); } - /* + /* case TYPESWITCH_EXPRESSION: { TypeswitchExprNode teNode = (TypeswitchExprNode) value; Expression sExpr = translateExpression(teNode.getSwitchExpr()); @@ -899,9 +898,9 @@ private LogicalVariable translateQuantifiedExprNode(TranslationContext tCtx, Qua tCtx.popVariableScope(); } tCtx = tCtx.popContext(); - LogicalVariable lVar = createAssignment(sfce( - qeNode.getQuant() == QuantifierType.EVERY ? BuiltinFunctions.FN_EMPTY_1 : BuiltinFunctions.FN_EXISTS_1, - vre(var)), tCtx); + LogicalVariable lVar = createAssignment( + sfce(qeNode.getQuant() == QuantifierType.EVERY ? BuiltinFunctions.FN_EMPTY_1 + : BuiltinFunctions.FN_EXISTS_1, vre(var)), tCtx); return lVar; } @@ -921,10 +920,10 @@ private LogicalVariable translateOrderedExprNode(TranslationContext tCtx, Ordere private LogicalVariable translateCDataSectionNode(TranslationContext tCtx, CDataSectionNode cdsNode) throws SystemException { - LogicalVariable lVar = createAssignment(sfce(BuiltinOperators.TEXT_CONSTRUCTOR, - ce(SequenceType.create(BuiltinTypeRegistry.XS_UNTYPED_ATOMIC, Quantifier.QUANT_ONE), - cdsNode.getContent())), - tCtx); + LogicalVariable lVar = createAssignment( + sfce(BuiltinOperators.TEXT_CONSTRUCTOR, + ce(SequenceType.create(BuiltinTypeRegistry.XS_UNTYPED_ATOMIC, Quantifier.QUANT_ONE), + cdsNode.getContent())), tCtx); return lVar; } @@ -943,8 +942,8 @@ private LogicalVariable translateQNameNode(TranslationContext tCtx, QNameNode qn private LogicalVariable translateValidateExprNode(TranslationContext tCtx, ValidateExprNode vNode) throws SystemException { XQueryConstants.ValidationMode mode = vNode.getMode(); - Function fn = mode == null || XQueryConstants.ValidationMode.STRICT.equals(mode) - ? BuiltinOperators.VALIDATE_STRICT : BuiltinOperators.VALIDATE_LAX; + Function fn = mode == null || XQueryConstants.ValidationMode.STRICT.equals(mode) ? BuiltinOperators.VALIDATE_STRICT + : BuiltinOperators.VALIDATE_LAX; LogicalVariable lVar = createAssignment(sfce(fn, vre(translateExpression(vNode.getExpr(), tCtx))), tCtx); return lVar; } @@ -954,8 +953,8 @@ private LogicalVariable translateComputedAttributeConstructorNode(TranslationCon ILogicalExpression name = cast(vre(translateExpression(cNode.getName(), tCtx)), SequenceType.create(BuiltinTypeRegistry.XS_QNAME, Quantifier.QUANT_ONE)); ASTNode content = cNode.getContent(); - ILogicalExpression cExpr = content == null ? sfce(BuiltinOperators.CONCATENATE) - : vre(translateExpression(content, tCtx)); + ILogicalExpression cExpr = content == null ? sfce(BuiltinOperators.CONCATENATE) : vre(translateExpression( + content, tCtx)); LogicalVariable lVar = createAssignment(sfce(BuiltinOperators.ATTRIBUTE_CONSTRUCTOR, name, cExpr), tCtx); return lVar; } @@ -965,8 +964,8 @@ private LogicalVariable translateComputedElementConstructorNode(TranslationConte ILogicalExpression name = cast(vre(translateExpression(cNode.getName(), tCtx)), SequenceType.create(BuiltinTypeRegistry.XS_QNAME, Quantifier.QUANT_ONE)); ASTNode content = cNode.getContent(); - ILogicalExpression cExpr = content == null ? sfce(BuiltinOperators.CONCATENATE) - : vre(translateExpression(content, tCtx)); + ILogicalExpression cExpr = content == null ? sfce(BuiltinOperators.CONCATENATE) : vre(translateExpression( + content, tCtx)); LogicalVariable lVar = createAssignment(sfce(BuiltinOperators.ELEMENT_CONSTRUCTOR, name, cExpr), tCtx); return lVar; } @@ -982,9 +981,8 @@ private LogicalVariable translateComputedCommentConstructorNode(TranslationConte ComputedCommentConstructorNode cNode) throws SystemException { ASTNode content = cNode.getContent(); LogicalVariable lVar = createAssignment( - sfce(BuiltinOperators.COMMENT_CONSTRUCTOR, - content == null ? sfce(BuiltinOperators.CONCATENATE) : vre(translateExpression(content, tCtx))), - tCtx); + sfce(BuiltinOperators.COMMENT_CONSTRUCTOR, content == null ? sfce(BuiltinOperators.CONCATENATE) + : vre(translateExpression(content, tCtx))), tCtx); return lVar; } @@ -1001,16 +999,15 @@ private LogicalVariable translateComputedPIConstructorNode(TranslationContext tC private LogicalVariable translateComputedTextConstructorNode(TranslationContext tCtx, ComputedTextConstructorNode cNode) throws SystemException { ASTNode content = cNode.getContent(); - LogicalVariable lVar = createAssignment(sfce(BuiltinOperators.TEXT_CONSTRUCTOR, - content == null - ? ce(SequenceType.create(BuiltinTypeRegistry.XS_UNTYPED_ATOMIC, Quantifier.QUANT_ONE), "") - : vre(translateExpression(content, tCtx))), - tCtx); + LogicalVariable lVar = createAssignment( + sfce(BuiltinOperators.TEXT_CONSTRUCTOR, + content == null ? ce( + SequenceType.create(BuiltinTypeRegistry.XS_UNTYPED_ATOMIC, Quantifier.QUANT_ONE), "") + : vre(translateExpression(content, tCtx))), tCtx); return lVar; } - private LogicalVariable translateFLWORExprNode(TranslationContext tCtx, FLWORExprNode fNode) - throws SystemException { + private LogicalVariable translateFLWORExprNode(TranslationContext tCtx, FLWORExprNode fNode) throws SystemException { tCtx = tCtx.pushContext(); List cNodes = fNode.getClauses(); int pushCount = 0; @@ -1035,8 +1032,8 @@ private LogicalVariable translateFLWORExprNode(TranslationContext tCtx, FLWORExp tCtx.varScope.registerVariable(forVar); XQueryVariable posVar = null; if (fvdNode.getPosVar() != null) { - posVar = new XQueryVariable(createQName(fvdNode.getPosVar()), - SequenceType.create(BuiltinTypeRegistry.XS_INTEGER, Quantifier.QUANT_ONE), posLVar); + posVar = new XQueryVariable(createQName(fvdNode.getPosVar()), SequenceType.create( + BuiltinTypeRegistry.XS_INTEGER, Quantifier.QUANT_ONE), posLVar); tCtx.varScope.registerVariable(posVar); } assert fvdNode.getScoreVar() == null; @@ -1051,12 +1048,11 @@ private LogicalVariable translateFLWORExprNode(TranslationContext tCtx, FLWORExp for (LetVarDeclNode lvdNode : lcNode.getVariables()) { LogicalVariable seqVar = translateExpression(lvdNode.getSequence(), tCtx); tCtx.pushVariableScope(); - SequenceType letVarType = SequenceType.create(AnyItemType.INSTANCE, Quantifier.QUANT_STAR); + SequenceType letVarType = SequenceType.create(AnyItemType.INSTANCE, Quantifier.QUANT_ONE); if (lvdNode.getType() != null) { letVarType = createSequenceType(lvdNode.getType()); } - XQueryVariable letVar = new XQueryVariable(createQName(lvdNode.getLetVar()), letVarType, - seqVar); + XQueryVariable letVar = new XQueryVariable(createQName(lvdNode.getLetVar()), letVarType, seqVar); tCtx.varScope.registerVariable(letVar); ++pushCount; } @@ -1073,7 +1069,7 @@ private LogicalVariable translateFLWORExprNode(TranslationContext tCtx, FLWORExp } case ORDERBY_CLAUSE: { OrderbyClauseNode ocNode = (OrderbyClauseNode) cNode; - List>> oExprs = new ArrayList>>(); + List>> oExprs = new ArrayList>>(); List collations = new ArrayList(); for (OrderSpecNode osNode : ocNode.getOrderSpec()) { ILogicalExpression oExpr = vre(translateExpression(osNode.getExpression(), tCtx)); @@ -1105,9 +1101,8 @@ private LogicalVariable translateFLWORExprNode(TranslationContext tCtx, FLWORExp } collations.add(osNode.getCollation()); */ - oExprs.add( - new org.apache.hyracks.algebricks.common.utils.Pair>( - o, mutable(oExpr))); + oExprs.add(new edu.uci.ics.hyracks.algebricks.common.utils.Pair>( + o, mutable(oExpr))); } OrderOperator order = new OrderOperator(oExprs); order.getInputs().add(mutable(tCtx.op)); @@ -1170,11 +1165,11 @@ private LogicalVariable translateDirectAttributeConstructorNode(TranslationConte } default: - content.add(data(vre(translateExpression(aVal, tCtx)))); + content.add(vre(translateExpression(aVal, tCtx))); } } - ILogicalExpression contentExpr = content.size() == 1 ? content.get(0) - : sfce(BuiltinOperators.CONCATENATE, content.toArray(new ILogicalExpression[content.size()])); + ILogicalExpression contentExpr = content.size() == 1 ? content.get(0) : sfce(BuiltinOperators.CONCATENATE, + content.toArray(new ILogicalExpression[content.size()])); LogicalVariable lVar = createAssignment(sfce(BuiltinOperators.ATTRIBUTE_CONSTRUCTOR, name, contentExpr), tCtx); return lVar; } @@ -1183,8 +1178,9 @@ private LogicalVariable translateDirectElementConstructorNode(TranslationContext DirectElementConstructorNode decNode) throws SystemException { QNameNode startName = decNode.getStartTagName(); QNameNode endName = decNode.getEndTagName(); - if (endName != null && (!startName.getPrefix().equals(endName.getPrefix()) - || !startName.getLocalName().equals(endName.getLocalName()))) { + if (endName != null + && (!startName.getPrefix().equals(endName.getPrefix()) || !startName.getLocalName().equals( + endName.getLocalName()))) { throw new SystemException(ErrorCode.XPST0003, endName.getSourceLocation()); } pushContext(); @@ -1225,8 +1221,8 @@ private LogicalVariable translateDirectElementConstructorNode(TranslationContext } } popContext(); - ILogicalExpression contentExpr = content.size() == 1 ? content.get(0) - : sfce(BuiltinOperators.CONCATENATE, content.toArray(new ILogicalExpression[content.size()])); + ILogicalExpression contentExpr = content.size() == 1 ? content.get(0) : sfce(BuiltinOperators.CONCATENATE, + content.toArray(new ILogicalExpression[content.size()])); LogicalVariable lVar = createAssignment(sfce(BuiltinOperators.ELEMENT_CONSTRUCTOR, name, contentExpr), tCtx); return lVar; } @@ -1234,8 +1230,9 @@ private LogicalVariable translateDirectElementConstructorNode(TranslationContext private LogicalVariable translateDirectCommentConstructorNode(TranslationContext tCtx, DirectCommentConstructorNode dccNode) throws SystemException { String content = dccNode.getContent(); - LogicalVariable lVar = createAssignment(sfce(BuiltinOperators.COMMENT_CONSTRUCTOR, - ce(SequenceType.create(BuiltinTypeRegistry.XS_STRING, Quantifier.QUANT_ONE), content)), tCtx); + LogicalVariable lVar = createAssignment( + sfce(BuiltinOperators.COMMENT_CONSTRUCTOR, + ce(SequenceType.create(BuiltinTypeRegistry.XS_STRING, Quantifier.QUANT_ONE), content)), tCtx); return lVar; } @@ -1243,9 +1240,10 @@ private LogicalVariable translateDirectPIConstructorNode(TranslationContext tCtx throws SystemException { String target = dpicNode.getTarget(); String content = dpicNode.getContent(); - LogicalVariable lVar = createAssignment(sfce(BuiltinOperators.PI_CONSTRUCTOR, - ce(SequenceType.create(BuiltinTypeRegistry.XS_STRING, Quantifier.QUANT_ONE), target), - ce(SequenceType.create(BuiltinTypeRegistry.XS_STRING, Quantifier.QUANT_ONE), content)), tCtx); + LogicalVariable lVar = createAssignment( + sfce(BuiltinOperators.PI_CONSTRUCTOR, + ce(SequenceType.create(BuiltinTypeRegistry.XS_STRING, Quantifier.QUANT_ONE), target), + ce(SequenceType.create(BuiltinTypeRegistry.XS_STRING, Quantifier.QUANT_ONE), content)), tCtx); return lVar; } @@ -1339,9 +1337,8 @@ private LogicalVariable translateFunctionExprNode(TranslationContext tCtx, Funct if (!type.isAtomicType()) { throw new SystemException(ErrorCode.XPST0051, fnNode.getName().getSourceLocation()); } - LogicalVariable var = args.isEmpty() - ? tCtx.varScope.lookupVariable(XMLQueryCompilerConstants.DOT_VAR_NAME).getLogicalVariable() - : args.get(0); + LogicalVariable var = args.isEmpty() ? tCtx.varScope.lookupVariable(XMLQueryCompilerConstants.DOT_VAR_NAME) + .getLogicalVariable() : args.get(0); ILogicalExpression expr = cast(vre(var), SequenceType.create((ItemType) type, Quantifier.QUANT_QUESTION)); return createAssignment(expr, tCtx); } @@ -1418,8 +1415,8 @@ private LogicalVariable translateUnaryExprNode(TranslationContext tCtx, UnaryExp } LogicalVariable var = translateExpression(ueNode.getExpr(), tCtx); if (neg) { - ILogicalExpression nExpr = normalize(vre(var), - BuiltinOperators.NUMERIC_UNARY_MINUS.getSignature().getParameterType(0)); + ILogicalExpression nExpr = normalize(vre(var), BuiltinOperators.NUMERIC_UNARY_MINUS.getSignature() + .getParameterType(0)); ILogicalExpression negExpr = sfce(BuiltinOperators.NUMERIC_UNARY_MINUS, nExpr); var = createAssignment(negExpr, tCtx); } @@ -1448,23 +1445,8 @@ private LogicalVariable translatePathExpr(PathExprNode pe, TranslationContext tC for (RelativePathExprNode rpen : pe.getPaths()) { boolean asc = true; if (PathType.SLASH_SLASH.equals(rpen.getPathType())) { - tCtx = tCtx.pushContext(); - tCtx.pushVariableScope(); - iterateOver(ctxExpr, tCtx); - ctxExpr = vre( - tCtx.varScope.lookupVariable(XMLQueryCompilerConstants.DOT_VAR_NAME).getLogicalVariable()); ctxExpr = sfce(BuiltinOperators.DESCENDANT_OR_SELF, treat(ctxExpr, SequenceType.create(AnyNodeType.INSTANCE, Quantifier.QUANT_STAR))); - List vars = new ArrayList(); - List> exprs = new ArrayList>(); - LogicalVariable var = newLogicalVariable(); - vars.add(var); - exprs.add(mutable(afce(BuiltinOperators.SEQUENCE, false, ctxExpr))); - AggregateOperator aop = new AggregateOperator(vars, exprs); - aop.getInputs().add(mutable(tCtx.op)); - tCtx.op = aop; - tCtx = tCtx.popContext(); - ctxExpr = vre(var); } boolean popScope = false; if (ctxExpr != null) { @@ -1501,43 +1483,28 @@ private LogicalVariable translatePathExpr(PathExprNode pe, TranslationContext tC throw new IllegalStateException("Unknown path node: " + pathNode.getTag()); } if (predicates != null && !predicates.isEmpty()) { - ctxExpr = vre(createAssignment(ctxExpr, tCtx)); ctxExpr = sfce(asc ? BuiltinOperators.SORT_DISTINCT_NODES_ASC_OR_ATOMICS : BuiltinOperators.SORT_DISTINCT_NODES_DESC_OR_ATOMICS, ctxExpr); - iterateOver(ctxExpr, tCtx); - int i = 0; - ILogicalExpression selectCondition = null; for (ASTNode pn : predicates) { - // Handles integer, boolean expression, path expression exists - // TODO Support inner focus between predicates. + tCtx = tCtx.pushContext(); + tCtx.pushVariableScope(); + iterateOver(ctxExpr, tCtx); LogicalVariable pLVar = translateExpression(pn, tCtx); ILogicalExpression tTest = instanceOf(vre(pLVar), SequenceType.create(BuiltinTypeRegistry.XSEXT_NUMERIC, Quantifier.QUANT_ONE)); ILogicalExpression posTest = sfce(BuiltinOperators.VALUE_EQ, vre(pLVar), vre(tCtx.varScope .lookupVariable(XMLQueryCompilerConstants.POS_VAR_NAME).getLogicalVariable())); - ILogicalExpression boolTestTmp = vre(pLVar); - if (tCtx.op.getOperatorTag() == LogicalOperatorTag.ASSIGN) { - ILogicalExpression expression = ((AssignOperator) tCtx.op).getExpressions().get(0) - .getValue(); - if (expression.getExpressionTag() == LogicalExpressionTag.FUNCTION_CALL - && ((AbstractFunctionCallExpression) expression).getFunctionIdentifier() - .equals(BuiltinOperators.CHILD.getFunctionIdentifier())) { - boolTestTmp = sfce(BuiltinFunctions.FN_COUNT_1, boolTestTmp); - } - } - ILogicalExpression boolTest = sfce(BuiltinFunctions.FN_BOOLEAN_1, boolTestTmp); - ILogicalExpression condition = sfce(BuiltinOperators.IF_THEN_ELSE, tTest, posTest, boolTest); - if (i++ == 0) { - selectCondition = condition; - } else { - selectCondition = sfce(BuiltinOperators.AND, selectCondition, condition); - } + ILogicalExpression boolTest = sfce(BuiltinFunctions.FN_BOOLEAN_1, vre(pLVar)); + + SelectOperator select = new SelectOperator(mutable(sfce(BuiltinOperators.IF_THEN_ELSE, tTest, + posTest, boolTest)), false, null); + select.getInputs().add(mutable(tCtx.op)); + tCtx.op = select; + ctxExpr = vre(tCtx.varScope.lookupVariable(XMLQueryCompilerConstants.DOT_VAR_NAME) + .getLogicalVariable()); + tCtx.popVariableScope(); + tCtx = tCtx.popContext(); } - SelectOperator select = new SelectOperator(mutable(selectCondition), false, null); - select.getInputs().add(mutable(tCtx.op)); - tCtx.op = select; - ctxExpr = vre( - tCtx.varScope.lookupVariable(XMLQueryCompilerConstants.DOT_VAR_NAME).getLogicalVariable()); } if (popScope) { tCtx.popVariableScope(); @@ -1563,8 +1530,8 @@ private LogicalVariable translatePathExpr(PathExprNode pe, TranslationContext tC private void iterateOver(ILogicalExpression ctxExpr, TranslationContext tCtx) { LogicalVariable seqLVar = createAssignment(ctxExpr, tCtx); LogicalVariable lastLVar = createAssignment(sfce(BuiltinFunctions.FN_COUNT_1, vre(seqLVar)), tCtx); - tCtx.varScope.registerVariable(new XQueryVariable(XMLQueryCompilerConstants.LAST_VAR_NAME, - SequenceType.create(BuiltinTypeRegistry.XS_INTEGER, Quantifier.QUANT_ONE), lastLVar)); + tCtx.varScope.registerVariable(new XQueryVariable(XMLQueryCompilerConstants.LAST_VAR_NAME, SequenceType.create( + BuiltinTypeRegistry.XS_INTEGER, Quantifier.QUANT_ONE), lastLVar)); LogicalVariable forLVar = newLogicalVariable(); LogicalVariable posLVar = newLogicalVariable(); UnnestOperator unnest = new UnnestOperator(forLVar, mutable(ufce(BuiltinOperators.ITERATE, vre(seqLVar))), @@ -2002,10 +1969,6 @@ private ILogicalExpression normalize(ILogicalExpression expr, SequenceType type) } } - private ILogicalExpression data(ILogicalExpression expr) throws SystemException { - return new ScalarFunctionCallExpression(BuiltinFunctions.FN_DATA_1, Collections.singletonList(mutable(expr))); - } - private ILogicalExpression promote(ILogicalExpression expr, SequenceType type) throws SystemException { int typeCode = currCtx.lookupSequenceType(type); return sfce(BuiltinOperators.PROMOTE, expr, @@ -2020,7 +1983,7 @@ private ILogicalExpression treat(ILogicalExpression expr, SequenceType type) thr private ILogicalExpression cast(ILogicalExpression expr, SequenceType type) throws SystemException { int typeCode = currCtx.lookupSequenceType(type); - return sfce(BuiltinOperators.CAST, data(expr), + return sfce(BuiltinOperators.CAST, expr, ce(SequenceType.create(BuiltinTypeRegistry.XS_INT, Quantifier.QUANT_ONE), typeCode)); } @@ -2147,4 +2110,4 @@ public void registerVariable(XQueryVariable var) { varMap.put(var.getName(), var); } } -} +} \ No newline at end of file diff --git a/vxquery-core/src/main/xslt/generate-fn-defns.xsl b/vxquery-core/src/main/xslt/generate-fn-defns.xsl index eb535824b..1206d25ed 100644 --- a/vxquery-core/src/main/xslt/generate-fn-defns.xsl +++ b/vxquery-core/src/main/xslt/generate-fn-defns.xsl @@ -80,17 +80,17 @@ - public org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory createScalarEvaluatorFactory(org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory[] args) { + public edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory createScalarEvaluatorFactory(edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory[] args) { return new (args); } - public org.apache.hyracks.algebricks.runtime.base.IAggregateEvaluatorFactory createAggregateEvaluatorFactory(org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory[] args) { + public edu.uci.ics.hyracks.algebricks.runtime.base.IAggregateEvaluatorFactory createAggregateEvaluatorFactory(edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory[] args) { return new (args); } - public org.apache.hyracks.algebricks.runtime.base.IUnnestingEvaluatorFactory createUnnestingEvaluatorFactory(org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory[] args) { + public edu.uci.ics.hyracks.algebricks.runtime.base.IUnnestingEvaluatorFactory createUnnestingEvaluatorFactory(edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory[] args) { return new (args); } diff --git a/vxquery-core/src/main/xslt/generate-op-defns.xsl b/vxquery-core/src/main/xslt/generate-op-defns.xsl index f70637087..1ee8c08e8 100644 --- a/vxquery-core/src/main/xslt/generate-op-defns.xsl +++ b/vxquery-core/src/main/xslt/generate-op-defns.xsl @@ -72,17 +72,17 @@ - public org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory createScalarEvaluatorFactory(org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory[] args) { + public edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory createScalarEvaluatorFactory(edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory[] args) { return new (args); } - public org.apache.hyracks.algebricks.runtime.base.IAggregateEvaluatorFactory createAggregateEvaluatorFactory(org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory[] args) { + public edu.uci.ics.hyracks.algebricks.runtime.base.IAggregateEvaluatorFactory createAggregateEvaluatorFactory(edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory[] args) { return new (args); } - public org.apache.hyracks.algebricks.runtime.base.IUnnestingEvaluatorFactory createUnnestingEvaluatorFactory(org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory[] args) { + public edu.uci.ics.hyracks.algebricks.runtime.base.IUnnestingEvaluatorFactory createUnnestingEvaluatorFactory(edu.uci.ics.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory[] args) { return new (args); } diff --git a/vxquery-core/src/test/java/org/apache/vxquery/xmlquery/query/SimpleXQueryTest.java b/vxquery-core/src/test/java/org/apache/vxquery/xmlquery/query/SimpleXQueryTest.java index 165b3309b..37b529b79 100644 --- a/vxquery-core/src/test/java/org/apache/vxquery/xmlquery/query/SimpleXQueryTest.java +++ b/vxquery-core/src/test/java/org/apache/vxquery/xmlquery/query/SimpleXQueryTest.java @@ -29,7 +29,7 @@ import org.apache.vxquery.context.StaticContextImpl; import org.junit.Test; -import org.apache.hyracks.api.dataset.ResultSetId; +import edu.uci.ics.hyracks.api.dataset.ResultSetId; public class SimpleXQueryTest { @Test diff --git a/vxquery-server/pom.xml b/vxquery-server/pom.xml index 04ea34a9a..4cdf6f8ac 100644 --- a/vxquery-server/pom.xml +++ b/vxquery-server/pom.xml @@ -20,7 +20,7 @@ org.apache.vxquery apache-vxquery - 0.6-SNAPSHOT + 0.5 apache-vxquery-server @@ -51,11 +51,11 @@ vxqueryshutdown - org.apache.hyracks.control.cc.CCDriver + edu.uci.ics.hyracks.control.cc.CCDriver vxquerycc - org.apache.hyracks.control.nc.NCDriver + edu.uci.ics.hyracks.control.nc.NCDriver vxquerync @@ -71,6 +71,7 @@ maven-resources-plugin + 2.5 copy-scripts @@ -106,6 +107,7 @@ maven-assembly-plugin + 2.4 @@ -140,16 +142,16 @@ org.apache.vxquery apache-vxquery-core - 0.6-SNAPSHOT + 0.5 - org.apache.hyracks + edu.uci.ics.hyracks hyracks-control-cc - org.apache.hyracks + edu.uci.ics.hyracks hyracks-control-nc diff --git a/vxquery-server/src/main/java/org/apache/vxquery/cli/VXQueryClusterShutdown.java b/vxquery-server/src/main/java/org/apache/vxquery/cli/VXQueryClusterShutdown.java index ced608a21..37fe4f6bd 100644 --- a/vxquery-server/src/main/java/org/apache/vxquery/cli/VXQueryClusterShutdown.java +++ b/vxquery-server/src/main/java/org/apache/vxquery/cli/VXQueryClusterShutdown.java @@ -21,8 +21,8 @@ import org.kohsuke.args4j.CmdLineParser; import org.kohsuke.args4j.Option; -import org.apache.hyracks.api.client.HyracksConnection; -import org.apache.hyracks.api.client.IHyracksClientConnection; +import edu.uci.ics.hyracks.api.client.HyracksConnection; +import edu.uci.ics.hyracks.api.client.IHyracksClientConnection; public class VXQueryClusterShutdown { /** diff --git a/vxquery-xtest/pom.xml b/vxquery-xtest/pom.xml index 59da0632f..8edd7b01f 100644 --- a/vxquery-xtest/pom.xml +++ b/vxquery-xtest/pom.xml @@ -14,16 +14,13 @@ See the License for the specific language governing permissions and limitations under the License. --> - + 4.0.0 org.apache.vxquery apache-vxquery - 0.6-SNAPSHOT + 0.5 apache-vxquery-xtest @@ -117,12 +114,6 @@ maven-surefire-plugin - - **/AbstractXQueryTest.java - **/VXQueryXMarkTest.java - **/XMarkTest.java - **/XQTSTest.java - @@ -132,31 +123,31 @@ org.apache.vxquery apache-vxquery-core - 0.6-SNAPSHOT + 0.5 - org.apache.hyracks + edu.uci.ics.hyracks hyracks-api - org.apache.hyracks + edu.uci.ics.hyracks hyracks-client - org.apache.hyracks + edu.uci.ics.hyracks hyracks-control-cc - org.apache.hyracks + edu.uci.ics.hyracks hyracks-control-nc - org.apache.hyracks + edu.uci.ics.hyracks hyracks-dataflow-std @@ -194,7 +185,7 @@ **/ExpectedTestResults/**/* **/xqts.txt - test-suite*/**/* + test-suites/**/* 0 2g diff --git a/vxquery-xtest/results/xqts.txt b/vxquery-xtest/results/xqts.txt index 8054c362b..110b24109 100644 --- a/vxquery-xtest/results/xqts.txt +++ b/vxquery-xtest/results/xqts.txt @@ -3,7 +3,7 @@ Appendices/Annex-E//annex-2, EXPECTED_RESULT_GOT_ERROR Appendices/Annex-E//annex-3, EXPECTED_RESULT_GOT_ERROR Appendices/Annex-E//annex-4, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Appendices/Annex-E//annex-5, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Appendices/Annex-E//annex-6, EXPECTED_RESULT_GOT_ERROR +Appendices/Annex-E//annex-6, EXPECTED_RESULT_GOT_FAILURE Appendices/Annex-E//annex-7, EXPECTED_RESULT_GOT_ERROR Appendices/Annex-E//annex-8, EXPECTED_RESULT_GOT_ERROR Appendices/Appendix-A4//appendix-A4-1, EXPECTED_RESULT_GOT_SAME_RESULT @@ -62,7 +62,7 @@ CondExpr//K2-CondExpr-6, EXPECTED_ERROR_GOT_SAME_ERROR CondExpr//K2-CondExpr-7, EXPECTED_RESULT_GOT_SAME_RESULT Construct/ComputeCon/ComputeConAttr//K2-ComputeConAttr-1, EXPECTED_ERROR_GOT_SAME_ERROR Construct/ComputeCon/ComputeConAttr//K2-ComputeConAttr-10, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Construct/ComputeCon/ComputeConAttr//K2-ComputeConAttr-11, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Construct/ComputeCon/ComputeConAttr//K2-ComputeConAttr-11, EXPECTED_RESULT_GOT_FAILURE Construct/ComputeCon/ComputeConAttr//K2-ComputeConAttr-12, EXPECTED_ERROR_GOT_SAME_ERROR Construct/ComputeCon/ComputeConAttr//K2-ComputeConAttr-13, EXPECTED_ERROR_GOT_SAME_ERROR Construct/ComputeCon/ComputeConAttr//K2-ComputeConAttr-14, EXPECTED_ERROR_GOT_DIFFERENT_ERROR @@ -117,7 +117,7 @@ Construct/ComputeCon/ComputeConAttr//K2-ComputeConAttr-58, EXPECTED_RESULT_GOT_E Construct/ComputeCon/ComputeConAttr//K2-ComputeConAttr-59, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Construct/ComputeCon/ComputeConAttr//K2-ComputeConAttr-6, EXPECTED_ERROR_GOT_SAME_ERROR Construct/ComputeCon/ComputeConAttr//K2-ComputeConAttr-60, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Construct/ComputeCon/ComputeConAttr//K2-ComputeConAttr-61, EXPECTED_ERROR_GOT_SAME_ERROR +Construct/ComputeCon/ComputeConAttr//K2-ComputeConAttr-61, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Construct/ComputeCon/ComputeConAttr//K2-ComputeConAttr-7, EXPECTED_ERROR_GOT_SAME_ERROR Construct/ComputeCon/ComputeConAttr//K2-ComputeConAttr-8, EXPECTED_ERROR_GOT_SAME_ERROR Construct/ComputeCon/ComputeConAttr//K2-ComputeConAttr-9, EXPECTED_ERROR_GOT_SAME_ERROR @@ -295,7 +295,7 @@ Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-3, EXPECTED_ERRO Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-30, EXPECTED_RESULT_GOT_ERROR Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-31, EXPECTED_RESULT_GOT_ERROR Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-32, EXPECTED_RESULT_GOT_ERROR -Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-33, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-33, EXPECTED_RESULT_GOT_FAILURE Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-34, EXPECTED_RESULT_GOT_ERROR Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-35, EXPECTED_RESULT_GOT_ERROR Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-36, EXPECTED_RESULT_GOT_ERROR @@ -305,18 +305,18 @@ Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-39, EXPECTED_RES Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-4, EXPECTED_ERROR_GOT_SAME_ERROR Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-40, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-41, EXPECTED_RESULT_GOT_FAILURE -Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-42, EXPECTED_RESULT_GOT_SAME_RESULT -Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-43, EXPECTED_RESULT_GOT_SAME_RESULT +Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-42, EXPECTED_RESULT_GOT_FAILURE +Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-43, EXPECTED_RESULT_GOT_FAILURE Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-44, EXPECTED_RESULT_GOT_ERROR Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-45, EXPECTED_RESULT_GOT_ERROR Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-46, EXPECTED_RESULT_GOT_FAILURE Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-47, EXPECTED_RESULT_GOT_FAILURE Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-48, EXPECTED_ERROR_GOT_SAME_ERROR -Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-49, EXPECTED_RESULT_GOT_SAME_RESULT +Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-49, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-5, EXPECTED_RESULT_GOT_SAME_RESULT -Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-50, EXPECTED_RESULT_GOT_SAME_RESULT +Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-50, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-51, EXPECTED_ERROR_GOT_SAME_ERROR -Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-52, EXPECTED_RESULT_GOT_SAME_RESULT +Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-52, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-53, EXPECTED_ERROR_GOT_SAME_ERROR Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-54, EXPECTED_ERROR_GOT_SAME_ERROR Construct/DirectConElem/DirectConElemAttr//K2-DirectConElemAttr-55, EXPECTED_ERROR_GOT_SAME_ERROR @@ -412,8 +412,8 @@ Construct/DirectConElem/DirectConElemNamespace//K2-DirectConElemNamespace-2, EXP Construct/DirectConElem/DirectConElemNamespace//K2-DirectConElemNamespace-20, EXPECTED_RESULT_GOT_ERROR Construct/DirectConElem/DirectConElemNamespace//K2-DirectConElemNamespace-21, EXPECTED_RESULT_GOT_ERROR Construct/DirectConElem/DirectConElemNamespace//K2-DirectConElemNamespace-22, EXPECTED_RESULT_GOT_ERROR -Construct/DirectConElem/DirectConElemNamespace//K2-DirectConElemNamespace-23, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Construct/DirectConElem/DirectConElemNamespace//K2-DirectConElemNamespace-24, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Construct/DirectConElem/DirectConElemNamespace//K2-DirectConElemNamespace-23, EXPECTED_RESULT_GOT_FAILURE +Construct/DirectConElem/DirectConElemNamespace//K2-DirectConElemNamespace-24, EXPECTED_RESULT_GOT_FAILURE Construct/DirectConElem/DirectConElemNamespace//K2-DirectConElemNamespace-25, EXPECTED_ERROR_GOT_RESULT Construct/DirectConElem/DirectConElemNamespace//K2-DirectConElemNamespace-26, EXPECTED_ERROR_GOT_SAME_ERROR Construct/DirectConElem/DirectConElemNamespace//K2-DirectConElemNamespace-27, EXPECTED_RESULT_GOT_ERROR @@ -469,7 +469,7 @@ Construct/DirectConElem/DirectConElemNamespace//K2-DirectConElemNamespace-73, EX Construct/DirectConElem/DirectConElemNamespace//K2-DirectConElemNamespace-74, EXPECTED_ERROR_GOT_RESULT Construct/DirectConElem/DirectConElemNamespace//K2-DirectConElemNamespace-75, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Construct/DirectConElem/DirectConElemNamespace//K2-DirectConElemNamespace-76, EXPECTED_ERROR_GOT_RESULT -Construct/DirectConElem/DirectConElemNamespace//K2-DirectConElemNamespace-77, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Construct/DirectConElem/DirectConElemNamespace//K2-DirectConElemNamespace-77, EXPECTED_RESULT_GOT_FAILURE Construct/DirectConElem/DirectConElemNamespace//K2-DirectConElemNamespace-78, EXPECTED_RESULT_GOT_FAILURE Construct/DirectConElem/DirectConElemNamespace//K2-DirectConElemNamespace-79, EXPECTED_ERROR_GOT_FAILURE Construct/DirectConElem/DirectConElemNamespace//K2-DirectConElemNamespace-8, EXPECTED_ERROR_GOT_SAME_ERROR @@ -571,11 +571,11 @@ Construct/DirectConOther//K2-DirectConOther-70, EXPECTED_RESULT_GOT_DIFFERENT_RE Construct/DirectConOther//K2-DirectConOther-71, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Construct/DirectConOther//K2-DirectConOther-8, EXPECTED_ERROR_GOT_SAME_ERROR Construct/DirectConOther//K2-DirectConOther-9, EXPECTED_ERROR_GOT_SAME_ERROR -ErrorsAndOptimization//errors-and-optimization-1, EXPECTED_RESULT_GOT_SAME_RESULT +ErrorsAndOptimization//errors-and-optimization-1, EXPECTED_RESULT_GOT_ERROR ErrorsAndOptimization//errors-and-optimization-2, EXPECTED_ERROR_GOT_SAME_ERROR -ErrorsAndOptimization//errors-and-optimization-3, EXPECTED_RESULT_GOT_ERROR +ErrorsAndOptimization//errors-and-optimization-3, EXPECTED_RESULT_GOT_FAILURE ErrorsAndOptimization//errors-and-optimization-4, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -ErrorsAndOptimization//errors-and-optimization-5, EXPECTED_ERROR_GOT_SAME_ERROR +ErrorsAndOptimization//errors-and-optimization-5, EXPECTED_ERROR_GOT_DIFFERENT_ERROR ErrorsAndOptimization//errors-and-optimization-6, EXPECTED_ERROR_GOT_SAME_ERROR ErrorsAndOptimization//errors-and-optimization-7, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/CondExpr//CondExpr002, EXPECTED_RESULT_GOT_DIFFERENT_RESULT @@ -598,16 +598,16 @@ Expressions/CondExpr//CondExpr018, EXPECTED_RESULT_GOT_FAILURE Expressions/CondExpr//CondExpr019, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/CondExpr//CondExpr020, EXPECTED_RESULT_GOT_FAILURE Expressions/CondExpr//CondExpr021, EXPECTED_RESULT_GOT_FAILURE -Expressions/CondExpr//CondExpr022, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/CondExpr//CondExpr022, EXPECTED_RESULT_GOT_ERROR Expressions/CondExpr//K-CondExpr-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/CondExpr//K-CondExpr-10, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/CondExpr//K-CondExpr-11, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/CondExpr//K-CondExpr-12, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/CondExpr//K-CondExpr-12, EXPECTED_RESULT_GOT_FAILURE Expressions/CondExpr//K-CondExpr-2, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/CondExpr//K-CondExpr-3, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/CondExpr//K-CondExpr-4, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/CondExpr//K-CondExpr-5, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/CondExpr//K-CondExpr-6, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/CondExpr//K-CondExpr-3, EXPECTED_RESULT_GOT_FAILURE +Expressions/CondExpr//K-CondExpr-4, EXPECTED_RESULT_GOT_FAILURE +Expressions/CondExpr//K-CondExpr-5, EXPECTED_RESULT_GOT_FAILURE +Expressions/CondExpr//K-CondExpr-6, EXPECTED_RESULT_GOT_FAILURE Expressions/CondExpr//K-CondExpr-7, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/CondExpr//K-CondExpr-8, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/CondExpr//K-CondExpr-9, EXPECTED_RESULT_GOT_SAME_RESULT @@ -805,8 +805,8 @@ Expressions/Construct/ComputeCon/ConText//Constr-text-parent-1, EXPECTED_RESULT_ Expressions/Construct/ComputeCon/ConText//Constr-text-string-1, EXPECTED_RESULT_GOT_ERROR Expressions/Construct/ConInScopeNamespace//Constr-inscope-1, EXPECTED_RESULT_GOT_FAILURE Expressions/Construct/ConInScopeNamespace//Constr-inscope-10, EXPECTED_RESULT_GOT_FAILURE -Expressions/Construct/ConInScopeNamespace//Constr-inscope-11, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/Construct/ConInScopeNamespace//Constr-inscope-12, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Construct/ConInScopeNamespace//Constr-inscope-11, EXPECTED_RESULT_GOT_FAILURE +Expressions/Construct/ConInScopeNamespace//Constr-inscope-12, EXPECTED_RESULT_GOT_FAILURE Expressions/Construct/ConInScopeNamespace//Constr-inscope-13, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Construct/ConInScopeNamespace//Constr-inscope-14, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Construct/ConInScopeNamespace//Constr-inscope-15, EXPECTED_RESULT_GOT_SAME_RESULT @@ -816,12 +816,12 @@ Expressions/Construct/ConInScopeNamespace//Constr-inscope-18, EXPECTED_RESULT_GO Expressions/Construct/ConInScopeNamespace//Constr-inscope-19, EXPECTED_RESULT_GOT_FAILURE Expressions/Construct/ConInScopeNamespace//Constr-inscope-2, EXPECTED_RESULT_GOT_FAILURE Expressions/Construct/ConInScopeNamespace//Constr-inscope-20, EXPECTED_RESULT_GOT_FAILURE -Expressions/Construct/ConInScopeNamespace//Constr-inscope-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Construct/ConInScopeNamespace//Constr-inscope-3, EXPECTED_RESULT_GOT_FAILURE Expressions/Construct/ConInScopeNamespace//Constr-inscope-4, EXPECTED_RESULT_GOT_FAILURE Expressions/Construct/ConInScopeNamespace//Constr-inscope-5, EXPECTED_RESULT_GOT_FAILURE Expressions/Construct/ConInScopeNamespace//Constr-inscope-6, EXPECTED_RESULT_GOT_FAILURE -Expressions/Construct/ConInScopeNamespace//Constr-inscope-7, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/Construct/ConInScopeNamespace//Constr-inscope-8, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Construct/ConInScopeNamespace//Constr-inscope-7, EXPECTED_RESULT_GOT_FAILURE +Expressions/Construct/ConInScopeNamespace//Constr-inscope-8, EXPECTED_RESULT_GOT_FAILURE Expressions/Construct/ConInScopeNamespace//Constr-inscope-9, EXPECTED_RESULT_GOT_FAILURE Expressions/Construct/DirectConElem//Constr-elem-curlybr-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Construct/DirectConElem//Constr-elem-curlybr-2, EXPECTED_RESULT_GOT_SAME_RESULT @@ -847,12 +847,12 @@ Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-distnames-2, Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-distnames-3, EXPECTED_ERROR_GOT_RESULT Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-distnames-4, EXPECTED_ERROR_GOT_RESULT Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-enclexpr-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-enclexpr-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-enclexpr-2, EXPECTED_RESULT_GOT_FAILURE Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-enclexpr-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-enclexpr-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-enclexpr-4, EXPECTED_RESULT_GOT_FAILURE Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-enclexpr-5, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-enclexpr-6, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-enclexpr-7, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-enclexpr-7, EXPECTED_RESULT_GOT_FAILURE Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-enclexpr-8, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-entref-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-entref-2, EXPECTED_RESULT_GOT_ERROR @@ -867,13 +867,13 @@ Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-nsprein-2, EX Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-parent-1, EXPECTED_RESULT_GOT_FAILURE Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-syntax-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-syntax-10, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-syntax-2, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-syntax-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-syntax-3, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-syntax-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-syntax-5, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-syntax-6, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-syntax-7, EXPECTED_ERROR_GOT_SAME_ERROR -Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-syntax-8, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-syntax-8, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-syntax-9, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-ws-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-ws-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT @@ -883,7 +883,7 @@ Expressions/Construct/DirectConElem/DirectConElemAttr//Constr-attr-ws-5, EXPECTE Expressions/Construct/DirectConElem/DirectConElemContent//Constr-cont-adjtext-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Construct/DirectConElem/DirectConElemContent//Constr-cont-adjtext-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Construct/DirectConElem/DirectConElemContent//Constr-cont-adjtext-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/Construct/DirectConElem/DirectConElemContent//Constr-cont-adjtext-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Construct/DirectConElem/DirectConElemContent//Constr-cont-adjtext-4, EXPECTED_RESULT_GOT_FAILURE Expressions/Construct/DirectConElem/DirectConElemContent//Constr-cont-attr-1, EXPECTED_ERROR_GOT_FAILURE Expressions/Construct/DirectConElem/DirectConElemContent//Constr-cont-attr-2, EXPECTED_ERROR_GOT_FAILURE Expressions/Construct/DirectConElem/DirectConElemContent//Constr-cont-attr-3, EXPECTED_RESULT_GOT_FAILURE @@ -960,8 +960,8 @@ Expressions/Construct/DirectConElem/DirectConElemContent//Constr-cont-text-2, EX Expressions/Construct/DirectConElem/DirectConElemContent//Constr-cont-uripres-1, EXPECTED_RESULT_GOT_ERROR Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-1, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-10, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-11, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-12, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-11, EXPECTED_RESULT_GOT_FAILURE +Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-12, EXPECTED_RESULT_GOT_FAILURE Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-13, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-14, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-15, EXPECTED_ERROR_GOT_DIFFERENT_ERROR @@ -970,10 +970,10 @@ Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-17, Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-18, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-19, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-20, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-20, EXPECTED_RESULT_GOT_FAILURE Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-21, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-22, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-23, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-23, EXPECTED_RESULT_GOT_FAILURE Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-24, EXPECTED_ERROR_GOT_RESULT Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-25, EXPECTED_ERROR_GOT_RESULT Expressions/Construct/DirectConElem/DirectConElemNamespace//Constr-namespace-26, EXPECTED_RESULT_GOT_FAILURE @@ -1032,11 +1032,11 @@ Expressions/Construct/DirectConElem/DirectConElemWhitespace//Constr-ws-nobound-4 Expressions/Construct/DirectConElem/DirectConElemWhitespace//Constr-ws-nobound-5, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Construct/DirectConElem/DirectConElemWhitespace//Constr-ws-nobound-6, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Construct/DirectConElem/DirectConElemWhitespace//Constr-ws-tag-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/Construct/DirectConElem/DirectConElemWhitespace//Constr-ws-tag-10, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Construct/DirectConElem/DirectConElemWhitespace//Constr-ws-tag-10, EXPECTED_RESULT_GOT_FAILURE Expressions/Construct/DirectConElem/DirectConElemWhitespace//Constr-ws-tag-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Construct/DirectConElem/DirectConElemWhitespace//Constr-ws-tag-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Construct/DirectConElem/DirectConElemWhitespace//Constr-ws-tag-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/Construct/DirectConElem/DirectConElemWhitespace//Constr-ws-tag-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Construct/DirectConElem/DirectConElemWhitespace//Constr-ws-tag-5, EXPECTED_RESULT_GOT_FAILURE Expressions/Construct/DirectConElem/DirectConElemWhitespace//Constr-ws-tag-6, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Construct/DirectConElem/DirectConElemWhitespace//Constr-ws-tag-7, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Construct/DirectConElem/DirectConElemWhitespace//Constr-ws-tag-8, EXPECTED_RESULT_GOT_SAME_RESULT @@ -1088,26 +1088,26 @@ Expressions/ContextExpr/ExternalContextExpr//externalcontextitem-7, EXPECTED_RES Expressions/ContextExpr/ExternalContextExpr//externalcontextitem-8, EXPECTED_RESULT_GOT_FAILURE Expressions/ContextExpr/ExternalContextExpr//externalcontextitem-9, EXPECTED_RESULT_GOT_FAILURE Expressions/ContextExpr/InternalContextExpr//internalcontextitem-1, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Expressions/ContextExpr/InternalContextExpr//internalcontextitem-10, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/ContextExpr/InternalContextExpr//internalcontextitem-11, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/ContextExpr/InternalContextExpr//internalcontextitem-12, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/ContextExpr/InternalContextExpr//internalcontextitem-13, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/ContextExpr/InternalContextExpr//internalcontextitem-14, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/ContextExpr/InternalContextExpr//internalcontextitem-15, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/ContextExpr/InternalContextExpr//internalcontextitem-16, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/ContextExpr/InternalContextExpr//internalcontextitem-17, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/ContextExpr/InternalContextExpr//internalcontextitem-18, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/ContextExpr/InternalContextExpr//internalcontextitem-19, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/ContextExpr/InternalContextExpr//internalcontextitem-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/ContextExpr/InternalContextExpr//internalcontextitem-20, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/ContextExpr/InternalContextExpr//internalcontextitem-21, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/ContextExpr/InternalContextExpr//internalcontextitem-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/ContextExpr/InternalContextExpr//internalcontextitem-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/ContextExpr/InternalContextExpr//internalcontextitem-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/ContextExpr/InternalContextExpr//internalcontextitem-6, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/ContextExpr/InternalContextExpr//internalcontextitem-7, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/ContextExpr/InternalContextExpr//internalcontextitem-8, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/ContextExpr/InternalContextExpr//internalcontextitem-9, EXPECTED_ERROR_GOT_RESULT +Expressions/ContextExpr/InternalContextExpr//internalcontextitem-10, EXPECTED_RESULT_GOT_FAILURE +Expressions/ContextExpr/InternalContextExpr//internalcontextitem-11, EXPECTED_RESULT_GOT_FAILURE +Expressions/ContextExpr/InternalContextExpr//internalcontextitem-12, EXPECTED_RESULT_GOT_FAILURE +Expressions/ContextExpr/InternalContextExpr//internalcontextitem-13, EXPECTED_RESULT_GOT_FAILURE +Expressions/ContextExpr/InternalContextExpr//internalcontextitem-14, EXPECTED_RESULT_GOT_FAILURE +Expressions/ContextExpr/InternalContextExpr//internalcontextitem-15, EXPECTED_RESULT_GOT_FAILURE +Expressions/ContextExpr/InternalContextExpr//internalcontextitem-16, EXPECTED_RESULT_GOT_FAILURE +Expressions/ContextExpr/InternalContextExpr//internalcontextitem-17, EXPECTED_RESULT_GOT_FAILURE +Expressions/ContextExpr/InternalContextExpr//internalcontextitem-18, EXPECTED_RESULT_GOT_FAILURE +Expressions/ContextExpr/InternalContextExpr//internalcontextitem-19, EXPECTED_RESULT_GOT_FAILURE +Expressions/ContextExpr/InternalContextExpr//internalcontextitem-2, EXPECTED_RESULT_GOT_FAILURE +Expressions/ContextExpr/InternalContextExpr//internalcontextitem-20, EXPECTED_RESULT_GOT_FAILURE +Expressions/ContextExpr/InternalContextExpr//internalcontextitem-21, EXPECTED_RESULT_GOT_FAILURE +Expressions/ContextExpr/InternalContextExpr//internalcontextitem-3, EXPECTED_RESULT_GOT_FAILURE +Expressions/ContextExpr/InternalContextExpr//internalcontextitem-4, EXPECTED_RESULT_GOT_FAILURE +Expressions/ContextExpr/InternalContextExpr//internalcontextitem-5, EXPECTED_RESULT_GOT_FAILURE +Expressions/ContextExpr/InternalContextExpr//internalcontextitem-6, EXPECTED_RESULT_GOT_FAILURE +Expressions/ContextExpr/InternalContextExpr//internalcontextitem-7, EXPECTED_RESULT_GOT_FAILURE +Expressions/ContextExpr/InternalContextExpr//internalcontextitem-8, EXPECTED_RESULT_GOT_FAILURE +Expressions/ContextExpr/InternalContextExpr//internalcontextitem-9, EXPECTED_ERROR_GOT_FAILURE Expressions/ExtensionExpression//K-ExtensionExpression-1, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/ExtensionExpression//K-ExtensionExpression-2, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/ExtensionExpression//K-ExtensionExpression-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -1320,27 +1320,27 @@ Expressions/FLWORExpr/LetExpr//LetExpr002, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/FLWORExpr/LetExpr//LetExpr003, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/FLWORExpr/LetExpr//LetExpr004, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/FLWORExpr/LetExpr//LetExpr005, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/FLWORExpr/LetExpr//LetExpr006, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/FLWORExpr/LetExpr//LetExpr006, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/FLWORExpr/LetExpr//LetExpr007, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/FLWORExpr/LetExpr//LetExpr008, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/FLWORExpr/LetExpr//LetExpr009, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/FLWORExpr/LetExpr//LetExpr010, EXPECTED_ERROR_GOT_SAME_ERROR -Expressions/FLWORExpr/LetExpr//LetExpr011, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/LetExpr//LetExpr012, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/FLWORExpr/LetExpr//LetExpr010, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +Expressions/FLWORExpr/LetExpr//LetExpr011, EXPECTED_RESULT_GOT_FAILURE +Expressions/FLWORExpr/LetExpr//LetExpr012, EXPECTED_RESULT_GOT_FAILURE Expressions/FLWORExpr/LetExpr//LetExpr013, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/FLWORExpr/LetExpr//LetExpr014, EXPECTED_ERROR_GOT_SAME_ERROR -Expressions/FLWORExpr/LetExpr//LetExpr015, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/LetExpr//LetExpr016, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/FLWORExpr/LetExpr//LetExpr015, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/LetExpr//LetExpr016, EXPECTED_RESULT_GOT_ERROR Expressions/FLWORExpr/LetExpr//LetExpr017, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/FLWORExpr/LetExpr//LetExpr018, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Expressions/FLWORExpr/LetExpr//LetExpr019, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/FLWORExpr/LetExpr//LetExpr020, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/FLWORExpr/LetExpr//LetExpr021, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/FLWORExpr/LetExpr//xquery10keywords, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/FLWORExpr/LetExpr//xquery10keywords2, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/FLWORExpr/LetExpr//xquery10keywords2, EXPECTED_RESULT_GOT_FAILURE Expressions/FLWORExpr/LetExpr//xquery10keywords3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/FLWORExpr/LetExpr//xquery11keywords, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/FLWORExpr/LetExpr//xquery11keywords2, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/FLWORExpr/LetExpr//xquery11keywords2, EXPECTED_RESULT_GOT_FAILURE Expressions/FLWORExpr/LetExpr//xquery11keywords3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/FLWORExpr/LetExpr/LetExprWithout//K-LetExprWithout-1, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/FLWORExpr/LetExpr/LetExprWithout//K-LetExprWithout-2, EXPECTED_ERROR_GOT_SAME_ERROR @@ -1457,23 +1457,23 @@ Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-37, EXPECTED_RES Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-38, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-39, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-40, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-41, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-42, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-40, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-41, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-42, EXPECTED_RESULT_GOT_ERROR Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-43, EXPECTED_RESULT_GOT_ERROR Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-44, EXPECTED_RESULT_GOT_ERROR -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-45, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-46, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-47, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-49, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-45, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-46, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-47, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-49, EXPECTED_RESULT_GOT_ERROR Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-50, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-51, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-52, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-55, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-56, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-57, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-59, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-50, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-51, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-52, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-55, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-56, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-57, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-59, EXPECTED_RESULT_GOT_ERROR Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-6, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-60, EXPECTED_ERROR_GOT_RESULT Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWith//orderbylocal-7, EXPECTED_RESULT_GOT_DIFFERENT_RESULT @@ -1497,23 +1497,23 @@ Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-22, EXPECTE Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-23, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-24, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-25, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-26, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-27, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-28, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-26, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-27, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-28, EXPECTED_RESULT_GOT_ERROR Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-29, EXPECTED_RESULT_GOT_ERROR Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-30, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-31, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-32, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-33, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-34, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-35, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-30, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-31, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-32, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-33, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-34, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-35, EXPECTED_RESULT_GOT_ERROR Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-36, EXPECTED_RESULT_GOT_ERROR -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-37, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-38, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-39, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-37, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-38, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-39, EXPECTED_RESULT_GOT_ERROR Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-40, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-40, EXPECTED_RESULT_GOT_ERROR Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-6, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/FLWORExpr/OrderbyExpr/OrderbyExprWithout//orderbywithout-7, EXPECTED_RESULT_GOT_ERROR @@ -1525,7 +1525,7 @@ Expressions/FLWORExpr/ReturnExpr//ReturnExpr003, EXPECTED_RESULT_GOT_FAILURE Expressions/FLWORExpr/ReturnExpr//ReturnExpr004, EXPECTED_RESULT_GOT_FAILURE Expressions/FLWORExpr/ReturnExpr//ReturnExpr005, EXPECTED_RESULT_GOT_FAILURE Expressions/FLWORExpr/ReturnExpr//ReturnExpr006, EXPECTED_RESULT_GOT_FAILURE -Expressions/FLWORExpr/ReturnExpr//ReturnExpr007, EXPECTED_RESULT_GOT_ERROR +Expressions/FLWORExpr/ReturnExpr//ReturnExpr007, EXPECTED_RESULT_GOT_FAILURE Expressions/FLWORExpr/ReturnExpr//ReturnExpr008, EXPECTED_RESULT_GOT_FAILURE Expressions/FLWORExpr/ReturnExpr//ReturnExpr009, EXPECTED_RESULT_GOT_FAILURE Expressions/FLWORExpr/ReturnExpr//ReturnExpr010, EXPECTED_ERROR_GOT_FAILURE @@ -1540,16 +1540,16 @@ Expressions/FLWORExpr/ReturnExpr//ReturnExpr018, EXPECTED_RESULT_GOT_FAILURE Expressions/FLWORExpr/ReturnExpr//ReturnExpr019, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/FLWORExpr/ReturnExpr//ReturnExpr020, EXPECTED_RESULT_GOT_FAILURE Expressions/FLWORExpr/WhereExpr//K-WhereExpr-1, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/FLWORExpr/WhereExpr//K-WhereExpr-10, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/FLWORExpr/WhereExpr//K-WhereExpr-11, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/FLWORExpr/WhereExpr//K-WhereExpr-10, EXPECTED_RESULT_GOT_FAILURE +Expressions/FLWORExpr/WhereExpr//K-WhereExpr-11, EXPECTED_RESULT_GOT_FAILURE Expressions/FLWORExpr/WhereExpr//K-WhereExpr-2, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/FLWORExpr/WhereExpr//K-WhereExpr-3, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/FLWORExpr/WhereExpr//K-WhereExpr-4, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/FLWORExpr/WhereExpr//K-WhereExpr-5, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/FLWORExpr/WhereExpr//K-WhereExpr-6, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/FLWORExpr/WhereExpr//K-WhereExpr-7, EXPECTED_RESULT_GOT_ERROR -Expressions/FLWORExpr/WhereExpr//K-WhereExpr-8, EXPECTED_RESULT_GOT_ERROR -Expressions/FLWORExpr/WhereExpr//K-WhereExpr-9, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/FLWORExpr/WhereExpr//K-WhereExpr-7, EXPECTED_RESULT_GOT_FAILURE +Expressions/FLWORExpr/WhereExpr//K-WhereExpr-8, EXPECTED_RESULT_GOT_FAILURE +Expressions/FLWORExpr/WhereExpr//K-WhereExpr-9, EXPECTED_RESULT_GOT_FAILURE Expressions/FLWORExpr/WhereExpr//WhereExpr001, EXPECTED_RESULT_GOT_FAILURE Expressions/FLWORExpr/WhereExpr//WhereExpr002, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/FLWORExpr/WhereExpr//WhereExpr003, EXPECTED_RESULT_GOT_FAILURE @@ -1557,12 +1557,12 @@ Expressions/FLWORExpr/WhereExpr//WhereExpr004, EXPECTED_RESULT_GOT_FAILURE Expressions/FLWORExpr/WhereExpr//WhereExpr005, EXPECTED_ERROR_GOT_RESULT Expressions/FLWORExpr/WhereExpr//WhereExpr006, EXPECTED_RESULT_GOT_FAILURE Expressions/FLWORExpr/WhereExpr//WhereExpr007, EXPECTED_RESULT_GOT_FAILURE -Expressions/FLWORExpr/WhereExpr//WhereExpr008, EXPECTED_ERROR_GOT_RESULT +Expressions/FLWORExpr/WhereExpr//WhereExpr008, EXPECTED_ERROR_GOT_FAILURE Expressions/FLWORExpr/WhereExpr//WhereExpr009, EXPECTED_RESULT_GOT_FAILURE Expressions/FLWORExpr/WhereExpr//WhereExpr010, EXPECTED_ERROR_GOT_FAILURE Expressions/FLWORExpr/WhereExpr//WhereExpr013, EXPECTED_RESULT_GOT_FAILURE Expressions/FLWORExpr/WhereExpr//WhereExpr014, EXPECTED_RESULT_GOT_FAILURE -Expressions/FLWORExpr/WhereExpr//WhereExpr015, EXPECTED_ERROR_GOT_RESULT +Expressions/FLWORExpr/WhereExpr//WhereExpr015, EXPECTED_ERROR_GOT_FAILURE Expressions/FLWORExpr/WhereExpr//WhereExpr016, EXPECTED_RESULT_GOT_FAILURE Expressions/FLWORExpr/WhereExpr//WhereExpr017, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/FLWORExpr/WhereExpr//WhereExpr018, EXPECTED_ERROR_GOT_SAME_ERROR @@ -1663,8 +1663,8 @@ Expressions/LogicExpr//K-LogicExpr-10, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/LogicExpr//K-LogicExpr-11, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/LogicExpr//K-LogicExpr-12, EXPECTED_RESULT_GOT_ERROR Expressions/LogicExpr//K-LogicExpr-13, EXPECTED_RESULT_GOT_ERROR -Expressions/LogicExpr//K-LogicExpr-14, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/LogicExpr//K-LogicExpr-15, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/LogicExpr//K-LogicExpr-14, EXPECTED_RESULT_GOT_FAILURE +Expressions/LogicExpr//K-LogicExpr-15, EXPECTED_RESULT_GOT_FAILURE Expressions/LogicExpr//K-LogicExpr-16, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/LogicExpr//K-LogicExpr-17, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/LogicExpr//K-LogicExpr-18, EXPECTED_ERROR_GOT_SAME_ERROR @@ -1675,16 +1675,16 @@ Expressions/LogicExpr//K-LogicExpr-21, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/LogicExpr//K-LogicExpr-22, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/LogicExpr//K-LogicExpr-23, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/LogicExpr//K-LogicExpr-24, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/LogicExpr//K-LogicExpr-25, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/LogicExpr//K-LogicExpr-26, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/LogicExpr//K-LogicExpr-27, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/LogicExpr//K-LogicExpr-25, EXPECTED_RESULT_GOT_FAILURE +Expressions/LogicExpr//K-LogicExpr-26, EXPECTED_RESULT_GOT_FAILURE +Expressions/LogicExpr//K-LogicExpr-27, EXPECTED_RESULT_GOT_FAILURE Expressions/LogicExpr//K-LogicExpr-28, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/LogicExpr//K-LogicExpr-29, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/LogicExpr//K-LogicExpr-3, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/LogicExpr//K-LogicExpr-30, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/LogicExpr//K-LogicExpr-31, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/LogicExpr//K-LogicExpr-32, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/LogicExpr//K-LogicExpr-33, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/LogicExpr//K-LogicExpr-32, EXPECTED_RESULT_GOT_FAILURE +Expressions/LogicExpr//K-LogicExpr-33, EXPECTED_RESULT_GOT_FAILURE Expressions/LogicExpr//K-LogicExpr-34, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/LogicExpr//K-LogicExpr-35, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/LogicExpr//K-LogicExpr-36, EXPECTED_RESULT_GOT_SAME_RESULT @@ -1694,9 +1694,9 @@ Expressions/LogicExpr//K-LogicExpr-39, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/LogicExpr//K-LogicExpr-4, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/LogicExpr//K-LogicExpr-40, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/LogicExpr//K-LogicExpr-41, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/LogicExpr//K-LogicExpr-42, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/LogicExpr//K-LogicExpr-43, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/LogicExpr//K-LogicExpr-44, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/LogicExpr//K-LogicExpr-42, EXPECTED_RESULT_GOT_FAILURE +Expressions/LogicExpr//K-LogicExpr-43, EXPECTED_RESULT_GOT_FAILURE +Expressions/LogicExpr//K-LogicExpr-44, EXPECTED_RESULT_GOT_FAILURE Expressions/LogicExpr//K-LogicExpr-45, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/LogicExpr//K-LogicExpr-46, EXPECTED_ERROR_GOT_RESULT Expressions/LogicExpr//K-LogicExpr-5, EXPECTED_RESULT_GOT_SAME_RESULT @@ -2265,7 +2265,7 @@ Expressions/Operators/ArithExpr/DurationArith/DayTimeDurationDivide//op-divide-d Expressions/Operators/ArithExpr/DurationArith/DayTimeDurationDivide//op-divide-dayTimeDuration2args-4, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/DurationArith/DayTimeDurationDivide//op-divide-dayTimeDuration2args-5, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/DurationArith/DayTimeDurationDivideDTD//K-DayTimeDurationDivideDTD-1, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/DurationArith/DayTimeDurationDivideDTD//op-divide-dayTimeDuration-by-dTD-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/ArithExpr/DurationArith/DayTimeDurationDivideDTD//op-divide-dayTimeDuration-by-dTD-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/DurationArith/DayTimeDurationDivideDTD//op-divide-dayTimeDuration-by-dTD-10, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/DurationArith/DayTimeDurationDivideDTD//op-divide-dayTimeDuration-by-dTD-11, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/DurationArith/DayTimeDurationDivideDTD//op-divide-dayTimeDuration-by-dTD-12, EXPECTED_RESULT_GOT_SAME_RESULT @@ -2691,18 +2691,18 @@ Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-add-derived-2, Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-add-derived-3, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-add-derived-4, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-add-derived-5, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-adddbl2args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-adddbl2args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-adddbl2args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-adddbl2args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-adddbl2args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-adddbl2args-4, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-adddec2args-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-adddec2args-2, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-adddec2args-3, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-adddec2args-4, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addflt2args-1, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addflt2args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addflt2args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addflt2args-4, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addflt2args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addflt2args-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addflt2args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addflt2args-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addint2args-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addint2args-2, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addint2args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -2718,10 +2718,10 @@ Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addlng2args-4, Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addmix2args-1, EXPECTED_ERROR_GOT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addmix2args-2, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addmix2args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addmix2args-4, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addmix2args-5, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addmix2args-4, EXPECTED_RESULT_GOT_ERROR +Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addmix2args-5, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addmix2args-6, EXPECTED_ERROR_GOT_SAME_ERROR -Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addmix2args-7, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addmix2args-7, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addmix2args-8, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addmix2args-9, EXPECTED_ERROR_GOT_FAILURE Expressions/Operators/ArithExpr/NumericOpr/NumericAdd//op-numeric-addnint2args-1, EXPECTED_RESULT_GOT_SAME_RESULT @@ -2809,15 +2809,15 @@ Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividedec2a Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividedec2args-3, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividedec2args-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividedec2args-5, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-divideflt2args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-divideflt2args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-divideflt2args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-divideflt2args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-divideflt2args-4, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-divideflt2args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-divideflt2args-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-divideint2args-1, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-divideint2args-2, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-divideint2args-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-divideint2args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-divideint2args-4, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-divideint2args-5, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-divideint2args-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-divideint2args-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-divideintg2args-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-divideintg2args-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-divideintg2args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -2832,10 +2832,10 @@ Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividelng2a Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividemix2args-1, EXPECTED_ERROR_GOT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividemix2args-2, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividemix2args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividemix2args-4, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividemix2args-5, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividemix2args-4, EXPECTED_RESULT_GOT_ERROR +Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividemix2args-5, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividemix2args-6, EXPECTED_ERROR_GOT_SAME_ERROR -Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividemix2args-7, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividemix2args-7, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividemix2args-8, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividemix2args-9, EXPECTED_ERROR_GOT_FAILURE Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividenint2args-1, EXPECTED_RESULT_GOT_SAME_RESULT @@ -2855,7 +2855,7 @@ Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividepint2 Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividepint2args-4, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividepint2args-5, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividesht2args-1, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividesht2args-2, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividesht2args-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividesht2args-3, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividesht2args-4, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericDivide//op-numeric-dividesht2args-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT @@ -2951,10 +2951,10 @@ Expressions/Operators/ArithExpr/NumericOpr/NumericIntegerDivide//op-numeric-inte Expressions/Operators/ArithExpr/NumericOpr/NumericIntegerDivide//op-numeric-integer-dividemix2args-10, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericIntegerDivide//op-numeric-integer-dividemix2args-2, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericIntegerDivide//op-numeric-integer-dividemix2args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericIntegerDivide//op-numeric-integer-dividemix2args-4, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericIntegerDivide//op-numeric-integer-dividemix2args-5, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericIntegerDivide//op-numeric-integer-dividemix2args-4, EXPECTED_RESULT_GOT_ERROR +Expressions/Operators/ArithExpr/NumericOpr/NumericIntegerDivide//op-numeric-integer-dividemix2args-5, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericIntegerDivide//op-numeric-integer-dividemix2args-6, EXPECTED_ERROR_GOT_SAME_ERROR -Expressions/Operators/ArithExpr/NumericOpr/NumericIntegerDivide//op-numeric-integer-dividemix2args-7, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericIntegerDivide//op-numeric-integer-dividemix2args-7, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericIntegerDivide//op-numeric-integer-dividemix2args-8, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericIntegerDivide//op-numeric-integer-dividemix2args-9, EXPECTED_ERROR_GOT_FAILURE Expressions/Operators/ArithExpr/NumericOpr/NumericIntegerDivide//op-numeric-integer-dividenint2args-1, EXPECTED_RESULT_GOT_SAME_RESULT @@ -3015,7 +3015,7 @@ Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-mod-1, EXPECTE Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-moddbl2args-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-moddec2args-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-moddec2args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-modflt2args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-modflt2args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-modint2args-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-modintg2args-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-modintg2args-2, EXPECTED_RESULT_GOT_SAME_RESULT @@ -3023,10 +3023,10 @@ Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-modlng2args-1, Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-modmix2args-1, EXPECTED_ERROR_GOT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-modmix2args-2, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-modmix2args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-modmix2args-4, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-modmix2args-5, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-modmix2args-4, EXPECTED_RESULT_GOT_ERROR +Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-modmix2args-5, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-modmix2args-6, EXPECTED_ERROR_GOT_SAME_ERROR -Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-modmix2args-7, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-modmix2args-7, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-modmix2args-8, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-modmix2args-9, EXPECTED_ERROR_GOT_FAILURE Expressions/Operators/ArithExpr/NumericOpr/NumericMod//op-numeric-modnni2args-1, EXPECTED_RESULT_GOT_SAME_RESULT @@ -3075,28 +3075,28 @@ Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//K-NumericMultiply-7, Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//K-NumericMultiply-8, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//K-NumericMultiply-9, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiply-1, EXPECTED_RESULT_GOT_FAILURE -Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplydbl2args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplydbl2args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplydbl2args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplydbl2args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplydbl2args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplydbl2args-4, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplydbl2args-5, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplydbl2args-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplydec2args-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplydec2args-2, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplydec2args-3, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplydec2args-4, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplydec2args-5, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplyflt2args-1, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplyflt2args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplyflt2args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplyflt2args-4, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplyflt2args-5, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplyflt2args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplyflt2args-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplyflt2args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplyflt2args-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplyflt2args-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplymix2args-1, EXPECTED_ERROR_GOT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplymix2args-2, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplymix2args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplymix2args-4, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplymix2args-5, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplymix2args-4, EXPECTED_RESULT_GOT_ERROR +Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplymix2args-5, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplymix2args-6, EXPECTED_ERROR_GOT_SAME_ERROR -Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplymix2args-7, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplymix2args-7, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplymix2args-8, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplymix2args-9, EXPECTED_ERROR_GOT_FAILURE Expressions/Operators/ArithExpr/NumericOpr/NumericMultiply//op-numeric-multiplynni2args-1, EXPECTED_RESULT_GOT_SAME_RESULT @@ -3161,20 +3161,20 @@ Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//K-NumericSubtract-8, Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//K-NumericSubtract-9, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtract-1, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractdbl2args-1, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractdbl2args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractdbl2args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractdbl2args-4, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractdbl2args-5, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractdbl2args-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractdbl2args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractdbl2args-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractdbl2args-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractdec2args-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractdec2args-2, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractdec2args-3, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractdec2args-4, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractdec2args-5, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractflt2args-1, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractflt2args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractflt2args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractflt2args-4, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractflt2args-5, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractflt2args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractflt2args-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractflt2args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractflt2args-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractflt2args-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractint2args-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractint2args-2, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractint2args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -3193,10 +3193,10 @@ Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractl Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractmix2args-1, EXPECTED_ERROR_GOT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractmix2args-2, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractmix2args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractmix2args-4, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractmix2args-5, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractmix2args-4, EXPECTED_RESULT_GOT_ERROR +Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractmix2args-5, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractmix2args-6, EXPECTED_ERROR_GOT_SAME_ERROR -Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractmix2args-7, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractmix2args-7, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractmix2args-8, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractmix2args-9, EXPECTED_ERROR_GOT_FAILURE Expressions/Operators/ArithExpr/NumericOpr/NumericSubtract//op-numeric-subtractnint2args-1, EXPECTED_RESULT_GOT_SAME_RESULT @@ -3243,15 +3243,15 @@ Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryMinus//K-NumericUnaryMinu Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryMinus//K-NumericUnaryMinus-8, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryMinus//K-NumericUnaryMinus-9, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryMinus//op-numeric-unary-minus-1, EXPECTED_RESULT_GOT_FAILURE -Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryMinus//op-numeric-unary-minusdbl1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryMinus//op-numeric-unary-minusdbl1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryMinus//op-numeric-unary-minusdbl1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryMinus//op-numeric-unary-minusdbl1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryMinus//op-numeric-unary-minusdbl1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryMinus//op-numeric-unary-minusdec1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryMinus//op-numeric-unary-minusdec1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryMinus//op-numeric-unary-minusdec1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryMinus//op-numeric-unary-minusflt1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryMinus//op-numeric-unary-minusflt1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryMinus//op-numeric-unary-minusflt1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryMinus//op-numeric-unary-minusflt1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryMinus//op-numeric-unary-minusflt1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryMinus//op-numeric-unary-minusint1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryMinus//op-numeric-unary-minusint1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryMinus//op-numeric-unary-minusint1args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -3295,15 +3295,15 @@ Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//K-NumericUnaryPlus- Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//K-NumericUnaryPlus-8, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//K-NumericUnaryPlus-9, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-plus-1, EXPECTED_RESULT_GOT_FAILURE -Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-plusdbl1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-plusdbl1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-plusdbl1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-plusdbl1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-plusdbl1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-plusdec1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-plusdec1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-plusdec1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-plusflt1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-plusflt1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-plusflt1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-plusflt1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-plusflt1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-plusint1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-plusint1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-plusint1args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -3334,14 +3334,14 @@ Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-pl Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-plususht1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-plususht1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/ArithExpr/NumericOpr/NumericUnaryPlus//op-numeric-unary-plususht1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompEq//GenCompEq-1, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompEq//GenCompEq-1, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompEq//GenCompEq-2, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompEq//GenCompEq-3, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompEq//GenCompEq-4, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/Operators/CompExpr/GenComprsn/GenCompEq//GenCompEq-5, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompEq//GenCompEq-6, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-1, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-10, EXPECTED_ERROR_GOT_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-10, EXPECTED_ERROR_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-11, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-12, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-13, EXPECTED_RESULT_GOT_SAME_RESULT @@ -3390,7 +3390,7 @@ Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-51, EXPECTED_ER Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-52, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-53, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-54, EXPECTED_ERROR_GOT_SAME_ERROR -Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-55, EXPECTED_ERROR_GOT_SAME_ERROR +Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-55, EXPECTED_ERROR_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-56, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-57, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-58, EXPECTED_ERROR_GOT_SAME_ERROR @@ -3398,7 +3398,7 @@ Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-59, EXPECTED_ER Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-6, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-7, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-8, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-9, EXPECTED_ERROR_GOT_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompEq//K-GenCompEq-9, EXPECTED_ERROR_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression10, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression11, EXPECTED_RESULT_GOT_SAME_RESULT @@ -3437,9 +3437,9 @@ Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression40, EXPECT Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression41, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression42, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression43, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression44, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression45, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression46, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression44, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression45, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression46, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression47, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression48, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression49, EXPECTED_RESULT_GOT_FAILURE @@ -3448,9 +3448,9 @@ Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression50, EXPECT Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression51, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression52, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression53, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression54, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression55, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression56, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression54, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression55, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression56, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression57, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression58, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression59, EXPECTED_RESULT_GOT_FAILURE @@ -3459,9 +3459,9 @@ Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression60, EXPECT Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression61, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression62, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression63, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression64, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression65, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression66, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression64, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression65, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression66, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression67, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression68, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompEq//generalexpression69, EXPECTED_RESULT_GOT_FAILURE @@ -3560,9 +3560,9 @@ Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression436, EXPEC Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression437, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression438, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression439, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression440, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression441, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression442, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression440, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression441, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression442, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression443, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression444, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression445, EXPECTED_RESULT_GOT_FAILURE @@ -3570,9 +3570,9 @@ Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression446, EXPEC Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression447, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression448, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression449, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression450, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression451, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression452, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression450, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression451, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression452, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression453, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression454, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression455, EXPECTED_RESULT_GOT_FAILURE @@ -3580,9 +3580,9 @@ Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression456, EXPEC Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression457, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression458, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression459, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression460, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression461, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression462, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression460, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression461, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression462, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression463, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression464, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompGT//generalexpression465, EXPECTED_RESULT_GOT_FAILURE @@ -3669,9 +3669,9 @@ Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression535, EXP Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression536, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression537, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression538, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression539, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression540, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression541, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression539, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression540, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression541, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression542, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression543, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression544, EXPECTED_RESULT_GOT_FAILURE @@ -3679,9 +3679,9 @@ Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression545, EXP Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression546, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression547, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression548, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression549, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression550, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression551, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression549, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression550, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression551, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression552, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression553, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression554, EXPECTED_RESULT_GOT_FAILURE @@ -3689,9 +3689,9 @@ Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression555, EXP Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression556, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression557, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression558, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression559, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression560, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression561, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression559, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression560, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression561, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression562, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression563, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompGTEQ//generalexpression564, EXPECTED_RESULT_GOT_FAILURE @@ -3788,9 +3788,9 @@ Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression238, EXPEC Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression239, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression240, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression241, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression242, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression243, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression244, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression242, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression243, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression244, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression245, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression246, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression247, EXPECTED_RESULT_GOT_FAILURE @@ -3798,9 +3798,9 @@ Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression248, EXPEC Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression249, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression250, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression251, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression252, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression253, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression254, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression252, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression253, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression254, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression255, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression256, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression257, EXPECTED_RESULT_GOT_FAILURE @@ -3808,9 +3808,9 @@ Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression258, EXPEC Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression259, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression260, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression261, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression262, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression263, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression264, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression262, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression263, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression264, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression265, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression266, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompLT//generalexpression267, EXPECTED_RESULT_GOT_FAILURE @@ -3896,9 +3896,9 @@ Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression337, EXP Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression338, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression339, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression340, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression341, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression342, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression343, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression341, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression342, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression343, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression344, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression345, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression346, EXPECTED_RESULT_GOT_FAILURE @@ -3906,9 +3906,9 @@ Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression347, EXP Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression348, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression349, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression350, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression351, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression352, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression353, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression351, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression352, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression353, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression354, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression355, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression356, EXPECTED_RESULT_GOT_FAILURE @@ -3916,9 +3916,9 @@ Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression357, EXP Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression358, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression359, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression360, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression361, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression362, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression363, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression361, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression362, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression363, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression364, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression365, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompLTEQ//generalexpression366, EXPECTED_RESULT_GOT_FAILURE @@ -4037,9 +4037,9 @@ Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression139, EXPEC Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression140, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression141, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression142, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression143, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression144, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression145, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression143, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression144, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression145, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression146, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression147, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression148, EXPECTED_RESULT_GOT_FAILURE @@ -4047,9 +4047,9 @@ Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression149, EXPEC Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression150, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression151, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression152, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression153, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression154, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression155, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression153, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression154, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression155, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression156, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression157, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression158, EXPECTED_RESULT_GOT_FAILURE @@ -4057,9 +4057,9 @@ Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression159, EXPEC Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression160, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression161, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression162, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression163, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression164, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression165, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression163, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression164, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression165, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression166, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression167, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/CompExpr/GenComprsn/GenCompNE//generalexpression168, EXPECTED_RESULT_GOT_FAILURE @@ -4200,7 +4200,7 @@ Expressions/Operators/CompExpr/ValComp/BooleanOp/BooleanEqual//op-boolean-equal- Expressions/Operators/CompExpr/ValComp/BooleanOp/BooleanEqual//op-boolean-equal-14, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/ValComp/BooleanOp/BooleanEqual//op-boolean-equal-15, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/ValComp/BooleanOp/BooleanEqual//op-boolean-equal-16, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/Operators/CompExpr/ValComp/BooleanOp/BooleanEqual//op-boolean-equal-17, EXPECTED_ERROR_GOT_SAME_ERROR +Expressions/Operators/CompExpr/ValComp/BooleanOp/BooleanEqual//op-boolean-equal-17, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Expressions/Operators/CompExpr/ValComp/BooleanOp/BooleanEqual//op-boolean-equal-2, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/ValComp/BooleanOp/BooleanEqual//op-boolean-equal-3, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/Operators/CompExpr/ValComp/BooleanOp/BooleanEqual//op-boolean-equal-4, EXPECTED_RESULT_GOT_SAME_RESULT @@ -5557,7 +5557,7 @@ Expressions/Operators/NodeOp/NodeAfter//nodeexpression34, EXPECTED_ERROR_GOT_DIF Expressions/Operators/NodeOp/NodeAfter//nodeexpression35, EXPECTED_ERROR_GOT_FAILURE Expressions/Operators/NodeOp/NodeAfter//nodeexpression36, EXPECTED_ERROR_GOT_FAILURE Expressions/Operators/NodeOp/NodeAfter//nodeexpression37, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Expressions/Operators/NodeOp/NodeAfter//nodeexpression38, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/NodeOp/NodeAfter//nodeexpression38, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/NodeOp/NodeAfter//nodeexpression39, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/NodeOp/NodeAfter//nodeexpression40, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/NodeOp/NodeAfter//nodeexpression41, EXPECTED_ERROR_GOT_FAILURE @@ -5579,7 +5579,7 @@ Expressions/Operators/NodeOp/NodeBefore//nodeexpression18, EXPECTED_ERROR_GOT_DI Expressions/Operators/NodeOp/NodeBefore//nodeexpression19, EXPECTED_ERROR_GOT_FAILURE Expressions/Operators/NodeOp/NodeBefore//nodeexpression20, EXPECTED_ERROR_GOT_FAILURE Expressions/Operators/NodeOp/NodeBefore//nodeexpression21, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Expressions/Operators/NodeOp/NodeBefore//nodeexpression22, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/Operators/NodeOp/NodeBefore//nodeexpression22, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/NodeOp/NodeBefore//nodeexpression23, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/NodeOp/NodeBefore//nodeexpression24, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/NodeOp/NodeBefore//nodeexpression25, EXPECTED_ERROR_GOT_FAILURE @@ -5597,26 +5597,26 @@ Expressions/Operators/NodeOp/NodeBefore//nodeexpressionhc8, EXPECTED_RESULT_GOT_ Expressions/Operators/NodeOp/NodeBefore//nodeexpressionhc9, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/NodeOp/NodeSame//nodecomparisonerr-1, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Expressions/Operators/NodeOp/NodeSame//nodeexpression1, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Expressions/Operators/NodeOp/NodeSame//nodeexpression10, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/NodeOp/NodeSame//nodeexpression11, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/NodeOp/NodeSame//nodeexpression12, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/NodeOp/NodeSame//nodeexpression13, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Expressions/Operators/NodeOp/NodeSame//nodeexpression14, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/NodeOp/NodeSame//nodeexpression15, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/NodeOp/NodeSame//nodeexpression16, EXPECTED_RESULT_GOT_ERROR +Expressions/Operators/NodeOp/NodeSame//nodeexpression10, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/NodeOp/NodeSame//nodeexpression11, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/NodeOp/NodeSame//nodeexpression12, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/NodeOp/NodeSame//nodeexpression13, EXPECTED_ERROR_GOT_FAILURE +Expressions/Operators/NodeOp/NodeSame//nodeexpression14, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/NodeOp/NodeSame//nodeexpression15, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/NodeOp/NodeSame//nodeexpression16, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/NodeOp/NodeSame//nodeexpression2, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Expressions/Operators/NodeOp/NodeSame//nodeexpression3, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Expressions/Operators/NodeOp/NodeSame//nodeexpression4, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +Expressions/Operators/NodeOp/NodeSame//nodeexpression3, EXPECTED_ERROR_GOT_FAILURE +Expressions/Operators/NodeOp/NodeSame//nodeexpression4, EXPECTED_ERROR_GOT_FAILURE Expressions/Operators/NodeOp/NodeSame//nodeexpression5, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Expressions/Operators/NodeOp/NodeSame//nodeexpression6, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/NodeOp/NodeSame//nodeexpression7, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/NodeOp/NodeSame//nodeexpression8, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/NodeOp/NodeSame//nodeexpression9, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Expressions/Operators/NodeOp/NodeSame//nodeexpressionhc1, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/NodeOp/NodeSame//nodeexpressionhc2, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/NodeOp/NodeSame//nodeexpressionhc3, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/NodeOp/NodeSame//nodeexpressionhc4, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/NodeOp/NodeSame//nodeexpressionhc5, EXPECTED_RESULT_GOT_ERROR +Expressions/Operators/NodeOp/NodeSame//nodeexpression7, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/NodeOp/NodeSame//nodeexpression8, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/NodeOp/NodeSame//nodeexpression9, EXPECTED_ERROR_GOT_FAILURE +Expressions/Operators/NodeOp/NodeSame//nodeexpressionhc1, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/NodeOp/NodeSame//nodeexpressionhc2, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/NodeOp/NodeSame//nodeexpressionhc3, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/NodeOp/NodeSame//nodeexpressionhc4, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/NodeOp/NodeSame//nodeexpressionhc5, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/SeqOp/SeqConcat//op-concatenate-mix-args-001, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/SeqOp/SeqConcat//op-concatenate-mix-args-002, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/SeqOp/SeqConcat//op-concatenate-mix-args-003, EXPECTED_RESULT_GOT_DIFFERENT_RESULT @@ -5637,14 +5637,14 @@ Expressions/Operators/SeqOp/SeqConcat//op-concatenate-mix-args-017, EXPECTED_RES Expressions/Operators/SeqOp/SeqConcat//op-concatenate-mix-args-018, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/Operators/SeqOp/SeqConcat//op-concatenate-mix-args-019, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/SeqOp/SeqConcat//op-concatenate-mix-args-020, EXPECTED_RESULT_GOT_FAILURE -Expressions/Operators/SeqOp/SeqExcept//fn-except-node-args-001, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/SeqOp/SeqExcept//fn-except-node-args-002, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/SeqOp/SeqExcept//fn-except-node-args-003, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/SeqOp/SeqExcept//fn-except-node-args-004, EXPECTED_RESULT_GOT_ERROR +Expressions/Operators/SeqOp/SeqExcept//fn-except-node-args-001, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/SeqOp/SeqExcept//fn-except-node-args-002, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/SeqOp/SeqExcept//fn-except-node-args-003, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/SeqOp/SeqExcept//fn-except-node-args-004, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/SeqOp/SeqExcept//fn-except-node-args-005, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/SeqOp/SeqExcept//fn-except-node-args-006, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/SeqOp/SeqExcept//fn-except-node-args-007, EXPECTED_RESULT_GOT_FAILURE -Expressions/Operators/SeqOp/SeqExcept//fn-except-node-args-008, EXPECTED_RESULT_GOT_ERROR +Expressions/Operators/SeqOp/SeqExcept//fn-except-node-args-008, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/SeqOp/SeqExcept//fn-except-node-args-009, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/SeqOp/SeqExcept//fn-except-node-args-010, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/SeqOp/SeqExcept//fn-except-node-args-011, EXPECTED_ERROR_GOT_DIFFERENT_ERROR @@ -5660,14 +5660,14 @@ Expressions/Operators/SeqOp/SeqExcept//fn-except-node-args-020, EXPECTED_RESULT_ Expressions/Operators/SeqOp/SeqExcept//fn-except-node-args-021, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/SeqOp/SeqExcept//fn-except-node-args-022, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/SeqOp/SeqExcept//fn-except-node-args-023, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/SeqOp/SeqIntersect//fn-intersect-node-args-001, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/SeqOp/SeqIntersect//fn-intersect-node-args-002, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/SeqOp/SeqIntersect//fn-intersect-node-args-003, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/SeqOp/SeqIntersect//fn-intersect-node-args-004, EXPECTED_RESULT_GOT_ERROR +Expressions/Operators/SeqOp/SeqIntersect//fn-intersect-node-args-001, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/SeqOp/SeqIntersect//fn-intersect-node-args-002, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/SeqOp/SeqIntersect//fn-intersect-node-args-003, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/SeqOp/SeqIntersect//fn-intersect-node-args-004, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/SeqOp/SeqIntersect//fn-intersect-node-args-005, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/SeqOp/SeqIntersect//fn-intersect-node-args-006, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/SeqOp/SeqIntersect//fn-intersect-node-args-007, EXPECTED_RESULT_GOT_FAILURE -Expressions/Operators/SeqOp/SeqIntersect//fn-intersect-node-args-008, EXPECTED_RESULT_GOT_ERROR +Expressions/Operators/SeqOp/SeqIntersect//fn-intersect-node-args-008, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/SeqOp/SeqIntersect//fn-intersect-node-args-009, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/SeqOp/SeqIntersect//fn-intersect-node-args-010, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/SeqOp/SeqIntersect//fn-intersect-node-args-011, EXPECTED_RESULT_GOT_ERROR @@ -5683,16 +5683,16 @@ Expressions/Operators/SeqOp/SeqIntersect//fn-intersect-node-args-020, EXPECTED_R Expressions/Operators/SeqOp/SeqIntersect//fn-intersect-node-args-021, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/SeqOp/SeqIntersect//fn-intersect-node-args-022, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/SeqOp/SeqIntersect//fn-intersect-node-args-023, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/SeqOp/SeqUnion//fn-union-node-args-001, EXPECTED_RESULT_GOT_ERROR +Expressions/Operators/SeqOp/SeqUnion//fn-union-node-args-001, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/SeqOp/SeqUnion//fn-union-node-args-002, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/SeqOp/SeqUnion//fn-union-node-args-003, EXPECTED_RESULT_GOT_ERROR -Expressions/Operators/SeqOp/SeqUnion//fn-union-node-args-004, EXPECTED_RESULT_GOT_ERROR +Expressions/Operators/SeqOp/SeqUnion//fn-union-node-args-003, EXPECTED_RESULT_GOT_FAILURE +Expressions/Operators/SeqOp/SeqUnion//fn-union-node-args-004, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/SeqOp/SeqUnion//fn-union-node-args-005, EXPECTED_RESULT_GOT_FAILURE -Expressions/Operators/SeqOp/SeqUnion//fn-union-node-args-006, EXPECTED_RESULT_GOT_ERROR +Expressions/Operators/SeqOp/SeqUnion//fn-union-node-args-006, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/SeqOp/SeqUnion//fn-union-node-args-007, EXPECTED_RESULT_GOT_FAILURE -Expressions/Operators/SeqOp/SeqUnion//fn-union-node-args-008, EXPECTED_RESULT_GOT_ERROR +Expressions/Operators/SeqOp/SeqUnion//fn-union-node-args-008, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/SeqOp/SeqUnion//fn-union-node-args-009, EXPECTED_RESULT_GOT_FAILURE -Expressions/Operators/SeqOp/SeqUnion//fn-union-node-args-010, EXPECTED_RESULT_GOT_ERROR +Expressions/Operators/SeqOp/SeqUnion//fn-union-node-args-010, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/SeqOp/SeqUnion//fn-union-node-args-011, EXPECTED_RESULT_GOT_FAILURE Expressions/Operators/SeqOp/SeqUnion//fn-union-node-args-012, EXPECTED_RESULT_GOT_ERROR Expressions/Operators/SeqOp/SeqUnion//fn-union-node-args-013, EXPECTED_RESULT_GOT_ERROR @@ -5710,22 +5710,22 @@ Expressions/OrderExpr//K-OrderExpr-1, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/OrderExpr//K-OrderExpr-2, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/OrderExpr//K-OrderExpr-3, EXPECTED_RESULT_GOT_ERROR Expressions/OrderExpr//K-OrderExpr-4, EXPECTED_RESULT_GOT_ERROR -Expressions/OrderExpr//Orderexpr-1, EXPECTED_RESULT_GOT_ERROR -Expressions/OrderExpr//Orderexpr-10, EXPECTED_RESULT_GOT_ERROR -Expressions/OrderExpr//Orderexpr-11, EXPECTED_RESULT_GOT_ERROR -Expressions/OrderExpr//Orderexpr-12, EXPECTED_RESULT_GOT_ERROR -Expressions/OrderExpr//Orderexpr-13, EXPECTED_RESULT_GOT_ERROR -Expressions/OrderExpr//Orderexpr-14, EXPECTED_RESULT_GOT_ERROR +Expressions/OrderExpr//Orderexpr-1, EXPECTED_RESULT_GOT_FAILURE +Expressions/OrderExpr//Orderexpr-10, EXPECTED_RESULT_GOT_FAILURE +Expressions/OrderExpr//Orderexpr-11, EXPECTED_RESULT_GOT_FAILURE +Expressions/OrderExpr//Orderexpr-12, EXPECTED_RESULT_GOT_FAILURE +Expressions/OrderExpr//Orderexpr-13, EXPECTED_RESULT_GOT_FAILURE +Expressions/OrderExpr//Orderexpr-14, EXPECTED_RESULT_GOT_FAILURE Expressions/OrderExpr//Orderexpr-15, EXPECTED_RESULT_GOT_ERROR Expressions/OrderExpr//Orderexpr-16, EXPECTED_RESULT_GOT_ERROR Expressions/OrderExpr//Orderexpr-17, EXPECTED_RESULT_GOT_ERROR Expressions/OrderExpr//Orderexpr-18, EXPECTED_RESULT_GOT_ERROR -Expressions/OrderExpr//Orderexpr-19, EXPECTED_RESULT_GOT_ERROR -Expressions/OrderExpr//Orderexpr-2, EXPECTED_RESULT_GOT_ERROR -Expressions/OrderExpr//Orderexpr-20, EXPECTED_RESULT_GOT_ERROR -Expressions/OrderExpr//Orderexpr-5, EXPECTED_RESULT_GOT_ERROR -Expressions/OrderExpr//Orderexpr-6, EXPECTED_RESULT_GOT_ERROR -Expressions/OrderExpr//Orderexpr-9, EXPECTED_RESULT_GOT_ERROR +Expressions/OrderExpr//Orderexpr-19, EXPECTED_RESULT_GOT_FAILURE +Expressions/OrderExpr//Orderexpr-2, EXPECTED_RESULT_GOT_FAILURE +Expressions/OrderExpr//Orderexpr-20, EXPECTED_RESULT_GOT_FAILURE +Expressions/OrderExpr//Orderexpr-5, EXPECTED_RESULT_GOT_FAILURE +Expressions/OrderExpr//Orderexpr-6, EXPECTED_RESULT_GOT_FAILURE +Expressions/OrderExpr//Orderexpr-9, EXPECTED_RESULT_GOT_FAILURE Expressions/OrderExpr//orderedunorderedexpr-1, EXPECTED_RESULT_GOT_ERROR Expressions/OrderExpr//orderedunorderedexpr-2, EXPECTED_RESULT_GOT_ERROR Expressions/OrderExpr//orderedunorderedexpr-3, EXPECTED_RESULT_GOT_ERROR @@ -5789,7 +5789,7 @@ Expressions/PathExpr/Predicates//predicates-25, EXPECTED_RESULT_GOT_FAILURE Expressions/PathExpr/Predicates//predicates-26, EXPECTED_RESULT_GOT_FAILURE Expressions/PathExpr/Predicates//predicates-27, EXPECTED_RESULT_GOT_FAILURE Expressions/PathExpr/Predicates//predicates-28, EXPECTED_RESULT_GOT_FAILURE -Expressions/PathExpr/Predicates//predicates-29, EXPECTED_ERROR_GOT_RESULT +Expressions/PathExpr/Predicates//predicates-29, EXPECTED_ERROR_GOT_FAILURE Expressions/PathExpr/Predicates//predicates-3, EXPECTED_RESULT_GOT_FAILURE Expressions/PathExpr/Predicates//predicates-30, EXPECTED_RESULT_GOT_FAILURE Expressions/PathExpr/Predicates//predicates-31, EXPECTED_RESULT_GOT_FAILURE @@ -6021,7 +6021,7 @@ Expressions/PathExpr/Steps/Axes//Axes108, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Expressions/PathExpr/Steps/Axes//Axes109, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Expressions/PathExpr/Steps/Axes//Axes110, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Expressions/PathExpr/Steps/Axes//Axes111, EXPECTED_RESULT_GOT_ERROR -Expressions/PathExpr/Steps/Axes//axis-err-1, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +Expressions/PathExpr/Steps/Axes//axis-err-1, EXPECTED_ERROR_GOT_FAILURE Expressions/PathExpr/Steps/NodeTest//NodeTest001, EXPECTED_RESULT_GOT_FAILURE Expressions/PathExpr/Steps/NodeTest//NodeTest002, EXPECTED_RESULT_GOT_FAILURE Expressions/PathExpr/Steps/NodeTest//NodeTest003, EXPECTED_RESULT_GOT_FAILURE @@ -6052,7 +6052,7 @@ Expressions/PathExpr/Steps/NodeTest//NodeTesthc-8, EXPECTED_RESULT_GOT_FAILURE Expressions/PathExpr/Steps/NodeTest//nametest-1, EXPECTED_RESULT_GOT_FAILURE Expressions/PathExpr/Steps/NodeTest//nametest-10, EXPECTED_RESULT_GOT_ERROR Expressions/PathExpr/Steps/NodeTest//nametest-11, EXPECTED_RESULT_GOT_ERROR -Expressions/PathExpr/Steps/NodeTest//nametest-12, EXPECTED_RESULT_GOT_ERROR +Expressions/PathExpr/Steps/NodeTest//nametest-12, EXPECTED_RESULT_GOT_FAILURE Expressions/PathExpr/Steps/NodeTest//nametest-13, EXPECTED_RESULT_GOT_FAILURE Expressions/PathExpr/Steps/NodeTest//nametest-14, EXPECTED_RESULT_GOT_FAILURE Expressions/PathExpr/Steps/NodeTest//nametest-15, EXPECTED_RESULT_GOT_FAILURE @@ -6066,7 +6066,7 @@ Expressions/PathExpr/Steps/NodeTest//nametest-5, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/PathExpr/Steps/NodeTest//nametest-6, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/PathExpr/Steps/NodeTest//nametest-7, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/PathExpr/Steps/NodeTest//nametest-8, EXPECTED_RESULT_GOT_ERROR -Expressions/PathExpr/Steps/NodeTest//nametest-9, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/PathExpr/Steps/NodeTest//nametest-9, EXPECTED_RESULT_GOT_FAILURE Expressions/PathExpr/Steps/NodeTestSection/NameTest//K-NameTest-1, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/PathExpr/Steps/NodeTestSection/NameTest//K-NameTest-10, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/PathExpr/Steps/NodeTestSection/NameTest//K-NameTest-11, EXPECTED_ERROR_GOT_SAME_ERROR @@ -6476,42 +6476,42 @@ Expressions/PrologExpr/DefaultOrderingProlog//orderDecl-18, EXPECTED_RESULT_GOT_ Expressions/PrologExpr/DefaultOrderingProlog//orderDecl-2, EXPECTED_RESULT_GOT_ERROR Expressions/PrologExpr/DefaultOrderingProlog//orderDecl-20, EXPECTED_RESULT_GOT_FAILURE Expressions/PrologExpr/DefaultOrderingProlog//orderDecl-21, EXPECTED_RESULT_GOT_FAILURE -Expressions/PrologExpr/DefaultOrderingProlog//orderDecl-22, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +Expressions/PrologExpr/DefaultOrderingProlog//orderDecl-22, EXPECTED_ERROR_GOT_FAILURE Expressions/PrologExpr/DefaultOrderingProlog//orderDecl-23, EXPECTED_RESULT_GOT_FAILURE Expressions/PrologExpr/DefaultOrderingProlog//orderDecl-4, EXPECTED_RESULT_GOT_ERROR -Expressions/PrologExpr/DefaultOrderingProlog//orderDecl-7, EXPECTED_RESULT_GOT_ERROR +Expressions/PrologExpr/DefaultOrderingProlog//orderDecl-7, EXPECTED_RESULT_GOT_FAILURE Expressions/PrologExpr/DefaultOrderingProlog//orderDecl-8, EXPECTED_RESULT_GOT_FAILURE Expressions/PrologExpr/DefaultOrderingProlog//orderDecl-9, EXPECTED_RESULT_GOT_FAILURE Expressions/PrologExpr/DefaultOrderingProlog//orderdecl-14, EXPECTED_RESULT_GOT_FAILURE Expressions/PrologExpr/DefaultOrderingProlog//orderdecl-3, EXPECTED_RESULT_GOT_ERROR Expressions/PrologExpr/DefaultOrderingProlog//orderdecl-5, EXPECTED_RESULT_GOT_ERROR -Expressions/PrologExpr/DefaultOrderingProlog//orderdecl-6, EXPECTED_RESULT_GOT_ERROR +Expressions/PrologExpr/DefaultOrderingProlog//orderdecl-6, EXPECTED_RESULT_GOT_FAILURE Expressions/PrologExpr/EmptyOrderProlog//K-EmptyOrderProlog-1, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/PrologExpr/EmptyOrderProlog//K-EmptyOrderProlog-2, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/PrologExpr/EmptyOrderProlog//K-EmptyOrderProlog-3, EXPECTED_ERROR_GOT_RESULT Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-1, EXPECTED_ERROR_GOT_RESULT -Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-10, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-11, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-10, EXPECTED_RESULT_GOT_FAILURE +Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-11, EXPECTED_RESULT_GOT_FAILURE Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-12, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-13, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-14, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-15, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-14, EXPECTED_RESULT_GOT_FAILURE +Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-15, EXPECTED_RESULT_GOT_FAILURE Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-16, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-17, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-18, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-19, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-18, EXPECTED_RESULT_GOT_FAILURE +Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-19, EXPECTED_RESULT_GOT_FAILURE +Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-2, EXPECTED_RESULT_GOT_FAILURE Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-20, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-21, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-22, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-22, EXPECTED_RESULT_GOT_FAILURE Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-23, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-24, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-24, EXPECTED_RESULT_GOT_FAILURE Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-25, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-26, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-26, EXPECTED_RESULT_GOT_FAILURE Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-27, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-28, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-28, EXPECTED_RESULT_GOT_FAILURE Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-29, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-3, EXPECTED_RESULT_GOT_FAILURE Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/PrologExpr/EmptyOrderProlog//emptyorderdecl-6, EXPECTED_RESULT_GOT_DIFFERENT_RESULT @@ -7020,18 +7020,18 @@ Expressions/SeqExpr/CombNodeSeq//combiningnodeseqexcepthc4, EXPECTED_RESULT_GOT_ Expressions/SeqExpr/CombNodeSeq//combiningnodeseqexcepthc5, EXPECTED_RESULT_GOT_ERROR Expressions/SeqExpr/CombNodeSeq//combiningnodeseqexcepthc6, EXPECTED_RESULT_GOT_ERROR Expressions/SeqExpr/CombNodeSeq//combiningnodeseqhc1, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/CombNodeSeq//combiningnodeseqhc10, EXPECTED_RESULT_GOT_ERROR +Expressions/SeqExpr/CombNodeSeq//combiningnodeseqhc10, EXPECTED_RESULT_GOT_FAILURE Expressions/SeqExpr/CombNodeSeq//combiningnodeseqhc2, EXPECTED_RESULT_GOT_ERROR Expressions/SeqExpr/CombNodeSeq//combiningnodeseqhc3, EXPECTED_RESULT_GOT_ERROR Expressions/SeqExpr/CombNodeSeq//combiningnodeseqhc4, EXPECTED_RESULT_GOT_ERROR Expressions/SeqExpr/CombNodeSeq//combiningnodeseqhc5, EXPECTED_RESULT_GOT_ERROR Expressions/SeqExpr/CombNodeSeq//combiningnodeseqhc6, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/CombNodeSeq//combiningnodeseqhc7, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/CombNodeSeq//combiningnodeseqhc8, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/CombNodeSeq//combiningnodeseqhc9, EXPECTED_RESULT_GOT_ERROR +Expressions/SeqExpr/CombNodeSeq//combiningnodeseqhc7, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/CombNodeSeq//combiningnodeseqhc8, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/CombNodeSeq//combiningnodeseqhc9, EXPECTED_RESULT_GOT_FAILURE Expressions/SeqExpr/CombNodeSeq//combiningnodeseqintersecthc1, EXPECTED_RESULT_GOT_ERROR Expressions/SeqExpr/CombNodeSeq//combiningnodeseqintersecthc2, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Expressions/SeqExpr/CombNodeSeq//combiningnodeseqintersecthc3, EXPECTED_RESULT_GOT_ERROR +Expressions/SeqExpr/CombNodeSeq//combiningnodeseqintersecthc3, EXPECTED_RESULT_GOT_FAILURE Expressions/SeqExpr/CombNodeSeq//combiningnodeseqintersecthc4, EXPECTED_RESULT_GOT_ERROR Expressions/SeqExpr/ConstructSeq/RangeExpr//K-RangeExpr-1, EXPECTED_ERROR_GOT_RESULT Expressions/SeqExpr/ConstructSeq/RangeExpr//K-RangeExpr-10, EXPECTED_RESULT_GOT_SAME_RESULT @@ -7104,121 +7104,121 @@ Expressions/SeqExpr/ConstructSeq/commaOp//sequenceexpressionhc7, EXPECTED_RESULT Expressions/SeqExpr/ConstructSeq/commaOp//sequenceexpressionhc8, EXPECTED_RESULT_GOT_FAILURE Expressions/SeqExpr/ConstructSeq/commaOp//sequenceexpressionhc9, EXPECTED_RESULT_GOT_FAILURE Expressions/SeqExpr/FilterExpr//K-FilterExpr-1, EXPECTED_ERROR_GOT_SAME_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-10, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-11, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-12, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-13, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-14, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-15, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-16, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-17, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-18, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-19, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/SeqExpr/FilterExpr//K-FilterExpr-10, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-11, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-12, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-13, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-14, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-15, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-16, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-17, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-18, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-19, EXPECTED_RESULT_GOT_FAILURE Expressions/SeqExpr/FilterExpr//K-FilterExpr-2, EXPECTED_ERROR_GOT_SAME_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-20, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-21, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-22, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-23, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-24, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-25, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-26, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-27, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-28, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-29, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/SeqExpr/FilterExpr//K-FilterExpr-20, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-21, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-22, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-23, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-24, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-25, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-26, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-27, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-28, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-29, EXPECTED_RESULT_GOT_FAILURE Expressions/SeqExpr/FilterExpr//K-FilterExpr-3, EXPECTED_ERROR_GOT_SAME_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-30, EXPECTED_ERROR_GOT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-31, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-32, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-33, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-34, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-35, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-36, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-37, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-38, EXPECTED_ERROR_GOT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-39, EXPECTED_RESULT_GOT_ERROR +Expressions/SeqExpr/FilterExpr//K-FilterExpr-30, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-31, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-32, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-33, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-34, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-35, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-36, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-37, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-38, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-39, EXPECTED_RESULT_GOT_FAILURE Expressions/SeqExpr/FilterExpr//K-FilterExpr-4, EXPECTED_ERROR_GOT_SAME_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-40, EXPECTED_ERROR_GOT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-41, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-42, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-43, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-44, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-45, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-46, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-47, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-48, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-49, EXPECTED_ERROR_GOT_RESULT +Expressions/SeqExpr/FilterExpr//K-FilterExpr-40, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-41, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-42, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-43, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-44, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-45, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-46, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-47, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-48, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-49, EXPECTED_ERROR_GOT_FAILURE Expressions/SeqExpr/FilterExpr//K-FilterExpr-5, EXPECTED_ERROR_GOT_SAME_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-50, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-51, EXPECTED_ERROR_GOT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-52, EXPECTED_ERROR_GOT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-53, EXPECTED_ERROR_GOT_SAME_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-54, EXPECTED_ERROR_GOT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-55, EXPECTED_ERROR_GOT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-56, EXPECTED_ERROR_GOT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-57, EXPECTED_ERROR_GOT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-58, EXPECTED_ERROR_GOT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-59, EXPECTED_ERROR_GOT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-6, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-60, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-61, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-62, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-63, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-64, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-65, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-66, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-67, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-68, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-69, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-7, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-70, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-71, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-72, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-73, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-74, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-75, EXPECTED_ERROR_GOT_SAME_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-76, EXPECTED_ERROR_GOT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-77, EXPECTED_ERROR_GOT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-78, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-79, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-8, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-80, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-81, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-82, EXPECTED_ERROR_GOT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-83, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-84, EXPECTED_ERROR_GOT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-85, EXPECTED_ERROR_GOT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-86, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-87, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-88, EXPECTED_ERROR_GOT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-89, EXPECTED_RESULT_GOT_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-9, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-90, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-91, EXPECTED_ERROR_GOT_SAME_ERROR -Expressions/SeqExpr/FilterExpr//K-FilterExpr-92, EXPECTED_ERROR_GOT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-93, EXPECTED_ERROR_GOT_RESULT -Expressions/SeqExpr/FilterExpr//K-FilterExpr-94, EXPECTED_ERROR_GOT_RESULT +Expressions/SeqExpr/FilterExpr//K-FilterExpr-50, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-51, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-52, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-53, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-54, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-55, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-56, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-57, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-58, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-59, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-6, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-60, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-61, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-62, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-63, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-64, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-65, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-66, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-67, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-68, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-69, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-7, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-70, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-71, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-72, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-73, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-74, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-75, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-76, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-77, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-78, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-79, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-8, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-80, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-81, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-82, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-83, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-84, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-85, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-86, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-87, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-88, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-89, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-9, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-90, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-91, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-92, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-93, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//K-FilterExpr-94, EXPECTED_ERROR_GOT_FAILURE Expressions/SeqExpr/FilterExpr//filterexpressionhc1, EXPECTED_RESULT_GOT_FAILURE -Expressions/SeqExpr/FilterExpr//filterexpressionhc10, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//filterexpressionhc11, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//filterexpressionhc12, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//filterexpressionhc13, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//filterexpressionhc14, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//filterexpressionhc15, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//filterexpressionhc16, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//filterexpressionhc17, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//filterexpressionhc18, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/SeqExpr/FilterExpr//filterexpressionhc19, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//filterexpressionhc2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//filterexpressionhc20, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//filterexpressionhc21, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//filterexpressionhc22, EXPECTED_ERROR_GOT_RESULT -Expressions/SeqExpr/FilterExpr//filterexpressionhc3, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/SeqExpr/FilterExpr//filterexpressionhc10, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//filterexpressionhc11, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//filterexpressionhc12, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//filterexpressionhc13, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//filterexpressionhc14, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//filterexpressionhc15, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//filterexpressionhc16, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//filterexpressionhc17, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//filterexpressionhc18, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//filterexpressionhc19, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//filterexpressionhc2, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//filterexpressionhc20, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//filterexpressionhc21, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//filterexpressionhc22, EXPECTED_ERROR_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//filterexpressionhc3, EXPECTED_RESULT_GOT_FAILURE Expressions/SeqExpr/FilterExpr//filterexpressionhc4, EXPECTED_RESULT_GOT_ERROR Expressions/SeqExpr/FilterExpr//filterexpressionhc5, EXPECTED_RESULT_GOT_FAILURE -Expressions/SeqExpr/FilterExpr//filterexpressionhc6, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//filterexpressionhc7, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//filterexpressionhc8, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/SeqExpr/FilterExpr//filterexpressionhc9, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/SeqExpr/FilterExpr//filterexpressionhc6, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//filterexpressionhc7, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//filterexpressionhc8, EXPECTED_RESULT_GOT_FAILURE +Expressions/SeqExpr/FilterExpr//filterexpressionhc9, EXPECTED_RESULT_GOT_FAILURE Expressions/SeqExpr/RangeExpr//rangeExpr-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/SeqExpr/RangeExpr//rangeExpr-10, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/SeqExpr/RangeExpr//rangeExpr-11, EXPECTED_RESULT_GOT_DIFFERENT_RESULT @@ -7316,8 +7316,8 @@ Expressions/exprSeqTypes/SeqExprCast//CastAs005, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs006, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs007, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs008, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/exprSeqTypes/SeqExprCast//CastAs009, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/exprSeqTypes/SeqExprCast//CastAs010, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/exprSeqTypes/SeqExprCast//CastAs009, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/exprSeqTypes/SeqExprCast//CastAs010, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs011, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/exprSeqTypes/SeqExprCast//CastAs012, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs013, EXPECTED_RESULT_GOT_SAME_RESULT @@ -7398,8 +7398,8 @@ Expressions/exprSeqTypes/SeqExprCast//CastAs087, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs088, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs089, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs090, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/exprSeqTypes/SeqExprCast//CastAs091, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/exprSeqTypes/SeqExprCast//CastAs092, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/exprSeqTypes/SeqExprCast//CastAs091, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Expressions/exprSeqTypes/SeqExprCast//CastAs092, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs093, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/exprSeqTypes/SeqExprCast//CastAs094, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs095, EXPECTED_RESULT_GOT_SAME_RESULT @@ -7482,7 +7482,7 @@ Expressions/exprSeqTypes/SeqExprCast//CastAs171, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs172, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs173, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs174, EXPECTED_RESULT_GOT_ERROR -Expressions/exprSeqTypes/SeqExprCast//CastAs175, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/exprSeqTypes/SeqExprCast//CastAs175, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs176, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs177, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs178, EXPECTED_RESULT_GOT_SAME_RESULT @@ -7508,17 +7508,17 @@ Expressions/exprSeqTypes/SeqExprCast//CastAs197, EXPECTED_ERROR_GOT_DIFFERENT_ER Expressions/exprSeqTypes/SeqExprCast//CastAs198, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Expressions/exprSeqTypes/SeqExprCast//CastAs199, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs200, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/exprSeqTypes/SeqExprCast//CastAs201, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/exprSeqTypes/SeqExprCast//CastAs201, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs202, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs203, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/exprSeqTypes/SeqExprCast//CastAs204, EXPECTED_ERROR_GOT_RESULT +Expressions/exprSeqTypes/SeqExprCast//CastAs204, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Expressions/exprSeqTypes/SeqExprCast//CastAs205, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs206, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs207, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs208, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs209, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs210, EXPECTED_RESULT_GOT_ERROR -Expressions/exprSeqTypes/SeqExprCast//CastAs211, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/exprSeqTypes/SeqExprCast//CastAs211, EXPECTED_RESULT_GOT_ERROR Expressions/exprSeqTypes/SeqExprCast//CastAs212, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//CastAs213, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/exprSeqTypes/SeqExprCast//CastAs214, EXPECTED_RESULT_GOT_SAME_RESULT @@ -8851,7 +8851,7 @@ Expressions/exprSeqTypes/SeqExprCast//K-SeqExprCast-437, EXPECTED_ERROR_GOT_FAIL Expressions/exprSeqTypes/SeqExprCast//K-SeqExprCast-438, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/exprSeqTypes/SeqExprCast//K-SeqExprCast-439, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//K-SeqExprCast-44, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/exprSeqTypes/SeqExprCast//K-SeqExprCast-440, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/exprSeqTypes/SeqExprCast//K-SeqExprCast-440, EXPECTED_RESULT_GOT_ERROR Expressions/exprSeqTypes/SeqExprCast//K-SeqExprCast-441, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/exprSeqTypes/SeqExprCast//K-SeqExprCast-442, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//K-SeqExprCast-443, EXPECTED_RESULT_GOT_SAME_RESULT @@ -8903,7 +8903,7 @@ Expressions/exprSeqTypes/SeqExprCast//K-SeqExprCast-484, EXPECTED_ERROR_GOT_DIFF Expressions/exprSeqTypes/SeqExprCast//K-SeqExprCast-485, EXPECTED_ERROR_GOT_FAILURE Expressions/exprSeqTypes/SeqExprCast//K-SeqExprCast-486, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/exprSeqTypes/SeqExprCast//K-SeqExprCast-487, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/exprSeqTypes/SeqExprCast//K-SeqExprCast-488, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/exprSeqTypes/SeqExprCast//K-SeqExprCast-488, EXPECTED_RESULT_GOT_ERROR Expressions/exprSeqTypes/SeqExprCast//K-SeqExprCast-489, EXPECTED_ERROR_GOT_SAME_ERROR Expressions/exprSeqTypes/SeqExprCast//K-SeqExprCast-49, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCast//K-SeqExprCast-490, EXPECTED_RESULT_GOT_SAME_RESULT @@ -9780,14 +9780,14 @@ Expressions/exprSeqTypes/SeqExprCastable//CastableAs200, EXPECTED_RESULT_GOT_SAM Expressions/exprSeqTypes/SeqExprCastable//CastableAs201, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCastable//CastableAs202, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCastable//CastableAs203, EXPECTED_RESULT_GOT_SAME_RESULT -Expressions/exprSeqTypes/SeqExprCastable//CastableAs204, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/exprSeqTypes/SeqExprCastable//CastableAs204, EXPECTED_RESULT_GOT_ERROR Expressions/exprSeqTypes/SeqExprCastable//CastableAs205, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCastable//CastableAs206, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCastable//CastableAs207, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCastable//CastableAs208, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCastable//CastableAs209, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCastable//CastableAs210, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Expressions/exprSeqTypes/SeqExprCastable//CastableAs211, EXPECTED_RESULT_GOT_SAME_RESULT +Expressions/exprSeqTypes/SeqExprCastable//CastableAs211, EXPECTED_RESULT_GOT_ERROR Expressions/exprSeqTypes/SeqExprCastable//CastableAs212, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCastable//CastableAs213, EXPECTED_RESULT_GOT_SAME_RESULT Expressions/exprSeqTypes/SeqExprCastable//CastableAs214, EXPECTED_RESULT_GOT_SAME_RESULT @@ -10522,7 +10522,7 @@ FLWORExpr/ForExpr/ForExprPositionalVar//K2-ForExprPositionalVar-3, EXPECTED_RESU FLWORExpr/ForExpr/ForExprPositionalVar//K2-ForExprPositionalVar-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT FLWORExpr/ForExpr/ForExprWith//K2-ForExprWith-1, EXPECTED_ERROR_GOT_DIFFERENT_ERROR FLWORExpr/ForExpr/ForExprWithout//K2-ForExprWithout-1, EXPECTED_ERROR_GOT_SAME_ERROR -FLWORExpr/ForExpr/ForExprWithout//K2-ForExprWithout-10, EXPECTED_ERROR_GOT_RESULT +FLWORExpr/ForExpr/ForExprWithout//K2-ForExprWithout-10, EXPECTED_ERROR_GOT_DIFFERENT_ERROR FLWORExpr/ForExpr/ForExprWithout//K2-ForExprWithout-11, EXPECTED_RESULT_GOT_DIFFERENT_RESULT FLWORExpr/ForExpr/ForExprWithout//K2-ForExprWithout-12, EXPECTED_RESULT_GOT_DIFFERENT_RESULT FLWORExpr/ForExpr/ForExprWithout//K2-ForExprWithout-13, EXPECTED_RESULT_GOT_FAILURE @@ -10593,189 +10593,189 @@ FLWORExpr/LetExpr/LetExprWithout//K2-LetExprWithout-7, EXPECTED_ERROR_GOT_DIFFER FLWORExpr/LetExpr/LetExprWithout//K2-LetExprWithout-8, EXPECTED_ERROR_GOT_SAME_ERROR FLWORExpr/LetExpr/LetExprWithout//K2-LetExprWithout-9, EXPECTED_ERROR_GOT_DIFFERENT_ERROR FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-10, EXPECTED_ERROR_GOT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-11, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-10, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-11, EXPECTED_RESULT_GOT_FAILURE FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-12, EXPECTED_RESULT_GOT_DIFFERENT_RESULT FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-13, EXPECTED_RESULT_GOT_DIFFERENT_RESULT FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-14, EXPECTED_RESULT_GOT_FAILURE FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-15, EXPECTED_ERROR_GOT_FAILURE FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-16, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-17, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-17, EXPECTED_RESULT_GOT_FAILURE FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-18, EXPECTED_RESULT_GOT_SAME_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-19, EXPECTED_ERROR_GOT_RESULT +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-19, EXPECTED_ERROR_GOT_DIFFERENT_ERROR FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-2, EXPECTED_ERROR_GOT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-20, EXPECTED_ERROR_GOT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-21, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-20, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-21, EXPECTED_RESULT_GOT_FAILURE FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-22, EXPECTED_ERROR_GOT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-23, EXPECTED_ERROR_GOT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-24, EXPECTED_ERROR_GOT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-25, EXPECTED_ERROR_GOT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-26, EXPECTED_ERROR_GOT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-27, EXPECTED_ERROR_GOT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-28, EXPECTED_ERROR_GOT_RESULT +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-23, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-24, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-25, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-26, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-27, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-28, EXPECTED_ERROR_GOT_DIFFERENT_ERROR FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-29, EXPECTED_ERROR_GOT_RESULT FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-3, EXPECTED_ERROR_GOT_RESULT FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-30, EXPECTED_ERROR_GOT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-31, EXPECTED_ERROR_GOT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-32, EXPECTED_ERROR_GOT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-33, EXPECTED_ERROR_GOT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-34, EXPECTED_ERROR_GOT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-35, EXPECTED_ERROR_GOT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-36, EXPECTED_ERROR_GOT_RESULT +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-31, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-32, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-33, EXPECTED_ERROR_GOT_FAILURE +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-34, EXPECTED_ERROR_GOT_FAILURE +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-35, EXPECTED_ERROR_GOT_FAILURE +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-36, EXPECTED_ERROR_GOT_FAILURE FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-37, EXPECTED_ERROR_GOT_RESULT FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-38, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-39, EXPECTED_ERROR_GOT_RESULT +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-39, EXPECTED_ERROR_GOT_DIFFERENT_ERROR FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-4, EXPECTED_ERROR_GOT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-40, EXPECTED_ERROR_GOT_RESULT +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-40, EXPECTED_ERROR_GOT_DIFFERENT_ERROR FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-41, EXPECTED_RESULT_GOT_DIFFERENT_RESULT FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-42, NO_RESULT_FILE FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-43, EXPECTED_RESULT_GOT_FAILURE FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-44, EXPECTED_RESULT_GOT_DIFFERENT_RESULT FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-45, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-46, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-47, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-46, EXPECTED_RESULT_GOT_ERROR +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-47, EXPECTED_RESULT_GOT_ERROR FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-48, EXPECTED_RESULT_GOT_ERROR FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-49, EXPECTED_RESULT_GOT_ERROR FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-6, EXPECTED_RESULT_GOT_DIFFERENT_RESULT FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-7, EXPECTED_ERROR_GOT_SAME_ERROR -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-8, EXPECTED_ERROR_GOT_RESULT -FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-9, EXPECTED_ERROR_GOT_RESULT +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-8, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +FLWORExpr/OrderbyExpr/OrderbyExprWithout//K2-OrderbyExprWithout-9, EXPECTED_ERROR_GOT_DIFFERENT_ERROR FLWORExpr/ReturnExpr//K2-ReturnExpr-1, EXPECTED_ERROR_GOT_DIFFERENT_ERROR FLWORExpr/WhereExpr//K2-WhereExpr-1, EXPECTED_ERROR_GOT_SAME_ERROR FLWORExpr/WhereExpr//K2-WhereExpr-2, EXPECTED_ERROR_GOT_SAME_ERROR FullAxis/ancestor-or-selfAxis//ancestorself-1, EXPECTED_ERROR_GOT_FAILURE -FullAxis/ancestor-or-selfAxis//ancestorself-10, EXPECTED_RESULT_GOT_ERROR +FullAxis/ancestor-or-selfAxis//ancestorself-10, EXPECTED_RESULT_GOT_FAILURE FullAxis/ancestor-or-selfAxis//ancestorself-11, EXPECTED_RESULT_GOT_FAILURE FullAxis/ancestor-or-selfAxis//ancestorself-12, EXPECTED_RESULT_GOT_FAILURE -FullAxis/ancestor-or-selfAxis//ancestorself-13, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestor-or-selfAxis//ancestorself-14, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestor-or-selfAxis//ancestorself-15, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestor-or-selfAxis//ancestorself-16, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestor-or-selfAxis//ancestorself-17, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestor-or-selfAxis//ancestorself-18, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestor-or-selfAxis//ancestorself-19, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestor-or-selfAxis//ancestorself-2, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestor-or-selfAxis//ancestorself-20, EXPECTED_RESULT_GOT_ERROR +FullAxis/ancestor-or-selfAxis//ancestorself-13, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestor-or-selfAxis//ancestorself-14, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestor-or-selfAxis//ancestorself-15, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestor-or-selfAxis//ancestorself-16, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestor-or-selfAxis//ancestorself-17, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestor-or-selfAxis//ancestorself-18, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestor-or-selfAxis//ancestorself-19, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestor-or-selfAxis//ancestorself-2, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestor-or-selfAxis//ancestorself-20, EXPECTED_RESULT_GOT_FAILURE FullAxis/ancestor-or-selfAxis//ancestorself-21, EXPECTED_RESULT_GOT_FAILURE -FullAxis/ancestor-or-selfAxis//ancestorself-3, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestor-or-selfAxis//ancestorself-4, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestor-or-selfAxis//ancestorself-5, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestor-or-selfAxis//ancestorself-6, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestor-or-selfAxis//ancestorself-7, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestor-or-selfAxis//ancestorself-8, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestor-or-selfAxis//ancestorself-9, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestor-or-selfAxis//unabbreviatedSyntax-11, EXPECTED_RESULT_GOT_ERROR +FullAxis/ancestor-or-selfAxis//ancestorself-3, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestor-or-selfAxis//ancestorself-4, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestor-or-selfAxis//ancestorself-5, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestor-or-selfAxis//ancestorself-6, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestor-or-selfAxis//ancestorself-7, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestor-or-selfAxis//ancestorself-8, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestor-or-selfAxis//ancestorself-9, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestor-or-selfAxis//unabbreviatedSyntax-11, EXPECTED_RESULT_GOT_FAILURE FullAxis/ancestorAxis//ancestor-1, EXPECTED_ERROR_GOT_FAILURE -FullAxis/ancestorAxis//ancestor-10, EXPECTED_RESULT_GOT_ERROR +FullAxis/ancestorAxis//ancestor-10, EXPECTED_RESULT_GOT_FAILURE FullAxis/ancestorAxis//ancestor-11, EXPECTED_RESULT_GOT_FAILURE FullAxis/ancestorAxis//ancestor-12, EXPECTED_RESULT_GOT_FAILURE -FullAxis/ancestorAxis//ancestor-13, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestorAxis//ancestor-14, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestorAxis//ancestor-15, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestorAxis//ancestor-16, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestorAxis//ancestor-17, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestorAxis//ancestor-18, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestorAxis//ancestor-19, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestorAxis//ancestor-2, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestorAxis//ancestor-20, EXPECTED_RESULT_GOT_ERROR +FullAxis/ancestorAxis//ancestor-13, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestorAxis//ancestor-14, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestorAxis//ancestor-15, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestorAxis//ancestor-16, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestorAxis//ancestor-17, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestorAxis//ancestor-18, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestorAxis//ancestor-19, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestorAxis//ancestor-2, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestorAxis//ancestor-20, EXPECTED_RESULT_GOT_FAILURE FullAxis/ancestorAxis//ancestor-21, EXPECTED_RESULT_GOT_FAILURE -FullAxis/ancestorAxis//ancestor-3, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestorAxis//ancestor-4, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestorAxis//ancestor-5, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestorAxis//ancestor-6, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestorAxis//ancestor-7, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestorAxis//ancestor-8, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestorAxis//ancestor-9, EXPECTED_RESULT_GOT_ERROR -FullAxis/ancestorAxis//unabbreviatedSyntax-10, EXPECTED_RESULT_GOT_ERROR +FullAxis/ancestorAxis//ancestor-3, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestorAxis//ancestor-4, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestorAxis//ancestor-5, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestorAxis//ancestor-6, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestorAxis//ancestor-7, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestorAxis//ancestor-8, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestorAxis//ancestor-9, EXPECTED_RESULT_GOT_FAILURE +FullAxis/ancestorAxis//unabbreviatedSyntax-10, EXPECTED_RESULT_GOT_FAILURE FullAxis/following-siblingAxis//followingsibling-1, EXPECTED_ERROR_GOT_FAILURE -FullAxis/following-siblingAxis//followingsibling-10, EXPECTED_RESULT_GOT_ERROR +FullAxis/following-siblingAxis//followingsibling-10, EXPECTED_RESULT_GOT_FAILURE FullAxis/following-siblingAxis//followingsibling-11, EXPECTED_RESULT_GOT_FAILURE FullAxis/following-siblingAxis//followingsibling-12, EXPECTED_RESULT_GOT_FAILURE -FullAxis/following-siblingAxis//followingsibling-13, EXPECTED_RESULT_GOT_ERROR -FullAxis/following-siblingAxis//followingsibling-14, EXPECTED_RESULT_GOT_ERROR -FullAxis/following-siblingAxis//followingsibling-15, EXPECTED_RESULT_GOT_ERROR -FullAxis/following-siblingAxis//followingsibling-16, EXPECTED_RESULT_GOT_ERROR -FullAxis/following-siblingAxis//followingsibling-17, EXPECTED_RESULT_GOT_ERROR -FullAxis/following-siblingAxis//followingsibling-18, EXPECTED_RESULT_GOT_ERROR -FullAxis/following-siblingAxis//followingsibling-19, EXPECTED_RESULT_GOT_ERROR -FullAxis/following-siblingAxis//followingsibling-2, EXPECTED_RESULT_GOT_ERROR -FullAxis/following-siblingAxis//followingsibling-20, EXPECTED_RESULT_GOT_ERROR +FullAxis/following-siblingAxis//followingsibling-13, EXPECTED_RESULT_GOT_FAILURE +FullAxis/following-siblingAxis//followingsibling-14, EXPECTED_RESULT_GOT_FAILURE +FullAxis/following-siblingAxis//followingsibling-15, EXPECTED_RESULT_GOT_FAILURE +FullAxis/following-siblingAxis//followingsibling-16, EXPECTED_RESULT_GOT_FAILURE +FullAxis/following-siblingAxis//followingsibling-17, EXPECTED_RESULT_GOT_FAILURE +FullAxis/following-siblingAxis//followingsibling-18, EXPECTED_RESULT_GOT_FAILURE +FullAxis/following-siblingAxis//followingsibling-19, EXPECTED_RESULT_GOT_FAILURE +FullAxis/following-siblingAxis//followingsibling-2, EXPECTED_RESULT_GOT_FAILURE +FullAxis/following-siblingAxis//followingsibling-20, EXPECTED_RESULT_GOT_FAILURE FullAxis/following-siblingAxis//followingsibling-21, EXPECTED_RESULT_GOT_FAILURE -FullAxis/following-siblingAxis//followingsibling-3, EXPECTED_RESULT_GOT_ERROR -FullAxis/following-siblingAxis//followingsibling-4, EXPECTED_RESULT_GOT_ERROR -FullAxis/following-siblingAxis//followingsibling-5, EXPECTED_RESULT_GOT_ERROR -FullAxis/following-siblingAxis//followingsibling-6, EXPECTED_RESULT_GOT_ERROR -FullAxis/following-siblingAxis//followingsibling-7, EXPECTED_RESULT_GOT_ERROR -FullAxis/following-siblingAxis//followingsibling-8, EXPECTED_RESULT_GOT_ERROR -FullAxis/following-siblingAxis//followingsibling-9, EXPECTED_RESULT_GOT_ERROR -FullAxis/following-siblingAxis//unabbreviatedSyntax-24, EXPECTED_RESULT_GOT_ERROR +FullAxis/following-siblingAxis//followingsibling-3, EXPECTED_RESULT_GOT_FAILURE +FullAxis/following-siblingAxis//followingsibling-4, EXPECTED_RESULT_GOT_FAILURE +FullAxis/following-siblingAxis//followingsibling-5, EXPECTED_RESULT_GOT_FAILURE +FullAxis/following-siblingAxis//followingsibling-6, EXPECTED_RESULT_GOT_FAILURE +FullAxis/following-siblingAxis//followingsibling-7, EXPECTED_RESULT_GOT_FAILURE +FullAxis/following-siblingAxis//followingsibling-8, EXPECTED_RESULT_GOT_FAILURE +FullAxis/following-siblingAxis//followingsibling-9, EXPECTED_RESULT_GOT_FAILURE +FullAxis/following-siblingAxis//unabbreviatedSyntax-24, EXPECTED_RESULT_GOT_FAILURE FullAxis/followingAxis//following-1, EXPECTED_ERROR_GOT_FAILURE -FullAxis/followingAxis//following-10, EXPECTED_RESULT_GOT_ERROR +FullAxis/followingAxis//following-10, EXPECTED_RESULT_GOT_FAILURE FullAxis/followingAxis//following-11, EXPECTED_RESULT_GOT_FAILURE FullAxis/followingAxis//following-12, EXPECTED_RESULT_GOT_FAILURE -FullAxis/followingAxis//following-13, EXPECTED_RESULT_GOT_ERROR -FullAxis/followingAxis//following-14, EXPECTED_RESULT_GOT_ERROR -FullAxis/followingAxis//following-15, EXPECTED_RESULT_GOT_ERROR -FullAxis/followingAxis//following-16, EXPECTED_RESULT_GOT_ERROR -FullAxis/followingAxis//following-17, EXPECTED_RESULT_GOT_ERROR -FullAxis/followingAxis//following-18, EXPECTED_RESULT_GOT_ERROR -FullAxis/followingAxis//following-19, EXPECTED_RESULT_GOT_ERROR -FullAxis/followingAxis//following-2, EXPECTED_RESULT_GOT_ERROR -FullAxis/followingAxis//following-20, EXPECTED_RESULT_GOT_ERROR +FullAxis/followingAxis//following-13, EXPECTED_RESULT_GOT_FAILURE +FullAxis/followingAxis//following-14, EXPECTED_RESULT_GOT_FAILURE +FullAxis/followingAxis//following-15, EXPECTED_RESULT_GOT_FAILURE +FullAxis/followingAxis//following-16, EXPECTED_RESULT_GOT_FAILURE +FullAxis/followingAxis//following-17, EXPECTED_RESULT_GOT_FAILURE +FullAxis/followingAxis//following-18, EXPECTED_RESULT_GOT_FAILURE +FullAxis/followingAxis//following-19, EXPECTED_RESULT_GOT_FAILURE +FullAxis/followingAxis//following-2, EXPECTED_RESULT_GOT_FAILURE +FullAxis/followingAxis//following-20, EXPECTED_RESULT_GOT_FAILURE FullAxis/followingAxis//following-21, EXPECTED_RESULT_GOT_FAILURE -FullAxis/followingAxis//following-3, EXPECTED_RESULT_GOT_ERROR -FullAxis/followingAxis//following-4, EXPECTED_RESULT_GOT_ERROR -FullAxis/followingAxis//following-5, EXPECTED_RESULT_GOT_ERROR -FullAxis/followingAxis//following-6, EXPECTED_RESULT_GOT_ERROR -FullAxis/followingAxis//following-7, EXPECTED_RESULT_GOT_ERROR -FullAxis/followingAxis//following-8, EXPECTED_RESULT_GOT_ERROR -FullAxis/followingAxis//following-9, EXPECTED_RESULT_GOT_ERROR +FullAxis/followingAxis//following-3, EXPECTED_RESULT_GOT_FAILURE +FullAxis/followingAxis//following-4, EXPECTED_RESULT_GOT_FAILURE +FullAxis/followingAxis//following-5, EXPECTED_RESULT_GOT_FAILURE +FullAxis/followingAxis//following-6, EXPECTED_RESULT_GOT_FAILURE +FullAxis/followingAxis//following-7, EXPECTED_RESULT_GOT_FAILURE +FullAxis/followingAxis//following-8, EXPECTED_RESULT_GOT_FAILURE +FullAxis/followingAxis//following-9, EXPECTED_RESULT_GOT_FAILURE FullAxis/preceding-siblingAxis//preceding-sibling-1, EXPECTED_ERROR_GOT_FAILURE -FullAxis/preceding-siblingAxis//preceding-sibling-10, EXPECTED_RESULT_GOT_ERROR +FullAxis/preceding-siblingAxis//preceding-sibling-10, EXPECTED_RESULT_GOT_FAILURE FullAxis/preceding-siblingAxis//preceding-sibling-11, EXPECTED_RESULT_GOT_FAILURE FullAxis/preceding-siblingAxis//preceding-sibling-12, EXPECTED_RESULT_GOT_FAILURE -FullAxis/preceding-siblingAxis//preceding-sibling-13, EXPECTED_RESULT_GOT_ERROR -FullAxis/preceding-siblingAxis//preceding-sibling-14, EXPECTED_RESULT_GOT_ERROR -FullAxis/preceding-siblingAxis//preceding-sibling-15, EXPECTED_RESULT_GOT_ERROR -FullAxis/preceding-siblingAxis//preceding-sibling-16, EXPECTED_RESULT_GOT_ERROR -FullAxis/preceding-siblingAxis//preceding-sibling-17, EXPECTED_RESULT_GOT_ERROR -FullAxis/preceding-siblingAxis//preceding-sibling-18, EXPECTED_RESULT_GOT_ERROR -FullAxis/preceding-siblingAxis//preceding-sibling-19, EXPECTED_RESULT_GOT_ERROR -FullAxis/preceding-siblingAxis//preceding-sibling-2, EXPECTED_RESULT_GOT_ERROR -FullAxis/preceding-siblingAxis//preceding-sibling-20, EXPECTED_RESULT_GOT_ERROR +FullAxis/preceding-siblingAxis//preceding-sibling-13, EXPECTED_RESULT_GOT_FAILURE +FullAxis/preceding-siblingAxis//preceding-sibling-14, EXPECTED_RESULT_GOT_FAILURE +FullAxis/preceding-siblingAxis//preceding-sibling-15, EXPECTED_RESULT_GOT_FAILURE +FullAxis/preceding-siblingAxis//preceding-sibling-16, EXPECTED_RESULT_GOT_FAILURE +FullAxis/preceding-siblingAxis//preceding-sibling-17, EXPECTED_RESULT_GOT_FAILURE +FullAxis/preceding-siblingAxis//preceding-sibling-18, EXPECTED_RESULT_GOT_FAILURE +FullAxis/preceding-siblingAxis//preceding-sibling-19, EXPECTED_RESULT_GOT_FAILURE +FullAxis/preceding-siblingAxis//preceding-sibling-2, EXPECTED_RESULT_GOT_FAILURE +FullAxis/preceding-siblingAxis//preceding-sibling-20, EXPECTED_RESULT_GOT_FAILURE FullAxis/preceding-siblingAxis//preceding-sibling-21, EXPECTED_RESULT_GOT_FAILURE -FullAxis/preceding-siblingAxis//preceding-sibling-3, EXPECTED_RESULT_GOT_ERROR -FullAxis/preceding-siblingAxis//preceding-sibling-4, EXPECTED_RESULT_GOT_ERROR -FullAxis/preceding-siblingAxis//preceding-sibling-5, EXPECTED_RESULT_GOT_ERROR -FullAxis/preceding-siblingAxis//preceding-sibling-6, EXPECTED_RESULT_GOT_ERROR -FullAxis/preceding-siblingAxis//preceding-sibling-7, EXPECTED_RESULT_GOT_ERROR -FullAxis/preceding-siblingAxis//preceding-sibling-8, EXPECTED_RESULT_GOT_ERROR -FullAxis/preceding-siblingAxis//preceding-sibling-9, EXPECTED_RESULT_GOT_ERROR -FullAxis/preceding-siblingAxis//unabbreviatedSyntax-25, EXPECTED_RESULT_GOT_ERROR +FullAxis/preceding-siblingAxis//preceding-sibling-3, EXPECTED_RESULT_GOT_FAILURE +FullAxis/preceding-siblingAxis//preceding-sibling-4, EXPECTED_RESULT_GOT_FAILURE +FullAxis/preceding-siblingAxis//preceding-sibling-5, EXPECTED_RESULT_GOT_FAILURE +FullAxis/preceding-siblingAxis//preceding-sibling-6, EXPECTED_RESULT_GOT_FAILURE +FullAxis/preceding-siblingAxis//preceding-sibling-7, EXPECTED_RESULT_GOT_FAILURE +FullAxis/preceding-siblingAxis//preceding-sibling-8, EXPECTED_RESULT_GOT_FAILURE +FullAxis/preceding-siblingAxis//preceding-sibling-9, EXPECTED_RESULT_GOT_FAILURE +FullAxis/preceding-siblingAxis//unabbreviatedSyntax-25, EXPECTED_RESULT_GOT_FAILURE FullAxis/precedingAxis//preceding-1, EXPECTED_ERROR_GOT_FAILURE -FullAxis/precedingAxis//preceding-10, EXPECTED_RESULT_GOT_ERROR +FullAxis/precedingAxis//preceding-10, EXPECTED_RESULT_GOT_FAILURE FullAxis/precedingAxis//preceding-11, EXPECTED_RESULT_GOT_FAILURE FullAxis/precedingAxis//preceding-12, EXPECTED_RESULT_GOT_FAILURE -FullAxis/precedingAxis//preceding-13, EXPECTED_RESULT_GOT_ERROR -FullAxis/precedingAxis//preceding-14, EXPECTED_RESULT_GOT_ERROR -FullAxis/precedingAxis//preceding-15, EXPECTED_RESULT_GOT_ERROR -FullAxis/precedingAxis//preceding-16, EXPECTED_RESULT_GOT_ERROR -FullAxis/precedingAxis//preceding-17, EXPECTED_RESULT_GOT_ERROR -FullAxis/precedingAxis//preceding-18, EXPECTED_RESULT_GOT_ERROR -FullAxis/precedingAxis//preceding-19, EXPECTED_RESULT_GOT_ERROR -FullAxis/precedingAxis//preceding-2, EXPECTED_RESULT_GOT_ERROR -FullAxis/precedingAxis//preceding-20, EXPECTED_RESULT_GOT_ERROR +FullAxis/precedingAxis//preceding-13, EXPECTED_RESULT_GOT_FAILURE +FullAxis/precedingAxis//preceding-14, EXPECTED_RESULT_GOT_FAILURE +FullAxis/precedingAxis//preceding-15, EXPECTED_RESULT_GOT_FAILURE +FullAxis/precedingAxis//preceding-16, EXPECTED_RESULT_GOT_FAILURE +FullAxis/precedingAxis//preceding-17, EXPECTED_RESULT_GOT_FAILURE +FullAxis/precedingAxis//preceding-18, EXPECTED_RESULT_GOT_FAILURE +FullAxis/precedingAxis//preceding-19, EXPECTED_RESULT_GOT_FAILURE +FullAxis/precedingAxis//preceding-2, EXPECTED_RESULT_GOT_FAILURE +FullAxis/precedingAxis//preceding-20, EXPECTED_RESULT_GOT_FAILURE FullAxis/precedingAxis//preceding-21, EXPECTED_RESULT_GOT_FAILURE FullAxis/precedingAxis//preceding-22, EXPECTED_RESULT_GOT_FAILURE FullAxis/precedingAxis//preceding-23, EXPECTED_RESULT_GOT_FAILURE -FullAxis/precedingAxis//preceding-3, EXPECTED_RESULT_GOT_ERROR -FullAxis/precedingAxis//preceding-4, EXPECTED_RESULT_GOT_ERROR -FullAxis/precedingAxis//preceding-5, EXPECTED_RESULT_GOT_ERROR -FullAxis/precedingAxis//preceding-6, EXPECTED_RESULT_GOT_ERROR -FullAxis/precedingAxis//preceding-7, EXPECTED_RESULT_GOT_ERROR -FullAxis/precedingAxis//preceding-8, EXPECTED_RESULT_GOT_ERROR -FullAxis/precedingAxis//preceding-9, EXPECTED_RESULT_GOT_ERROR +FullAxis/precedingAxis//preceding-3, EXPECTED_RESULT_GOT_FAILURE +FullAxis/precedingAxis//preceding-4, EXPECTED_RESULT_GOT_FAILURE +FullAxis/precedingAxis//preceding-5, EXPECTED_RESULT_GOT_FAILURE +FullAxis/precedingAxis//preceding-6, EXPECTED_RESULT_GOT_FAILURE +FullAxis/precedingAxis//preceding-7, EXPECTED_RESULT_GOT_FAILURE +FullAxis/precedingAxis//preceding-8, EXPECTED_RESULT_GOT_FAILURE +FullAxis/precedingAxis//preceding-9, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-fn-QName//functx-fn-QName-1, EXPECTED_RESULT_GOT_SAME_RESULT FunctX/functx-fn-QName//functx-fn-QName-2, EXPECTED_RESULT_GOT_SAME_RESULT FunctX/functx-fn-QName//functx-fn-QName-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -10806,10 +10806,10 @@ FunctX/functx-fn-avg//functx-fn-avg-3, EXPECTED_RESULT_GOT_SAME_RESULT FunctX/functx-fn-avg//functx-fn-avg-4, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-fn-avg//functx-fn-avg-5, EXPECTED_RESULT_GOT_SAME_RESULT FunctX/functx-fn-avg//functx-fn-avg-all, EXPECTED_RESULT_GOT_FAILURE -FunctX/functx-fn-base-uri//functx-fn-base-uri-1, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-fn-base-uri//functx-fn-base-uri-2, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-fn-base-uri//functx-fn-base-uri-3, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-fn-base-uri//functx-fn-base-uri-all, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-fn-base-uri//functx-fn-base-uri-1, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-fn-base-uri//functx-fn-base-uri-2, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-fn-base-uri//functx-fn-base-uri-3, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-fn-base-uri//functx-fn-base-uri-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-fn-boolean//functx-fn-boolean-1, EXPECTED_RESULT_GOT_SAME_RESULT FunctX/functx-fn-boolean//functx-fn-boolean-2, EXPECTED_RESULT_GOT_SAME_RESULT FunctX/functx-fn-boolean//functx-fn-boolean-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -10924,8 +10924,8 @@ FunctX/functx-fn-false//functx-fn-false-1, EXPECTED_RESULT_GOT_SAME_RESULT FunctX/functx-fn-floor//functx-fn-floor-1, EXPECTED_RESULT_GOT_SAME_RESULT FunctX/functx-fn-floor//functx-fn-floor-2, EXPECTED_RESULT_GOT_SAME_RESULT FunctX/functx-fn-floor//functx-fn-floor-3, EXPECTED_RESULT_GOT_SAME_RESULT -FunctX/functx-fn-floor//functx-fn-floor-4, EXPECTED_RESULT_GOT_SAME_RESULT -FunctX/functx-fn-floor//functx-fn-floor-5, EXPECTED_RESULT_GOT_SAME_RESULT +FunctX/functx-fn-floor//functx-fn-floor-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +FunctX/functx-fn-floor//functx-fn-floor-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT FunctX/functx-fn-floor//functx-fn-floor-6, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-fn-floor//functx-fn-floor-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-fn-hours-from-dateTime//functx-fn-hours-from-dateTime-1, EXPECTED_RESULT_GOT_SAME_RESULT @@ -11043,11 +11043,11 @@ FunctX/functx-fn-namespace-uri//functx-fn-namespace-uri-3, EXPECTED_RESULT_GOT_E FunctX/functx-fn-namespace-uri//functx-fn-namespace-uri-4, EXPECTED_RESULT_GOT_ERROR FunctX/functx-fn-namespace-uri//functx-fn-namespace-uri-5, EXPECTED_RESULT_GOT_ERROR FunctX/functx-fn-namespace-uri//functx-fn-namespace-uri-all, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-fn-nilled//functx-fn-nilled-1, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-fn-nilled//functx-fn-nilled-2, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-fn-nilled//functx-fn-nilled-3, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-fn-nilled//functx-fn-nilled-4, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-fn-nilled//functx-fn-nilled-all, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-fn-nilled//functx-fn-nilled-1, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-fn-nilled//functx-fn-nilled-2, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-fn-nilled//functx-fn-nilled-3, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-fn-nilled//functx-fn-nilled-4, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-fn-nilled//functx-fn-nilled-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-fn-node-name//functx-fn-node-name-1, EXPECTED_RESULT_GOT_ERROR FunctX/functx-fn-node-name//functx-fn-node-name-2, EXPECTED_RESULT_GOT_ERROR FunctX/functx-fn-node-name//functx-fn-node-name-3, EXPECTED_RESULT_GOT_ERROR @@ -11077,7 +11077,7 @@ FunctX/functx-fn-not//functx-fn-not-7, EXPECTED_RESULT_GOT_ERROR FunctX/functx-fn-not//functx-fn-not-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-fn-number//functx-fn-number-1, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-fn-number//functx-fn-number-2, EXPECTED_RESULT_GOT_FAILURE -FunctX/functx-fn-number//functx-fn-number-3, EXPECTED_RESULT_GOT_SAME_RESULT +FunctX/functx-fn-number//functx-fn-number-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT FunctX/functx-fn-number//functx-fn-number-4, EXPECTED_RESULT_GOT_SAME_RESULT FunctX/functx-fn-number//functx-fn-number-5, EXPECTED_RESULT_GOT_SAME_RESULT FunctX/functx-fn-number//functx-fn-number-6, EXPECTED_RESULT_GOT_FAILURE @@ -11086,8 +11086,8 @@ FunctX/functx-fn-one-or-more//functx-fn-one-or-more-1, EXPECTED_RESULT_GOT_SAME_ FunctX/functx-fn-one-or-more//functx-fn-one-or-more-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT FunctX/functx-fn-one-or-more//functx-fn-one-or-more-all, EXPECTED_RESULT_GOT_DIFFERENT_RESULT FunctX/functx-fn-position//functx-fn-position-1, EXPECTED_RESULT_GOT_FAILURE -FunctX/functx-fn-position//functx-fn-position-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -FunctX/functx-fn-position//functx-fn-position-3, EXPECTED_RESULT_GOT_SAME_RESULT +FunctX/functx-fn-position//functx-fn-position-2, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-fn-position//functx-fn-position-3, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-fn-position//functx-fn-position-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-fn-prefix-from-QName//functx-fn-prefix-from-QName-1, EXPECTED_RESULT_GOT_ERROR FunctX/functx-fn-prefix-from-QName//functx-fn-prefix-from-QName-2, EXPECTED_RESULT_GOT_ERROR @@ -11134,10 +11134,10 @@ FunctX/functx-fn-reverse//functx-fn-reverse-1, EXPECTED_RESULT_GOT_DIFFERENT_RES FunctX/functx-fn-reverse//functx-fn-reverse-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT FunctX/functx-fn-reverse//functx-fn-reverse-3, EXPECTED_RESULT_GOT_SAME_RESULT FunctX/functx-fn-reverse//functx-fn-reverse-all, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -FunctX/functx-fn-root//functx-fn-root-1, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-fn-root//functx-fn-root-1, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-fn-root//functx-fn-root-2, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-fn-root//functx-fn-root-all, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-fn-round-half-to-even//functx-fn-round-half-to-even-1, EXPECTED_RESULT_GOT_SAME_RESULT +FunctX/functx-fn-root//functx-fn-root-all, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-fn-round-half-to-even//functx-fn-round-half-to-even-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT FunctX/functx-fn-round-half-to-even//functx-fn-round-half-to-even-2, EXPECTED_RESULT_GOT_SAME_RESULT FunctX/functx-fn-round-half-to-even//functx-fn-round-half-to-even-3, EXPECTED_RESULT_GOT_SAME_RESULT FunctX/functx-fn-round-half-to-even//functx-fn-round-half-to-even-4, EXPECTED_RESULT_GOT_SAME_RESULT @@ -11297,8 +11297,8 @@ FunctX/functx-functx-all-whitespace//functx-functx-all-whitespace-2, EXPECTED_RE FunctX/functx-functx-all-whitespace//functx-functx-all-whitespace-3, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-all-whitespace//functx-functx-all-whitespace-4, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-all-whitespace//functx-functx-all-whitespace-5, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-all-whitespace//functx-functx-all-whitespace-6, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-all-whitespace//functx-functx-all-whitespace-all, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-all-whitespace//functx-functx-all-whitespace-6, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-all-whitespace//functx-functx-all-whitespace-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-are-distinct-values//functx-functx-are-distinct-values-1, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-are-distinct-values//functx-functx-are-distinct-values-2, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-are-distinct-values//functx-functx-are-distinct-values-3, EXPECTED_RESULT_GOT_ERROR @@ -11392,20 +11392,20 @@ FunctX/functx-functx-ddmmyyyy-to-date//functx-functx-ddmmyyyy-to-date-2, EXPECTE FunctX/functx-functx-ddmmyyyy-to-date//functx-functx-ddmmyyyy-to-date-3, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-ddmmyyyy-to-date//functx-functx-ddmmyyyy-to-date-all, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-depth-of-node//functx-functx-depth-of-node-1, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-depth-of-node//functx-functx-depth-of-node-2, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-depth-of-node//functx-functx-depth-of-node-3, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-depth-of-node//functx-functx-depth-of-node-all, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-depth-of-node//functx-functx-depth-of-node-2, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-depth-of-node//functx-functx-depth-of-node-3, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-depth-of-node//functx-functx-depth-of-node-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-distinct-attribute-names//functx-functx-distinct-attribute-names-1, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-distinct-deep//functx-functx-distinct-deep-1, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-distinct-deep//functx-functx-distinct-deep-2, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-distinct-deep//functx-functx-distinct-deep-3, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-distinct-deep//functx-functx-distinct-deep-all, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-distinct-element-names//functx-functx-distinct-element-names-1, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-distinct-element-names//functx-functx-distinct-element-names-2, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-distinct-element-names//functx-functx-distinct-element-names-all, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-distinct-element-names//functx-functx-distinct-element-names-2, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-distinct-element-names//functx-functx-distinct-element-names-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-distinct-element-paths//functx-functx-distinct-element-paths-1, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-distinct-element-paths//functx-functx-distinct-element-paths-2, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-distinct-element-paths//functx-functx-distinct-element-paths-all, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-distinct-element-paths//functx-functx-distinct-element-paths-2, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-distinct-element-paths//functx-functx-distinct-element-paths-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-distinct-nodes//functx-functx-distinct-nodes-1, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-distinct-nodes//functx-functx-distinct-nodes-2, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-distinct-nodes//functx-functx-distinct-nodes-all, EXPECTED_RESULT_GOT_FAILURE @@ -11436,10 +11436,10 @@ FunctX/functx-functx-first-day-of-year//functx-functx-first-day-of-year-all, EXP FunctX/functx-functx-first-node//functx-functx-first-node-1, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-first-node//functx-functx-first-node-2, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-first-node//functx-functx-first-node-all, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-follows-not-descendant//functx-functx-follows-not-descendant-1, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-follows-not-descendant//functx-functx-follows-not-descendant-2, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-follows-not-descendant//functx-functx-follows-not-descendant-3, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-follows-not-descendant//functx-functx-follows-not-descendant-all, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-follows-not-descendant//functx-functx-follows-not-descendant-1, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-follows-not-descendant//functx-functx-follows-not-descendant-2, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-follows-not-descendant//functx-functx-follows-not-descendant-3, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-follows-not-descendant//functx-functx-follows-not-descendant-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-format-as-title-en//functx-functx-format-as-title-en-1, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-fragment-from-uri//functx-functx-fragment-from-uri-1, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-fragment-from-uri//functx-functx-fragment-from-uri-2, EXPECTED_RESULT_GOT_ERROR @@ -11485,22 +11485,22 @@ FunctX/functx-functx-has-simple-content//functx-functx-has-simple-content-4, EXP FunctX/functx-functx-has-simple-content//functx-functx-has-simple-content-5, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-has-simple-content//functx-functx-has-simple-content-6, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-has-simple-content//functx-functx-has-simple-content-all, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-id-from-element//functx-functx-id-from-element-1, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-id-from-element//functx-functx-id-from-element-1, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-id-untyped//functx-functx-id-untyped-1, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-id-untyped//functx-functx-id-untyped-2, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-id-untyped//functx-functx-id-untyped-3, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-id-untyped//functx-functx-id-untyped-all, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-if-absent//functx-functx-if-absent-1, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-if-absent//functx-functx-if-absent-2, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-if-absent//functx-functx-if-absent-3, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-if-absent//functx-functx-if-absent-all, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-if-empty//functx-functx-if-empty-1, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-if-empty//functx-functx-if-empty-2, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-if-empty//functx-functx-if-empty-3, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-if-empty//functx-functx-if-empty-4, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-if-empty//functx-functx-if-empty-5, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-if-empty//functx-functx-if-empty-6, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-if-empty//functx-functx-if-empty-all, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-if-absent//functx-functx-if-absent-1, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-if-absent//functx-functx-if-absent-2, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-if-absent//functx-functx-if-absent-3, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-if-absent//functx-functx-if-absent-all, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-if-empty//functx-functx-if-empty-1, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-if-empty//functx-functx-if-empty-2, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-if-empty//functx-functx-if-empty-3, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-if-empty//functx-functx-if-empty-4, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-if-empty//functx-functx-if-empty-5, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-if-empty//functx-functx-if-empty-6, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-if-empty//functx-functx-if-empty-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-index-of-deep-equal-node//functx-functx-index-of-deep-equal-node-1, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-index-of-deep-equal-node//functx-functx-index-of-deep-equal-node-2, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-index-of-deep-equal-node//functx-functx-index-of-deep-equal-node-3, EXPECTED_RESULT_GOT_ERROR @@ -11511,10 +11511,10 @@ FunctX/functx-functx-index-of-match-first//functx-functx-index-of-match-first-3, FunctX/functx-functx-index-of-match-first//functx-functx-index-of-match-first-4, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-index-of-match-first//functx-functx-index-of-match-first-5, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-index-of-match-first//functx-functx-index-of-match-first-all, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-index-of-node//functx-functx-index-of-node-1, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-index-of-node//functx-functx-index-of-node-2, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-index-of-node//functx-functx-index-of-node-3, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-index-of-node//functx-functx-index-of-node-all, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-index-of-node//functx-functx-index-of-node-1, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-index-of-node//functx-functx-index-of-node-2, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-index-of-node//functx-functx-index-of-node-3, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-index-of-node//functx-functx-index-of-node-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-index-of-string-first//functx-functx-index-of-string-first-1, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-index-of-string-first//functx-functx-index-of-string-first-2, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-index-of-string-first//functx-functx-index-of-string-first-3, EXPECTED_RESULT_GOT_ERROR @@ -11547,38 +11547,38 @@ FunctX/functx-functx-is-absolute-uri//functx-functx-is-absolute-uri-3, EXPECTED_ FunctX/functx-functx-is-absolute-uri//functx-functx-is-absolute-uri-4, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-is-absolute-uri//functx-functx-is-absolute-uri-5, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-is-absolute-uri//functx-functx-is-absolute-uri-all, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-ancestor//functx-functx-is-ancestor-1, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-ancestor//functx-functx-is-ancestor-2, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-ancestor//functx-functx-is-ancestor-3, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-ancestor//functx-functx-is-ancestor-4, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-ancestor//functx-functx-is-ancestor-all, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-descendant//functx-functx-is-descendant-1, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-descendant//functx-functx-is-descendant-2, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-descendant//functx-functx-is-descendant-3, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-descendant//functx-functx-is-descendant-4, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-descendant//functx-functx-is-descendant-all, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-is-ancestor//functx-functx-is-ancestor-1, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-is-ancestor//functx-functx-is-ancestor-2, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-is-ancestor//functx-functx-is-ancestor-3, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-is-ancestor//functx-functx-is-ancestor-4, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-is-ancestor//functx-functx-is-ancestor-all, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-is-descendant//functx-functx-is-descendant-1, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-is-descendant//functx-functx-is-descendant-2, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-is-descendant//functx-functx-is-descendant-3, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-is-descendant//functx-functx-is-descendant-4, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-is-descendant//functx-functx-is-descendant-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-is-leap-year//functx-functx-is-leap-year-1, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-is-leap-year//functx-functx-is-leap-year-2, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-is-leap-year//functx-functx-is-leap-year-3, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-is-leap-year//functx-functx-is-leap-year-all, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-node-among-descendants-deep-equal//functx-functx-is-node-among-descendants-deep-equal-1, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-is-node-among-descendants-deep-equal//functx-functx-is-node-among-descendants-deep-equal-1, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-is-node-among-descendants-deep-equal//functx-functx-is-node-among-descendants-deep-equal-2, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-is-node-among-descendants-deep-equal//functx-functx-is-node-among-descendants-deep-equal-3, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-is-node-among-descendants-deep-equal//functx-functx-is-node-among-descendants-deep-equal-4, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-node-among-descendants-deep-equal//functx-functx-is-node-among-descendants-deep-equal-all, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-node-among-descendants//functx-functx-is-node-among-descendants-1, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-node-among-descendants//functx-functx-is-node-among-descendants-2, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-is-node-among-descendants-deep-equal//functx-functx-is-node-among-descendants-deep-equal-all, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-is-node-among-descendants//functx-functx-is-node-among-descendants-1, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-is-node-among-descendants//functx-functx-is-node-among-descendants-2, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-is-node-among-descendants//functx-functx-is-node-among-descendants-3, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-is-node-among-descendants//functx-functx-is-node-among-descendants-4, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-node-among-descendants//functx-functx-is-node-among-descendants-all, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-node-in-sequence-deep-equal//functx-functx-is-node-in-sequence-deep-equal-1, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-is-node-among-descendants//functx-functx-is-node-among-descendants-all, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-is-node-in-sequence-deep-equal//functx-functx-is-node-in-sequence-deep-equal-1, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-is-node-in-sequence-deep-equal//functx-functx-is-node-in-sequence-deep-equal-2, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-node-in-sequence-deep-equal//functx-functx-is-node-in-sequence-deep-equal-3, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-node-in-sequence-deep-equal//functx-functx-is-node-in-sequence-deep-equal-all, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-node-in-sequence//functx-functx-is-node-in-sequence-1, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-node-in-sequence//functx-functx-is-node-in-sequence-2, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-is-node-in-sequence-deep-equal//functx-functx-is-node-in-sequence-deep-equal-3, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-is-node-in-sequence-deep-equal//functx-functx-is-node-in-sequence-deep-equal-all, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-is-node-in-sequence//functx-functx-is-node-in-sequence-1, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-is-node-in-sequence//functx-functx-is-node-in-sequence-2, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-is-node-in-sequence//functx-functx-is-node-in-sequence-3, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-is-node-in-sequence//functx-functx-is-node-in-sequence-all, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-is-node-in-sequence//functx-functx-is-node-in-sequence-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-is-value-in-sequence//functx-functx-is-value-in-sequence-1, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-is-value-in-sequence//functx-functx-is-value-in-sequence-2, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-is-value-in-sequence//functx-functx-is-value-in-sequence-3, EXPECTED_RESULT_GOT_ERROR @@ -11595,8 +11595,8 @@ FunctX/functx-functx-last-node//functx-functx-last-node-1, EXPECTED_RESULT_GOT_E FunctX/functx-functx-last-node//functx-functx-last-node-2, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-last-node//functx-functx-last-node-all, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-leaf-elements//functx-functx-leaf-elements-1, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-leaf-elements//functx-functx-leaf-elements-2, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-leaf-elements//functx-functx-leaf-elements-all, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-leaf-elements//functx-functx-leaf-elements-2, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-leaf-elements//functx-functx-leaf-elements-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-left-trim//functx-functx-left-trim-1, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-left-trim//functx-functx-left-trim-2, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-left-trim//functx-functx-left-trim-3, EXPECTED_RESULT_GOT_ERROR @@ -11608,8 +11608,8 @@ FunctX/functx-functx-lines//functx-functx-lines-1, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-lines//functx-functx-lines-2, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-lines//functx-functx-lines-all, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-max-depth//functx-functx-max-depth-1, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-max-depth//functx-functx-max-depth-2, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-max-depth//functx-functx-max-depth-all, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-max-depth//functx-functx-max-depth-2, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-max-depth//functx-functx-max-depth-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-max-determine-type//functx-functx-max-determine-type-1, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-max-determine-type//functx-functx-max-determine-type-2, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-max-determine-type//functx-functx-max-determine-type-3, EXPECTED_RESULT_GOT_ERROR @@ -11678,16 +11678,16 @@ FunctX/functx-functx-pad-string-to-length//functx-functx-pad-string-to-length-1, FunctX/functx-functx-pad-string-to-length//functx-functx-pad-string-to-length-2, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-pad-string-to-length//functx-functx-pad-string-to-length-3, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-pad-string-to-length//functx-functx-pad-string-to-length-all, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-path-to-node-with-pos//functx-functx-path-to-node-with-pos-1, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-path-to-node-with-pos//functx-functx-path-to-node-with-pos-1, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-path-to-node-with-pos//functx-functx-path-to-node-with-pos-2, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-path-to-node-with-pos//functx-functx-path-to-node-with-pos-all, EXPECTED_RESULT_GOT_FAILURE -FunctX/functx-functx-path-to-node//functx-functx-path-to-node-1, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-path-to-node//functx-functx-path-to-node-1, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-path-to-node//functx-functx-path-to-node-2, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-path-to-node//functx-functx-path-to-node-all, EXPECTED_RESULT_GOT_FAILURE -FunctX/functx-functx-precedes-not-ancestor//functx-functx-precedes-not-ancestor-1, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-precedes-not-ancestor//functx-functx-precedes-not-ancestor-2, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-precedes-not-ancestor//functx-functx-precedes-not-ancestor-3, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-precedes-not-ancestor//functx-functx-precedes-not-ancestor-all, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-precedes-not-ancestor//functx-functx-precedes-not-ancestor-1, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-precedes-not-ancestor//functx-functx-precedes-not-ancestor-2, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-precedes-not-ancestor//functx-functx-precedes-not-ancestor-3, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-precedes-not-ancestor//functx-functx-precedes-not-ancestor-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-previous-day//functx-functx-previous-day-1, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-previous-day//functx-functx-previous-day-2, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-previous-day//functx-functx-previous-day-all, EXPECTED_RESULT_GOT_ERROR @@ -11746,16 +11746,16 @@ FunctX/functx-functx-scheme-from-uri//functx-functx-scheme-from-uri-4, EXPECTED_ FunctX/functx-functx-scheme-from-uri//functx-functx-scheme-from-uri-5, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-scheme-from-uri//functx-functx-scheme-from-uri-all, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-sequence-deep-equal//functx-functx-sequence-deep-equal-1, EXPECTED_RESULT_GOT_FAILURE -FunctX/functx-functx-sequence-deep-equal//functx-functx-sequence-deep-equal-2, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-sequence-deep-equal//functx-functx-sequence-deep-equal-2, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-sequence-deep-equal//functx-functx-sequence-deep-equal-3, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-sequence-deep-equal//functx-functx-sequence-deep-equal-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-sequence-node-equal-any-order//functx-functx-sequence-node-equal-any-order-1, EXPECTED_RESULT_GOT_FAILURE -FunctX/functx-functx-sequence-node-equal-any-order//functx-functx-sequence-node-equal-any-order-2, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-sequence-node-equal-any-order//functx-functx-sequence-node-equal-any-order-3, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-sequence-node-equal-any-order//functx-functx-sequence-node-equal-any-order-2, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-sequence-node-equal-any-order//functx-functx-sequence-node-equal-any-order-3, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-sequence-node-equal-any-order//functx-functx-sequence-node-equal-any-order-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-sequence-node-equal//functx-functx-sequence-node-equal-1, EXPECTED_RESULT_GOT_FAILURE -FunctX/functx-functx-sequence-node-equal//functx-functx-sequence-node-equal-2, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-sequence-node-equal//functx-functx-sequence-node-equal-3, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-sequence-node-equal//functx-functx-sequence-node-equal-2, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-sequence-node-equal//functx-functx-sequence-node-equal-3, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-sequence-node-equal//functx-functx-sequence-node-equal-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-sequence-type//functx-functx-sequence-type-1, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-sequence-type//functx-functx-sequence-type-10, EXPECTED_RESULT_GOT_FAILURE @@ -11769,12 +11769,12 @@ FunctX/functx-functx-sequence-type//functx-functx-sequence-type-7, EXPECTED_RESU FunctX/functx-functx-sequence-type//functx-functx-sequence-type-8, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-sequence-type//functx-functx-sequence-type-9, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-sequence-type//functx-functx-sequence-type-all, EXPECTED_RESULT_GOT_FAILURE -FunctX/functx-functx-siblings-same-name//functx-functx-siblings-same-name-1, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-siblings-same-name//functx-functx-siblings-same-name-2, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-siblings-same-name//functx-functx-siblings-same-name-all, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-siblings//functx-functx-siblings-1, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-siblings//functx-functx-siblings-2, EXPECTED_RESULT_GOT_ERROR -FunctX/functx-functx-siblings//functx-functx-siblings-all, EXPECTED_RESULT_GOT_ERROR +FunctX/functx-functx-siblings-same-name//functx-functx-siblings-same-name-1, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-siblings-same-name//functx-functx-siblings-same-name-2, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-siblings-same-name//functx-functx-siblings-same-name-all, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-siblings//functx-functx-siblings-1, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-siblings//functx-functx-siblings-2, EXPECTED_RESULT_GOT_FAILURE +FunctX/functx-functx-siblings//functx-functx-siblings-all, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-sort-as-numeric//functx-functx-sort-as-numeric-1, EXPECTED_RESULT_GOT_ERROR FunctX/functx-functx-sort-as-numeric//functx-functx-sort-as-numeric-2, EXPECTED_RESULT_GOT_FAILURE FunctX/functx-functx-sort-as-numeric//functx-functx-sort-as-numeric-all, EXPECTED_RESULT_GOT_FAILURE @@ -11968,15 +11968,15 @@ Functions/AccessorFunc/DataFunc//K-DataFunc-4, EXPECTED_RESULT_GOT_SAME_RESULT Functions/AccessorFunc/DataFunc//K2-DataFunc-1, EXPECTED_ERROR_GOT_SAME_ERROR Functions/AccessorFunc/DataFunc//K2-DataFunc-2, EXPECTED_ERROR_GOT_SAME_ERROR Functions/AccessorFunc/DataFunc//fn-datacomplextype-1, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Functions/AccessorFunc/DataFunc//fn-datadbl1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/AccessorFunc/DataFunc//fn-datadbl1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/AccessorFunc/DataFunc//fn-datadbl1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AccessorFunc/DataFunc//fn-datadbl1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/AccessorFunc/DataFunc//fn-datadbl1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/AccessorFunc/DataFunc//fn-datadec1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/AccessorFunc/DataFunc//fn-datadec1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/AccessorFunc/DataFunc//fn-datadec1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AccessorFunc/DataFunc//fn-dataflt1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/AccessorFunc/DataFunc//fn-dataflt1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/AccessorFunc/DataFunc//fn-dataflt1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AccessorFunc/DataFunc//fn-dataflt1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/AccessorFunc/DataFunc//fn-dataflt1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/AccessorFunc/DataFunc//fn-dataint1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/AccessorFunc/DataFunc//fn-dataint1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/AccessorFunc/DataFunc//fn-dataint1args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -12025,8 +12025,8 @@ Functions/AccessorFunc/DocumentURIFunc//fn-document-uri-1, EXPECTED_ERROR_GOT_SA Functions/AccessorFunc/DocumentURIFunc//fn-document-uri-10, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/DocumentURIFunc//fn-document-uri-11, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/DocumentURIFunc//fn-document-uri-12, EXPECTED_RESULT_GOT_ERROR -Functions/AccessorFunc/DocumentURIFunc//fn-document-uri-13, EXPECTED_RESULT_GOT_ERROR -Functions/AccessorFunc/DocumentURIFunc//fn-document-uri-14, EXPECTED_RESULT_GOT_ERROR +Functions/AccessorFunc/DocumentURIFunc//fn-document-uri-13, EXPECTED_RESULT_GOT_FAILURE +Functions/AccessorFunc/DocumentURIFunc//fn-document-uri-14, EXPECTED_RESULT_GOT_FAILURE Functions/AccessorFunc/DocumentURIFunc//fn-document-uri-15, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/DocumentURIFunc//fn-document-uri-16, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/DocumentURIFunc//fn-document-uri-17, EXPECTED_RESULT_GOT_ERROR @@ -12057,11 +12057,11 @@ Functions/AccessorFunc/NilledFunc//fn-nilled-16, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/NilledFunc//fn-nilled-17, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/NilledFunc//fn-nilled-18, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/NilledFunc//fn-nilled-19, EXPECTED_RESULT_GOT_ERROR -Functions/AccessorFunc/NilledFunc//fn-nilled-2, EXPECTED_RESULT_GOT_ERROR +Functions/AccessorFunc/NilledFunc//fn-nilled-2, EXPECTED_RESULT_GOT_FAILURE Functions/AccessorFunc/NilledFunc//fn-nilled-20, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/NilledFunc//fn-nilled-21, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/NilledFunc//fn-nilled-22, EXPECTED_RESULT_GOT_ERROR -Functions/AccessorFunc/NilledFunc//fn-nilled-3, EXPECTED_RESULT_GOT_ERROR +Functions/AccessorFunc/NilledFunc//fn-nilled-3, EXPECTED_RESULT_GOT_FAILURE Functions/AccessorFunc/NilledFunc//fn-nilled-4, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/NilledFunc//fn-nilled-5, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/NilledFunc//fn-nilled-6, EXPECTED_RESULT_GOT_ERROR @@ -12085,13 +12085,13 @@ Functions/AccessorFunc/NodeNameFunc//fn-node-name-16, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/NodeNameFunc//fn-node-name-17, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/NodeNameFunc//fn-node-name-18, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/NodeNameFunc//fn-node-name-19, EXPECTED_RESULT_GOT_ERROR -Functions/AccessorFunc/NodeNameFunc//fn-node-name-2, EXPECTED_RESULT_GOT_ERROR +Functions/AccessorFunc/NodeNameFunc//fn-node-name-2, EXPECTED_RESULT_GOT_FAILURE Functions/AccessorFunc/NodeNameFunc//fn-node-name-20, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/NodeNameFunc//fn-node-name-21, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/NodeNameFunc//fn-node-name-22, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/NodeNameFunc//fn-node-name-23, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/NodeNameFunc//fn-node-name-24, EXPECTED_ERROR_GOT_SAME_ERROR -Functions/AccessorFunc/NodeNameFunc//fn-node-name-3, EXPECTED_RESULT_GOT_ERROR +Functions/AccessorFunc/NodeNameFunc//fn-node-name-3, EXPECTED_RESULT_GOT_FAILURE Functions/AccessorFunc/NodeNameFunc//fn-node-name-4, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/NodeNameFunc//fn-node-name-5, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/NodeNameFunc//fn-node-name-6, EXPECTED_RESULT_GOT_ERROR @@ -12124,15 +12124,15 @@ Functions/AccessorFunc/StringFunc//K-StringFunc-6, EXPECTED_ERROR_GOT_DIFFERENT_ Functions/AccessorFunc/StringFunc//fn-string-1, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/AccessorFunc/StringFunc//fn-string-2, EXPECTED_RESULT_GOT_ERROR Functions/AccessorFunc/StringFunc//fn-string-3, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Functions/AccessorFunc/StringFunc//fn-stringdbl1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/AccessorFunc/StringFunc//fn-stringdbl1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/AccessorFunc/StringFunc//fn-stringdbl1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AccessorFunc/StringFunc//fn-stringdbl1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/AccessorFunc/StringFunc//fn-stringdbl1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/AccessorFunc/StringFunc//fn-stringdec1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/AccessorFunc/StringFunc//fn-stringdec1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/AccessorFunc/StringFunc//fn-stringdec1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AccessorFunc/StringFunc//fn-stringflt1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/AccessorFunc/StringFunc//fn-stringflt1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/AccessorFunc/StringFunc//fn-stringflt1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AccessorFunc/StringFunc//fn-stringflt1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/AccessorFunc/StringFunc//fn-stringflt1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/AccessorFunc/StringFunc//fn-stringint1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/AccessorFunc/StringFunc//fn-stringint1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/AccessorFunc/StringFunc//fn-stringint1args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -12217,15 +12217,15 @@ Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCod Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-11, EXPECTED_RESULT_GOT_SAME_RESULT Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-12, EXPECTED_RESULT_GOT_ERROR Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-13, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-14, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-15, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-16, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-17, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-18, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-19, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-14, EXPECTED_RESULT_GOT_FAILURE +Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-15, EXPECTED_RESULT_GOT_FAILURE +Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-16, EXPECTED_RESULT_GOT_FAILURE +Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-17, EXPECTED_RESULT_GOT_FAILURE +Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-18, EXPECTED_RESULT_GOT_FAILURE +Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-19, EXPECTED_RESULT_GOT_FAILURE Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-2, EXPECTED_ERROR_GOT_SAME_ERROR -Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-20, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-21, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-20, EXPECTED_RESULT_GOT_FAILURE +Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-21, EXPECTED_RESULT_GOT_FAILURE Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-3, EXPECTED_RESULT_GOT_SAME_RESULT Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-4, EXPECTED_RESULT_GOT_SAME_RESULT Functions/AllStringFunc/AssDisassStringFunc/StringToCodepointFunc//K-StringToCodepointFunc-5, EXPECTED_RESULT_GOT_SAME_RESULT @@ -12446,21 +12446,21 @@ Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concat-6, EXPECTED_RESU Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concat-7, EXPECTED_RESULT_GOT_SAME_RESULT Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concat-8, EXPECTED_RESULT_GOT_SAME_RESULT Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concat-9, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatdbl2args-1, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatdbl2args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatdbl2args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatdbl2args-4, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatdbl2args-5, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatdbl2args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatdbl2args-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatdbl2args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatdbl2args-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatdbl2args-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatdec2args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatdec2args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatdec2args-3, EXPECTED_RESULT_GOT_SAME_RESULT Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatdec2args-4, EXPECTED_RESULT_GOT_SAME_RESULT Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatdec2args-5, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatflt2args-1, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatflt2args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatflt2args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatflt2args-4, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatflt2args-5, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatflt2args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatflt2args-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatflt2args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatflt2args-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatflt2args-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatint2args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatint2args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/AllStringFunc/GeneralStringFunc/ConcatFunc//fn-concatint2args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -12516,17 +12516,17 @@ Functions/AllStringFunc/GeneralStringFunc/EncodeURIfunc//K-EncodeURIfunc-2, EXPE Functions/AllStringFunc/GeneralStringFunc/EncodeURIfunc//K-EncodeURIfunc-3, EXPECTED_RESULT_GOT_ERROR Functions/AllStringFunc/GeneralStringFunc/EncodeURIfunc//K-EncodeURIfunc-4, EXPECTED_RESULT_GOT_ERROR Functions/AllStringFunc/GeneralStringFunc/EncodeURIfunc//K-EncodeURIfunc-5, EXPECTED_RESULT_GOT_ERROR -Functions/AllStringFunc/GeneralStringFunc/EncodeURIfunc//K-EncodeURIfunc-6, EXPECTED_RESULT_GOT_ERROR +Functions/AllStringFunc/GeneralStringFunc/EncodeURIfunc//K-EncodeURIfunc-6, EXPECTED_RESULT_GOT_FAILURE Functions/AllStringFunc/GeneralStringFunc/EscapeHTMLURIFunc//K-EscapeHTMLURIFunc-1, EXPECTED_ERROR_GOT_SAME_ERROR Functions/AllStringFunc/GeneralStringFunc/EscapeHTMLURIFunc//K-EscapeHTMLURIFunc-2, EXPECTED_ERROR_GOT_SAME_ERROR Functions/AllStringFunc/GeneralStringFunc/EscapeHTMLURIFunc//K-EscapeHTMLURIFunc-3, EXPECTED_RESULT_GOT_ERROR Functions/AllStringFunc/GeneralStringFunc/EscapeHTMLURIFunc//K-EscapeHTMLURIFunc-4, EXPECTED_RESULT_GOT_ERROR Functions/AllStringFunc/GeneralStringFunc/EscapeHTMLURIFunc//K-EscapeHTMLURIFunc-5, EXPECTED_RESULT_GOT_ERROR -Functions/AllStringFunc/GeneralStringFunc/EscapeHTMLURIFunc//K-EscapeHTMLURIFunc-6, EXPECTED_RESULT_GOT_ERROR +Functions/AllStringFunc/GeneralStringFunc/EscapeHTMLURIFunc//K-EscapeHTMLURIFunc-6, EXPECTED_RESULT_GOT_FAILURE Functions/AllStringFunc/GeneralStringFunc/IRIToURIfunc//K-IRIToURIfunc-1, EXPECTED_ERROR_GOT_SAME_ERROR Functions/AllStringFunc/GeneralStringFunc/IRIToURIfunc//K-IRIToURIfunc-2, EXPECTED_ERROR_GOT_SAME_ERROR Functions/AllStringFunc/GeneralStringFunc/IRIToURIfunc//K-IRIToURIfunc-3, EXPECTED_RESULT_GOT_ERROR -Functions/AllStringFunc/GeneralStringFunc/IRIToURIfunc//K-IRIToURIfunc-4, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +Functions/AllStringFunc/GeneralStringFunc/IRIToURIfunc//K-IRIToURIfunc-4, EXPECTED_ERROR_GOT_FAILURE Functions/AllStringFunc/GeneralStringFunc/IRIToURIfunc//K2-IRIToURIfunc-1, EXPECTED_ERROR_GOT_SAME_ERROR Functions/AllStringFunc/GeneralStringFunc/IRIToURIfunc//K2-IRIToURIfunc-10, EXPECTED_RESULT_GOT_ERROR Functions/AllStringFunc/GeneralStringFunc/IRIToURIfunc//K2-IRIToURIfunc-2, EXPECTED_ERROR_GOT_SAME_ERROR @@ -12569,7 +12569,7 @@ Functions/AllStringFunc/GeneralStringFunc/NormalizeSpaceFunc//K-NormalizeSpaceFu Functions/AllStringFunc/GeneralStringFunc/NormalizeSpaceFunc//K-NormalizeSpaceFunc-6, EXPECTED_RESULT_GOT_ERROR Functions/AllStringFunc/GeneralStringFunc/NormalizeSpaceFunc//K-NormalizeSpaceFunc-7, EXPECTED_RESULT_GOT_ERROR Functions/AllStringFunc/GeneralStringFunc/NormalizeSpaceFunc//K-NormalizeSpaceFunc-8, EXPECTED_RESULT_GOT_ERROR -Functions/AllStringFunc/GeneralStringFunc/NormalizeSpaceFunc//K-NormalizeSpaceFunc-9, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +Functions/AllStringFunc/GeneralStringFunc/NormalizeSpaceFunc//K-NormalizeSpaceFunc-9, EXPECTED_ERROR_GOT_FAILURE Functions/AllStringFunc/GeneralStringFunc/NormalizeSpaceFunc//fn-normalize-space-1, EXPECTED_RESULT_GOT_ERROR Functions/AllStringFunc/GeneralStringFunc/NormalizeSpaceFunc//fn-normalize-space-10, EXPECTED_RESULT_GOT_ERROR Functions/AllStringFunc/GeneralStringFunc/NormalizeSpaceFunc//fn-normalize-space-11, EXPECTED_RESULT_GOT_ERROR @@ -12972,10 +12972,10 @@ Functions/AllStringFunc/MatchStringFunc/TokenizeFunc//K-TokenizeFunc-2, EXPECTED Functions/AllStringFunc/MatchStringFunc/TokenizeFunc//K-TokenizeFunc-3, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/AllStringFunc/MatchStringFunc/TokenizeFunc//K-TokenizeFunc-4, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/AllStringFunc/MatchStringFunc/TokenizeFunc//K-TokenizeFunc-5, EXPECTED_ERROR_GOT_SAME_ERROR -Functions/AllStringFunc/MatchStringFunc/TokenizeFunc//K2-TokenizeFunc-1, EXPECTED_RESULT_GOT_ERROR -Functions/AllStringFunc/MatchStringFunc/TokenizeFunc//K2-TokenizeFunc-2, EXPECTED_RESULT_GOT_ERROR -Functions/AllStringFunc/MatchStringFunc/TokenizeFunc//K2-TokenizeFunc-3, EXPECTED_RESULT_GOT_ERROR -Functions/AllStringFunc/MatchStringFunc/TokenizeFunc//K2-TokenizeFunc-4, EXPECTED_RESULT_GOT_ERROR +Functions/AllStringFunc/MatchStringFunc/TokenizeFunc//K2-TokenizeFunc-1, EXPECTED_RESULT_GOT_FAILURE +Functions/AllStringFunc/MatchStringFunc/TokenizeFunc//K2-TokenizeFunc-2, EXPECTED_RESULT_GOT_FAILURE +Functions/AllStringFunc/MatchStringFunc/TokenizeFunc//K2-TokenizeFunc-3, EXPECTED_RESULT_GOT_FAILURE +Functions/AllStringFunc/MatchStringFunc/TokenizeFunc//K2-TokenizeFunc-4, EXPECTED_RESULT_GOT_FAILURE Functions/AllStringFunc/MatchStringFunc/TokenizeFunc//K2-TokenizeFunc-5, EXPECTED_RESULT_GOT_ERROR Functions/AllStringFunc/MatchStringFunc/TokenizeFunc//K2-TokenizeFunc-6, EXPECTED_RESULT_GOT_ERROR Functions/AllStringFunc/MatchStringFunc/TokenizeFunc//K2-TokenizeFunc-7, EXPECTED_RESULT_GOT_ERROR @@ -13225,7 +13225,7 @@ Functions/BooleanFunc/FalseFunc//fn-false-7, EXPECTED_RESULT_GOT_SAME_RESULT Functions/BooleanFunc/FalseFunc//fn-false-8, EXPECTED_RESULT_GOT_SAME_RESULT Functions/BooleanFunc/FalseFunc//fn-false-9, EXPECTED_RESULT_GOT_SAME_RESULT Functions/BooleanFunc/NotFunc//K-NotFunc-1, EXPECTED_ERROR_GOT_SAME_ERROR -Functions/BooleanFunc/NotFunc//K-NotFunc-10, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/BooleanFunc/NotFunc//K-NotFunc-10, EXPECTED_RESULT_GOT_FAILURE Functions/BooleanFunc/NotFunc//K-NotFunc-2, EXPECTED_ERROR_GOT_SAME_ERROR Functions/BooleanFunc/NotFunc//K-NotFunc-3, EXPECTED_RESULT_GOT_SAME_RESULT Functions/BooleanFunc/NotFunc//K-NotFunc-4, EXPECTED_RESULT_GOT_SAME_RESULT @@ -13471,34 +13471,34 @@ Functions/ContextFunc/ContextImplicitTimezoneFunc//fn-implicit-timezone-7, EXPEC Functions/ContextFunc/ContextImplicitTimezoneFunc//fn-implicit-timezone-8, EXPECTED_RESULT_GOT_SAME_RESULT Functions/ContextFunc/ContextImplicitTimezoneFunc//fn-implicit-timezone-9, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-1, EXPECTED_ERROR_GOT_FAILURE -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-10, EXPECTED_ERROR_GOT_RESULT -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-11, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-12, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-13, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-14, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-15, EXPECTED_ERROR_GOT_RESULT -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-16, EXPECTED_ERROR_GOT_RESULT -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-17, EXPECTED_ERROR_GOT_RESULT -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-18, EXPECTED_ERROR_GOT_RESULT -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-19, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-20, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-21, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-22, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-23, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-24, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-25, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-26, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-27, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-28, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-29, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-3, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-4, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-5, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-6, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-7, EXPECTED_ERROR_GOT_RESULT -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-8, EXPECTED_ERROR_GOT_RESULT -Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-9, EXPECTED_ERROR_GOT_RESULT +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-10, EXPECTED_ERROR_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-11, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-12, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-13, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-14, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-15, EXPECTED_ERROR_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-16, EXPECTED_ERROR_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-17, EXPECTED_ERROR_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-18, EXPECTED_ERROR_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-19, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-2, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-20, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-21, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-22, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-23, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-24, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-25, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-26, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-27, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-28, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-29, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-3, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-4, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-5, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-6, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-7, EXPECTED_ERROR_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-8, EXPECTED_ERROR_GOT_FAILURE +Functions/ContextFunc/ContextLastFunc//K-ContextLastFunc-9, EXPECTED_ERROR_GOT_FAILURE Functions/ContextFunc/ContextLastFunc//last-1, EXPECTED_RESULT_GOT_FAILURE Functions/ContextFunc/ContextLastFunc//last-10, EXPECTED_RESULT_GOT_FAILURE Functions/ContextFunc/ContextLastFunc//last-11, EXPECTED_RESULT_GOT_FAILURE @@ -13519,52 +13519,52 @@ Functions/ContextFunc/ContextLastFunc//last-3, EXPECTED_RESULT_GOT_FAILURE Functions/ContextFunc/ContextLastFunc//last-4, EXPECTED_RESULT_GOT_FAILURE Functions/ContextFunc/ContextLastFunc//last-5, EXPECTED_RESULT_GOT_FAILURE Functions/ContextFunc/ContextLastFunc//last-6, EXPECTED_RESULT_GOT_FAILURE -Functions/ContextFunc/ContextLastFunc//last-7, EXPECTED_RESULT_GOT_ERROR +Functions/ContextFunc/ContextLastFunc//last-7, EXPECTED_RESULT_GOT_FAILURE Functions/ContextFunc/ContextLastFunc//last-8, EXPECTED_RESULT_GOT_FAILURE Functions/ContextFunc/ContextLastFunc//last-9, EXPECTED_RESULT_GOT_FAILURE Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-1, EXPECTED_ERROR_GOT_FAILURE -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-10, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-11, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-12, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-13, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-14, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-15, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-16, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-17, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-18, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-19, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-20, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-21, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-22, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-23, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-24, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-25, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-26, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-27, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-28, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-29, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-30, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-31, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-32, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-33, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-34, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-35, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-36, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-37, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-38, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-39, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-40, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-41, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-42, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-43, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-6, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-7, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-8, EXPECTED_RESULT_GOT_ERROR -Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-9, EXPECTED_RESULT_GOT_ERROR +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-10, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-11, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-12, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-13, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-14, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-15, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-16, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-17, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-18, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-19, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-2, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-20, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-21, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-22, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-23, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-24, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-25, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-26, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-27, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-28, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-29, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-3, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-30, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-31, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-32, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-33, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-34, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-35, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-36, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-37, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-38, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-39, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-4, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-40, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-41, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-42, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-43, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-5, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-6, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-7, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-8, EXPECTED_RESULT_GOT_FAILURE +Functions/ContextFunc/ContextPositionFunc//K-ContextPositionFunc-9, EXPECTED_RESULT_GOT_FAILURE Functions/ContextFunc/ContextPositionFunc//position-1, EXPECTED_RESULT_GOT_FAILURE Functions/ContextFunc/ContextPositionFunc//position-10, EXPECTED_RESULT_GOT_FAILURE Functions/ContextFunc/ContextPositionFunc//position-11, EXPECTED_RESULT_GOT_FAILURE @@ -14292,17 +14292,17 @@ Functions/DurationDateTimeFunc/YearsFromDurationFunc//fn-years-from-duration-9, Functions/DurationDateTimeFunc/YearsFromDurationFunc//fn-years-from-duration1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/DurationDateTimeFunc/YearsFromDurationFunc//fn-years-from-duration1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/DurationDateTimeFunc/YearsFromDurationFunc//fn-years-from-duration1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/ErrorFunc//K-ErrorFunc-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/ErrorFunc//K-ErrorFunc-1, EXPECTED_RESULT_GOT_ERROR Functions/ErrorFunc//K-ErrorFunc-10, EXPECTED_ERROR_GOT_SAME_ERROR -Functions/ErrorFunc//K-ErrorFunc-2, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/ErrorFunc//K-ErrorFunc-2, EXPECTED_RESULT_GOT_ERROR Functions/ErrorFunc//K-ErrorFunc-3, EXPECTED_ERROR_GOT_SAME_ERROR Functions/ErrorFunc//K-ErrorFunc-4, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/ErrorFunc//K-ErrorFunc-5, EXPECTED_ERROR_GOT_SAME_ERROR Functions/ErrorFunc//K-ErrorFunc-6, EXPECTED_ERROR_GOT_SAME_ERROR -Functions/ErrorFunc//K-ErrorFunc-7, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/ErrorFunc//K-ErrorFunc-7, EXPECTED_RESULT_GOT_ERROR Functions/ErrorFunc//K-ErrorFunc-8, EXPECTED_ERROR_GOT_SAME_ERROR Functions/ErrorFunc//K-ErrorFunc-9, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Functions/ErrorFunc//K2-ErrorFunc-1, EXPECTED_ERROR_GOT_SAME_ERROR +Functions/ErrorFunc//K2-ErrorFunc-1, EXPECTED_ERROR_GOT_FAILURE Functions/ErrorFunc//K2-ErrorFunc-2, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/ErrorFunc//K2-ErrorFunc-3, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/ErrorFunc//fn-error-1, EXPECTED_ERROR_GOT_SAME_ERROR @@ -14425,27 +14425,27 @@ Functions/NodeFunc/NameFunc//K-NameFunc-2, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/NodeFunc/NameFunc//K-NameFunc-3, EXPECTED_RESULT_GOT_ERROR Functions/NodeFunc/NameFunc//fn-name-1, EXPECTED_RESULT_GOT_ERROR Functions/NodeFunc/NameFunc//fn-name-10, EXPECTED_RESULT_GOT_FAILURE -Functions/NodeFunc/NameFunc//fn-name-11, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NameFunc//fn-name-12, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NameFunc//fn-name-13, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NameFunc//fn-name-14, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NameFunc//fn-name-15, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NameFunc//fn-name-16, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +Functions/NodeFunc/NameFunc//fn-name-11, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NameFunc//fn-name-12, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NameFunc//fn-name-13, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NameFunc//fn-name-14, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NameFunc//fn-name-15, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NameFunc//fn-name-16, EXPECTED_ERROR_GOT_FAILURE Functions/NodeFunc/NameFunc//fn-name-17, EXPECTED_RESULT_GOT_FAILURE -Functions/NodeFunc/NameFunc//fn-name-18, EXPECTED_RESULT_GOT_ERROR +Functions/NodeFunc/NameFunc//fn-name-18, EXPECTED_RESULT_GOT_FAILURE Functions/NodeFunc/NameFunc//fn-name-19, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NameFunc//fn-name-2, EXPECTED_RESULT_GOT_ERROR +Functions/NodeFunc/NameFunc//fn-name-2, EXPECTED_RESULT_GOT_FAILURE Functions/NodeFunc/NameFunc//fn-name-20, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NameFunc//fn-name-21, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NameFunc//fn-name-22, EXPECTED_RESULT_GOT_ERROR +Functions/NodeFunc/NameFunc//fn-name-21, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NameFunc//fn-name-22, EXPECTED_RESULT_GOT_FAILURE Functions/NodeFunc/NameFunc//fn-name-23, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Functions/NodeFunc/NameFunc//fn-name-3, EXPECTED_RESULT_GOT_ERROR +Functions/NodeFunc/NameFunc//fn-name-3, EXPECTED_RESULT_GOT_FAILURE Functions/NodeFunc/NameFunc//fn-name-4, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NameFunc//fn-name-5, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NameFunc//fn-name-6, EXPECTED_RESULT_GOT_ERROR +Functions/NodeFunc/NameFunc//fn-name-5, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NameFunc//fn-name-6, EXPECTED_RESULT_GOT_FAILURE Functions/NodeFunc/NameFunc//fn-name-7, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Functions/NodeFunc/NameFunc//fn-name-8, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NameFunc//fn-name-9, EXPECTED_RESULT_GOT_ERROR +Functions/NodeFunc/NameFunc//fn-name-8, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NameFunc//fn-name-9, EXPECTED_RESULT_GOT_FAILURE Functions/NodeFunc/NamespaceURIForPrefixFunc//fn-namespace-uri-for-prefix-1, EXPECTED_RESULT_GOT_ERROR Functions/NodeFunc/NamespaceURIForPrefixFunc//fn-namespace-uri-for-prefix-10, EXPECTED_RESULT_GOT_ERROR Functions/NodeFunc/NamespaceURIForPrefixFunc//fn-namespace-uri-for-prefix-11, EXPECTED_RESULT_GOT_ERROR @@ -14478,30 +14478,30 @@ Functions/NodeFunc/NodeLangFunc//K2-NodeLangFunc-4, EXPECTED_RESULT_GOT_ERROR Functions/NodeFunc/NodeLangFunc//K2-NodeLangFunc-5, EXPECTED_RESULT_GOT_ERROR Functions/NodeFunc/NodeLangFunc//K2-NodeLangFunc-6, EXPECTED_RESULT_GOT_ERROR Functions/NodeFunc/NodeLangFunc//fn-lang-1, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang-10, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang-11, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang-12, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang-13, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang-14, EXPECTED_RESULT_GOT_ERROR +Functions/NodeFunc/NodeLangFunc//fn-lang-10, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeLangFunc//fn-lang-11, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeLangFunc//fn-lang-12, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeLangFunc//fn-lang-13, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeLangFunc//fn-lang-14, EXPECTED_RESULT_GOT_FAILURE Functions/NodeFunc/NodeLangFunc//fn-lang-15, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang-16, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang-17, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang-18, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang-19, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang-2, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang-20, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang-21, EXPECTED_RESULT_GOT_ERROR +Functions/NodeFunc/NodeLangFunc//fn-lang-16, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeLangFunc//fn-lang-17, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeLangFunc//fn-lang-18, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeLangFunc//fn-lang-19, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeLangFunc//fn-lang-2, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeLangFunc//fn-lang-20, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeLangFunc//fn-lang-21, EXPECTED_RESULT_GOT_FAILURE Functions/NodeFunc/NodeLangFunc//fn-lang-22, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang-3, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang-4, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang-5, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang-6, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang-7, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang-8, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang-9, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang1args-1, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang1args-2, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeLangFunc//fn-lang1args-3, EXPECTED_RESULT_GOT_ERROR +Functions/NodeFunc/NodeLangFunc//fn-lang-3, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeLangFunc//fn-lang-4, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeLangFunc//fn-lang-5, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeLangFunc//fn-lang-6, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeLangFunc//fn-lang-7, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeLangFunc//fn-lang-8, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeLangFunc//fn-lang-9, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeLangFunc//fn-lang1args-1, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeLangFunc//fn-lang1args-2, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeLangFunc//fn-lang1args-3, EXPECTED_RESULT_GOT_FAILURE Functions/NodeFunc/NodeLocalNameFunc//K-NodeLocalNameFunc-1, EXPECTED_ERROR_GOT_SAME_ERROR Functions/NodeFunc/NodeLocalNameFunc//K-NodeLocalNameFunc-2, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/NodeFunc/NodeLocalNameFunc//K-NodeLocalNameFunc-3, EXPECTED_RESULT_GOT_ERROR @@ -14540,9 +14540,9 @@ Functions/NodeFunc/NodeNamespaceURIFunc//fn-namespace-uri-10, EXPECTED_RESULT_GO Functions/NodeFunc/NodeNamespaceURIFunc//fn-namespace-uri-11, EXPECTED_RESULT_GOT_ERROR Functions/NodeFunc/NodeNamespaceURIFunc//fn-namespace-uri-12, EXPECTED_RESULT_GOT_ERROR Functions/NodeFunc/NodeNamespaceURIFunc//fn-namespace-uri-13, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeNamespaceURIFunc//fn-namespace-uri-14, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeNamespaceURIFunc//fn-namespace-uri-15, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeNamespaceURIFunc//fn-namespace-uri-16, EXPECTED_RESULT_GOT_ERROR +Functions/NodeFunc/NodeNamespaceURIFunc//fn-namespace-uri-14, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeNamespaceURIFunc//fn-namespace-uri-15, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeNamespaceURIFunc//fn-namespace-uri-16, EXPECTED_RESULT_GOT_FAILURE Functions/NodeFunc/NodeNamespaceURIFunc//fn-namespace-uri-17, EXPECTED_RESULT_GOT_ERROR Functions/NodeFunc/NodeNamespaceURIFunc//fn-namespace-uri-18, EXPECTED_RESULT_GOT_ERROR Functions/NodeFunc/NodeNamespaceURIFunc//fn-namespace-uri-19, EXPECTED_RESULT_GOT_ERROR @@ -14568,8 +14568,8 @@ Functions/NodeFunc/NodeNumberFunc//K-NodeNumberFunc-12, EXPECTED_RESULT_GOT_SAME Functions/NodeFunc/NodeNumberFunc//K-NodeNumberFunc-13, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NodeFunc/NodeNumberFunc//K-NodeNumberFunc-14, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NodeFunc/NodeNumberFunc//K-NodeNumberFunc-15, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NodeFunc/NodeNumberFunc//K-NodeNumberFunc-16, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeNumberFunc//K-NodeNumberFunc-17, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NodeFunc/NodeNumberFunc//K-NodeNumberFunc-16, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeNumberFunc//K-NodeNumberFunc-17, EXPECTED_RESULT_GOT_FAILURE Functions/NodeFunc/NodeNumberFunc//K-NodeNumberFunc-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NodeFunc/NodeNumberFunc//K-NodeNumberFunc-3, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NodeFunc/NodeNumberFunc//K-NodeNumberFunc-4, EXPECTED_RESULT_GOT_SAME_RESULT @@ -14582,36 +14582,36 @@ Functions/NodeFunc/NodeNumberFunc//fn-number-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NodeFunc/NodeNumberFunc//fn-number-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NodeFunc/NodeNumberFunc//fn-number-3, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/NodeFunc/NodeNumberFunc//fn-number-4, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Functions/NodeFunc/NodeNumberFunc//fn-numberdbl1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NodeFunc/NodeNumberFunc//fn-numberdbl1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numberdbl1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NodeFunc/NodeNumberFunc//fn-numberdbl1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NodeFunc/NodeNumberFunc//fn-numberdec1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NodeFunc/NodeNumberFunc//fn-numberdbl1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/NodeFunc/NodeNumberFunc//fn-numberdec1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numberdec1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NodeFunc/NodeNumberFunc//fn-numberdec1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NodeFunc/NodeNumberFunc//fn-numberflt1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NodeFunc/NodeNumberFunc//fn-numberdec1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/NodeFunc/NodeNumberFunc//fn-numberflt1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numberflt1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NodeFunc/NodeNumberFunc//fn-numberflt1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NodeFunc/NodeNumberFunc//fn-numberflt1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numberint1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numberint1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numberint1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NodeFunc/NodeNumberFunc//fn-numberintg1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NodeFunc/NodeNumberFunc//fn-numberintg1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numberintg1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NodeFunc/NodeNumberFunc//fn-numberintg1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NodeFunc/NodeNumberFunc//fn-numberintg1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numberlng1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numberlng1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numberlng1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NodeFunc/NodeNumberFunc//fn-numbernint1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NodeFunc/NodeNumberFunc//fn-numbernint1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numbernint1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numbernint1args-3, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numbernni1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numbernni1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NodeFunc/NodeNumberFunc//fn-numbernni1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NodeFunc/NodeNumberFunc//fn-numbernpi1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NodeFunc/NodeNumberFunc//fn-numbernni1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/NodeFunc/NodeNumberFunc//fn-numbernpi1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numbernpi1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numbernpi1args-3, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numberpint1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numberpint1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NodeFunc/NodeNumberFunc//fn-numberpint1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NodeFunc/NodeNumberFunc//fn-numberpint1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numbersht1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numbersht1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NodeFunc/NodeNumberFunc//fn-numbersht1args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -14638,8 +14638,8 @@ Functions/NodeFunc/NodeRootFunc//fn-root-10, EXPECTED_RESULT_GOT_ERROR Functions/NodeFunc/NodeRootFunc//fn-root-11, EXPECTED_RESULT_GOT_ERROR Functions/NodeFunc/NodeRootFunc//fn-root-12, EXPECTED_RESULT_GOT_ERROR Functions/NodeFunc/NodeRootFunc//fn-root-13, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeRootFunc//fn-root-14, EXPECTED_RESULT_GOT_ERROR -Functions/NodeFunc/NodeRootFunc//fn-root-15, EXPECTED_RESULT_GOT_ERROR +Functions/NodeFunc/NodeRootFunc//fn-root-14, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeFunc/NodeRootFunc//fn-root-15, EXPECTED_RESULT_GOT_FAILURE Functions/NodeFunc/NodeRootFunc//fn-root-16, EXPECTED_RESULT_GOT_ERROR Functions/NodeFunc/NodeRootFunc//fn-root-17, EXPECTED_RESULT_GOT_ERROR Functions/NodeFunc/NodeRootFunc//fn-root-18, EXPECTED_RESULT_GOT_ERROR @@ -14659,7 +14659,7 @@ Functions/NodeFunc/NodeRootFunc//fn-root-8, EXPECTED_RESULT_GOT_ERROR Functions/NodeFunc/NodeRootFunc//fn-root-9, EXPECTED_RESULT_GOT_ERROR Functions/NodeSeqFunc/SeqCollectionFunc//fn-collection-1, EXPECTED_ERROR_GOT_SAME_ERROR Functions/NodeSeqFunc/SeqCollectionFunc//fn-collection-10, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqCollectionFunc//fn-collection-10d, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqCollectionFunc//fn-collection-10d, EXPECTED_RESULT_GOT_ERROR Functions/NodeSeqFunc/SeqCollectionFunc//fn-collection-2, EXPECTED_ERROR_GOT_FAILURE Functions/NodeSeqFunc/SeqCollectionFunc//fn-collection-3, EXPECTED_ERROR_GOT_FAILURE Functions/NodeSeqFunc/SeqCollectionFunc//fn-collection-4, EXPECTED_RESULT_GOT_ERROR @@ -14712,48 +14712,48 @@ Functions/NodeSeqFunc/SeqIDFunc//fn-id-2, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/NodeSeqFunc/SeqIDFunc//fn-id-22, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/NodeSeqFunc/SeqIDFunc//fn-id-3, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/NodeSeqFunc/SeqIDFunc//fn-id-4, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-10, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-11, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-12, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-13, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-14, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-15, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-16, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-17, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-18, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-19, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-20, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-21, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-23, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-5, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-6, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-7, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-8, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-9, EXPECTED_RESULT_GOT_ERROR +Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-10, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-11, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-12, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-13, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-14, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-15, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-16, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-17, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-18, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-19, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-20, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-21, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-23, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-5, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-6, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-7, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-8, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDFunc//fn-id-dtd-9, EXPECTED_RESULT_GOT_FAILURE Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-1, EXPECTED_ERROR_GOT_SAME_ERROR Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-2, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-22, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-3, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-4, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-10, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-11, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-12, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-13, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-14, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-15, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-16, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-17, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-18, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-19, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-20, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-21, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-23, EXPECTED_RESULT_GOT_ERROR +Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-10, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-11, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-12, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-13, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-14, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-15, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-16, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-17, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-18, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-19, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-20, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-21, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-23, EXPECTED_RESULT_GOT_FAILURE Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-24, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-5, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-6, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-7, EXPECTED_RESULT_GOT_ERROR -Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-8, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-9, EXPECTED_RESULT_GOT_ERROR +Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-5, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-6, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-7, EXPECTED_RESULT_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-8, EXPECTED_ERROR_GOT_FAILURE +Functions/NodeSeqFunc/SeqIDREFFunc//fn-idref-dtd-9, EXPECTED_RESULT_GOT_FAILURE Functions/NumericFunc/ABSFunc//K-ABSFunc-1, EXPECTED_ERROR_GOT_SAME_ERROR Functions/NumericFunc/ABSFunc//K-ABSFunc-2, EXPECTED_ERROR_GOT_SAME_ERROR Functions/NumericFunc/ABSFunc//K-ABSFunc-3, EXPECTED_RESULT_GOT_FAILURE @@ -14788,19 +14788,19 @@ Functions/NumericFunc/ABSFunc//K2-ABSFunc-31, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/ABSFunc//K2-ABSFunc-32, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/ABSFunc//K2-ABSFunc-33, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/ABSFunc//K2-ABSFunc-34, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/ABSFunc//K2-ABSFunc-35, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/ABSFunc//K2-ABSFunc-36, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/ABSFunc//K2-ABSFunc-37, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/ABSFunc//K2-ABSFunc-38, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/ABSFunc//K2-ABSFunc-39, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/ABSFunc//K2-ABSFunc-35, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/ABSFunc//K2-ABSFunc-36, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/ABSFunc//K2-ABSFunc-37, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/ABSFunc//K2-ABSFunc-38, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/ABSFunc//K2-ABSFunc-39, EXPECTED_RESULT_GOT_ERROR Functions/NumericFunc/ABSFunc//K2-ABSFunc-4, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/ABSFunc//K2-ABSFunc-40, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/ABSFunc//K2-ABSFunc-41, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/ABSFunc//K2-ABSFunc-42, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/ABSFunc//K2-ABSFunc-43, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/ABSFunc//K2-ABSFunc-44, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/ABSFunc//K2-ABSFunc-45, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/ABSFunc//K2-ABSFunc-46, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/ABSFunc//K2-ABSFunc-40, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/ABSFunc//K2-ABSFunc-41, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/ABSFunc//K2-ABSFunc-42, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/ABSFunc//K2-ABSFunc-43, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/ABSFunc//K2-ABSFunc-44, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/ABSFunc//K2-ABSFunc-45, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/ABSFunc//K2-ABSFunc-46, EXPECTED_RESULT_GOT_ERROR Functions/NumericFunc/ABSFunc//K2-ABSFunc-47, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/ABSFunc//K2-ABSFunc-48, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/ABSFunc//K2-ABSFunc-49, EXPECTED_RESULT_GOT_SAME_RESULT @@ -14897,15 +14897,15 @@ Functions/NumericFunc/ABSFunc//fn-abs-more-args-083, EXPECTED_ERROR_GOT_SAME_ERR Functions/NumericFunc/ABSFunc//fn-abs-more-args-084, EXPECTED_ERROR_GOT_SAME_ERROR Functions/NumericFunc/ABSFunc//fn-abs-more-args-085, EXPECTED_ERROR_GOT_SAME_ERROR Functions/NumericFunc/ABSFunc//fn-abs-more-args-086, EXPECTED_ERROR_GOT_SAME_ERROR -Functions/NumericFunc/ABSFunc//fn-absdbl1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/ABSFunc//fn-absdbl1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NumericFunc/ABSFunc//fn-absdbl1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/ABSFunc//fn-absdbl1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/ABSFunc//fn-absdbl1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NumericFunc/ABSFunc//fn-absdec1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/ABSFunc//fn-absdec1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/ABSFunc//fn-absdec1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/ABSFunc//fn-absflt1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/ABSFunc//fn-absflt1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NumericFunc/ABSFunc//fn-absflt1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/ABSFunc//fn-absflt1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/ABSFunc//fn-absflt1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NumericFunc/ABSFunc//fn-absint1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/ABSFunc//fn-absint1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/ABSFunc//fn-absint1args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -14942,28 +14942,28 @@ Functions/NumericFunc/CeilingFunc//K-CeilingFunc-3, EXPECTED_RESULT_GOT_FAILURE Functions/NumericFunc/CeilingFunc//K-CeilingFunc-4, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/CeilingFunc//K-CeilingFunc-5, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/CeilingFunc//K-CeilingFunc-6, EXPECTED_ERROR_GOT_SAME_ERROR -Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-1, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-10, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-11, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-12, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-4, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-5, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-6, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-7, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-8, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-9, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-1, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-10, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-11, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-12, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-2, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-3, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-4, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-5, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-6, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-7, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-8, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/CeilingFunc//K2-CeilingFunc-9, EXPECTED_RESULT_GOT_ERROR Functions/NumericFunc/CeilingFunc//fn-ceiling-1, EXPECTED_RESULT_GOT_FAILURE -Functions/NumericFunc/CeilingFunc//fn-ceilingdbl1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/CeilingFunc//fn-ceilingdbl1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NumericFunc/CeilingFunc//fn-ceilingdbl1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/CeilingFunc//fn-ceilingdbl1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/CeilingFunc//fn-ceilingdec1args-1, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/CeilingFunc//fn-ceilingdec1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/CeilingFunc//fn-ceilingdec1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/CeilingFunc//fn-ceilingflt1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/CeilingFunc//fn-ceilingdbl1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/NumericFunc/CeilingFunc//fn-ceilingdec1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/NumericFunc/CeilingFunc//fn-ceilingdec1args-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/NumericFunc/CeilingFunc//fn-ceilingdec1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/NumericFunc/CeilingFunc//fn-ceilingflt1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NumericFunc/CeilingFunc//fn-ceilingflt1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/CeilingFunc//fn-ceilingflt1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/CeilingFunc//fn-ceilingflt1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NumericFunc/CeilingFunc//fn-ceilingint1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/CeilingFunc//fn-ceilingint1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/CeilingFunc//fn-ceilingint1args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -14998,31 +14998,31 @@ Functions/NumericFunc/FloorFunc//K-FloorFunc-1, EXPECTED_ERROR_GOT_SAME_ERROR Functions/NumericFunc/FloorFunc//K-FloorFunc-2, EXPECTED_ERROR_GOT_SAME_ERROR Functions/NumericFunc/FloorFunc//K-FloorFunc-3, EXPECTED_RESULT_GOT_FAILURE Functions/NumericFunc/FloorFunc//K-FloorFunc-4, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/FloorFunc//K-FloorFunc-5, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/FloorFunc//K-FloorFunc-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NumericFunc/FloorFunc//K-FloorFunc-6, EXPECTED_ERROR_GOT_SAME_ERROR -Functions/NumericFunc/FloorFunc//K2-FloorFunc-1, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/FloorFunc//K2-FloorFunc-10, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/FloorFunc//K2-FloorFunc-11, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/FloorFunc//K2-FloorFunc-12, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/FloorFunc//K2-FloorFunc-13, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/FloorFunc//K2-FloorFunc-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/FloorFunc//K2-FloorFunc-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/FloorFunc//K2-FloorFunc-4, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/FloorFunc//K2-FloorFunc-5, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/FloorFunc//K2-FloorFunc-6, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/FloorFunc//K2-FloorFunc-7, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/FloorFunc//K2-FloorFunc-8, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/FloorFunc//K2-FloorFunc-9, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/FloorFunc//K2-FloorFunc-1, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/FloorFunc//K2-FloorFunc-10, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/FloorFunc//K2-FloorFunc-11, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/FloorFunc//K2-FloorFunc-12, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/FloorFunc//K2-FloorFunc-13, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/FloorFunc//K2-FloorFunc-2, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/FloorFunc//K2-FloorFunc-3, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/FloorFunc//K2-FloorFunc-4, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/FloorFunc//K2-FloorFunc-5, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/FloorFunc//K2-FloorFunc-6, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/FloorFunc//K2-FloorFunc-7, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/FloorFunc//K2-FloorFunc-8, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/FloorFunc//K2-FloorFunc-9, EXPECTED_RESULT_GOT_ERROR Functions/NumericFunc/FloorFunc//fn-floor-1, EXPECTED_RESULT_GOT_FAILURE -Functions/NumericFunc/FloorFunc//fn-floordbl1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/FloorFunc//fn-floordbl1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NumericFunc/FloorFunc//fn-floordbl1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/FloorFunc//fn-floordbl1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/FloorFunc//fn-floordbl1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NumericFunc/FloorFunc//fn-floordec1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/FloorFunc//fn-floordec1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/FloorFunc//fn-floordec1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/FloorFunc//fn-floorflt1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/FloorFunc//fn-floorflt1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NumericFunc/FloorFunc//fn-floorflt1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/FloorFunc//fn-floorflt1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/FloorFunc//fn-floorflt1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NumericFunc/FloorFunc//fn-floorint1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/FloorFunc//fn-floorint1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/FloorFunc//fn-floorint1args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -15066,21 +15066,21 @@ Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-13, EXPECTED_RESULT_GOT_SA Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-14, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-15, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-16, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-17, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-18, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-19, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-17, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-18, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-19, EXPECTED_RESULT_GOT_ERROR Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-20, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-21, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-22, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-23, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-24, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-25, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-26, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-27, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-28, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-20, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-21, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-22, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-23, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-24, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-25, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-26, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-27, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-28, EXPECTED_RESULT_GOT_ERROR Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-4, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-5, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-6, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundEvenFunc//K2-RoundEvenFunc-7, EXPECTED_RESULT_GOT_SAME_RESULT @@ -15136,8 +15136,8 @@ Functions/NumericFunc/RoundFunc//K-RoundFunc-6, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K-RoundFunc-7, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K-RoundFunc-8, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K-RoundFunc-9, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundFunc//K2-RoundFunc-1, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundFunc//K2-RoundFunc-10, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/RoundFunc//K2-RoundFunc-1, EXPECTED_RESULT_GOT_ERROR +Functions/NumericFunc/RoundFunc//K2-RoundFunc-10, EXPECTED_RESULT_GOT_ERROR Functions/NumericFunc/RoundFunc//K2-RoundFunc-100, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-101, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-102, EXPECTED_RESULT_GOT_SAME_RESULT @@ -15148,7 +15148,7 @@ Functions/NumericFunc/RoundFunc//K2-RoundFunc-106, EXPECTED_RESULT_GOT_SAME_RESU Functions/NumericFunc/RoundFunc//K2-RoundFunc-107, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-108, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-109, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundFunc//K2-RoundFunc-11, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/RoundFunc//K2-RoundFunc-11, EXPECTED_RESULT_GOT_ERROR Functions/NumericFunc/RoundFunc//K2-RoundFunc-110, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-111, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-112, EXPECTED_RESULT_GOT_SAME_RESULT @@ -15159,7 +15159,7 @@ Functions/NumericFunc/RoundFunc//K2-RoundFunc-116, EXPECTED_RESULT_GOT_SAME_RESU Functions/NumericFunc/RoundFunc//K2-RoundFunc-117, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-118, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-119, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundFunc//K2-RoundFunc-12, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/RoundFunc//K2-RoundFunc-12, EXPECTED_RESULT_GOT_ERROR Functions/NumericFunc/RoundFunc//K2-RoundFunc-120, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-121, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-122, EXPECTED_RESULT_GOT_SAME_RESULT @@ -15238,7 +15238,7 @@ Functions/NumericFunc/RoundFunc//K2-RoundFunc-188, EXPECTED_RESULT_GOT_SAME_RESU Functions/NumericFunc/RoundFunc//K2-RoundFunc-189, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-19, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-190, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundFunc//K2-RoundFunc-2, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/RoundFunc//K2-RoundFunc-2, EXPECTED_RESULT_GOT_ERROR Functions/NumericFunc/RoundFunc//K2-RoundFunc-20, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-21, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-22, EXPECTED_RESULT_GOT_SAME_RESULT @@ -15249,7 +15249,7 @@ Functions/NumericFunc/RoundFunc//K2-RoundFunc-26, EXPECTED_RESULT_GOT_SAME_RESUL Functions/NumericFunc/RoundFunc//K2-RoundFunc-27, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-28, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-29, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundFunc//K2-RoundFunc-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/RoundFunc//K2-RoundFunc-3, EXPECTED_RESULT_GOT_ERROR Functions/NumericFunc/RoundFunc//K2-RoundFunc-30, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-31, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-32, EXPECTED_RESULT_GOT_SAME_RESULT @@ -15260,7 +15260,7 @@ Functions/NumericFunc/RoundFunc//K2-RoundFunc-36, EXPECTED_RESULT_GOT_SAME_RESUL Functions/NumericFunc/RoundFunc//K2-RoundFunc-37, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-38, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-39, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundFunc//K2-RoundFunc-4, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/RoundFunc//K2-RoundFunc-4, EXPECTED_RESULT_GOT_ERROR Functions/NumericFunc/RoundFunc//K2-RoundFunc-40, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-41, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-42, EXPECTED_RESULT_GOT_SAME_RESULT @@ -15271,7 +15271,7 @@ Functions/NumericFunc/RoundFunc//K2-RoundFunc-46, EXPECTED_RESULT_GOT_SAME_RESUL Functions/NumericFunc/RoundFunc//K2-RoundFunc-47, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-48, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-49, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundFunc//K2-RoundFunc-5, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/RoundFunc//K2-RoundFunc-5, EXPECTED_RESULT_GOT_ERROR Functions/NumericFunc/RoundFunc//K2-RoundFunc-50, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-51, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-52, EXPECTED_RESULT_GOT_SAME_RESULT @@ -15282,7 +15282,7 @@ Functions/NumericFunc/RoundFunc//K2-RoundFunc-56, EXPECTED_RESULT_GOT_SAME_RESUL Functions/NumericFunc/RoundFunc//K2-RoundFunc-57, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-58, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-59, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundFunc//K2-RoundFunc-6, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/RoundFunc//K2-RoundFunc-6, EXPECTED_RESULT_GOT_ERROR Functions/NumericFunc/RoundFunc//K2-RoundFunc-60, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-61, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-62, EXPECTED_RESULT_GOT_SAME_RESULT @@ -15293,7 +15293,7 @@ Functions/NumericFunc/RoundFunc//K2-RoundFunc-66, EXPECTED_RESULT_GOT_SAME_RESUL Functions/NumericFunc/RoundFunc//K2-RoundFunc-67, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-68, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-69, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundFunc//K2-RoundFunc-7, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/RoundFunc//K2-RoundFunc-7, EXPECTED_RESULT_GOT_ERROR Functions/NumericFunc/RoundFunc//K2-RoundFunc-70, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-71, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-72, EXPECTED_RESULT_GOT_SAME_RESULT @@ -15304,7 +15304,7 @@ Functions/NumericFunc/RoundFunc//K2-RoundFunc-76, EXPECTED_RESULT_GOT_SAME_RESUL Functions/NumericFunc/RoundFunc//K2-RoundFunc-77, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-78, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-79, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundFunc//K2-RoundFunc-8, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/RoundFunc//K2-RoundFunc-8, EXPECTED_RESULT_GOT_ERROR Functions/NumericFunc/RoundFunc//K2-RoundFunc-80, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-81, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-82, EXPECTED_RESULT_GOT_SAME_RESULT @@ -15315,7 +15315,7 @@ Functions/NumericFunc/RoundFunc//K2-RoundFunc-86, EXPECTED_RESULT_GOT_SAME_RESUL Functions/NumericFunc/RoundFunc//K2-RoundFunc-87, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-88, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-89, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundFunc//K2-RoundFunc-9, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/RoundFunc//K2-RoundFunc-9, EXPECTED_RESULT_GOT_ERROR Functions/NumericFunc/RoundFunc//K2-RoundFunc-90, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-91, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//K2-RoundFunc-92, EXPECTED_RESULT_GOT_SAME_RESULT @@ -15330,9 +15330,9 @@ Functions/NumericFunc/RoundFunc//fn-round-1, EXPECTED_RESULT_GOT_FAILURE Functions/NumericFunc/RoundFunc//fn-rounddbl1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NumericFunc/RoundFunc//fn-rounddbl1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//fn-rounddbl1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Functions/NumericFunc/RoundFunc//fn-rounddec1args-1, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundFunc//fn-rounddec1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/NumericFunc/RoundFunc//fn-rounddec1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/NumericFunc/RoundFunc//fn-rounddec1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/NumericFunc/RoundFunc//fn-rounddec1args-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/NumericFunc/RoundFunc//fn-rounddec1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NumericFunc/RoundFunc//fn-roundflt1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/NumericFunc/RoundFunc//fn-roundflt1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/NumericFunc/RoundFunc//fn-roundflt1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT @@ -15385,7 +15385,7 @@ Functions/QNameFunc/InScopePrefixesFunc//K2-InScopePrefixesFunc-21, EXPECTED_RES Functions/QNameFunc/InScopePrefixesFunc//K2-InScopePrefixesFunc-22, EXPECTED_RESULT_GOT_ERROR Functions/QNameFunc/InScopePrefixesFunc//K2-InScopePrefixesFunc-23, EXPECTED_RESULT_GOT_ERROR Functions/QNameFunc/InScopePrefixesFunc//K2-InScopePrefixesFunc-24, EXPECTED_RESULT_GOT_ERROR -Functions/QNameFunc/InScopePrefixesFunc//K2-InScopePrefixesFunc-25, EXPECTED_RESULT_GOT_ERROR +Functions/QNameFunc/InScopePrefixesFunc//K2-InScopePrefixesFunc-25, EXPECTED_RESULT_GOT_FAILURE Functions/QNameFunc/InScopePrefixesFunc//K2-InScopePrefixesFunc-26, EXPECTED_RESULT_GOT_ERROR Functions/QNameFunc/InScopePrefixesFunc//K2-InScopePrefixesFunc-27, EXPECTED_RESULT_GOT_ERROR Functions/QNameFunc/InScopePrefixesFunc//K2-InScopePrefixesFunc-28, EXPECTED_RESULT_GOT_FAILURE @@ -15584,18 +15584,18 @@ Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-008, EXPECTED_RES Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-009, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-010, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-011, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-012, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-012, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-013, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-014, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-014, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-015, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-016, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-017, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-018, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-019, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-020, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-021, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-022, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-023, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-020, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-021, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-022, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-023, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-024, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-025, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-026, EXPECTED_RESULT_GOT_SAME_RESULT @@ -15639,9 +15639,9 @@ Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-063, EXPECTED_ERR Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-064, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-065, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avg-mix-args-066, EXPECTED_ERROR_GOT_FAILURE -Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgdbl1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgdbl1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgdbl1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgdbl1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgdbl1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgdbl2args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgdbl2args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgdbl2args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -15651,18 +15651,18 @@ Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgdec1args-1, EXPECTED_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgdec1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgdec1args-3, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgdec2args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgdec2args-2, EXPECTED_RESULT_GOT_ERROR +Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgdec2args-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgdec2args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgdec2args-4, EXPECTED_RESULT_GOT_ERROR +Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgdec2args-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgdec2args-5, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgflt1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgflt1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgflt1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgflt1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgflt1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgflt2args-1, EXPECTED_ERROR_GOT_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgflt2args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgflt2args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgflt2args-4, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgflt2args-5, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgflt2args-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgflt2args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgflt2args-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgflt2args-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgint1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgint1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgint1args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -15699,9 +15699,9 @@ Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgnni1args-1, EXPECTED_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgnni1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgnni1args-3, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgnni2args-1, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgnni2args-2, EXPECTED_RESULT_GOT_ERROR +Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgnni2args-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgnni2args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgnni2args-4, EXPECTED_RESULT_GOT_ERROR +Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgnni2args-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgnni2args-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgnpi1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqAVGFunc//fn-avgnpi1args-2, EXPECTED_RESULT_GOT_SAME_RESULT @@ -15866,7 +15866,7 @@ Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//K2-SeqMAXFunc-3, EXPECTED_RESULT_ Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//K2-SeqMAXFunc-4, EXPECTED_ERROR_GOT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//K2-SeqMAXFunc-5, EXPECTED_ERROR_GOT_SAME_ERROR Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//K2-SeqMAXFunc-6, EXPECTED_ERROR_GOT_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//K2-SeqMAXFunc-7, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//K2-SeqMAXFunc-7, EXPECTED_RESULT_GOT_ERROR Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-max-1, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-max-10, EXPECTED_RESULT_GOT_FAILURE Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-max-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT @@ -15877,14 +15877,14 @@ Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-max-6, EXPECTED_RESULT_GOT_SAM Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-max-7, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-max-8, EXPECTED_ERROR_GOT_SAME_ERROR Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-max-9, EXPECTED_ERROR_GOT_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxdbl1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxdbl1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxdbl1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxdbl1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxdbl2args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxdbl1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxdbl2args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxdbl2args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxdbl2args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxdbl2args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxdbl2args-4, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxdbl2args-5, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxdbl2args-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxdec1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxdec1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxdec1args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -15893,14 +15893,14 @@ Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxdec2args-2, EXPECTED_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxdec2args-3, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxdec2args-4, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxdec2args-5, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxflt1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxflt1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxflt1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxflt1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxflt2args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxflt1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxflt2args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxflt2args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxflt2args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxflt2args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxflt2args-4, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxflt2args-5, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxflt2args-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxint1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxint1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMAXFunc//fn-maxint1args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -16038,7 +16038,7 @@ Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//K2-SeqMINFunc-11, EXPECTED_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//K2-SeqMINFunc-12, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//K2-SeqMINFunc-13, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//K2-SeqMINFunc-14, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//K2-SeqMINFunc-15, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//K2-SeqMINFunc-15, EXPECTED_RESULT_GOT_ERROR Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//K2-SeqMINFunc-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//K2-SeqMINFunc-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//K2-SeqMINFunc-4, EXPECTED_ERROR_GOT_RESULT @@ -16057,14 +16057,14 @@ Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-min-6, EXPECTED_RESULT_GOT_SAM Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-min-7, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-min-8, EXPECTED_ERROR_GOT_SAME_ERROR Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-min-9, EXPECTED_ERROR_GOT_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindbl1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindbl1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindbl1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindbl1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindbl2args-1, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindbl2args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindbl2args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindbl2args-4, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindbl2args-5, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindbl1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindbl2args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindbl2args-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindbl2args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindbl2args-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindbl2args-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindec1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindec1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindec1args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -16073,14 +16073,14 @@ Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindec2args-2, EXPECTED_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindec2args-3, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindec2args-4, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-mindec2args-5, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-minflt1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-minflt1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-minflt1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-minflt1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-minflt2args-1, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-minflt2args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-minflt2args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-minflt2args-4, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-minflt2args-5, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-minflt1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-minflt2args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-minflt2args-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-minflt2args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-minflt2args-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-minflt2args-5, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-minint1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-minint1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqMINFunc//fn-minint1args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -16185,8 +16185,8 @@ Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//K-SeqSUMFunc-28, EXPECTED_RESULT_ Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//K-SeqSUMFunc-29, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//K-SeqSUMFunc-3, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//K-SeqSUMFunc-30, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//K-SeqSUMFunc-31, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//K-SeqSUMFunc-32, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//K-SeqSUMFunc-31, EXPECTED_RESULT_GOT_FAILURE +Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//K-SeqSUMFunc-32, EXPECTED_RESULT_GOT_FAILURE Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//K-SeqSUMFunc-33, EXPECTED_ERROR_GOT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//K-SeqSUMFunc-4, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//K-SeqSUMFunc-5, EXPECTED_RESULT_GOT_SAME_RESULT @@ -16197,7 +16197,7 @@ Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//K-SeqSUMFunc-9, EXPECTED_RESULT_G Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//K2-SeqSUMFunc-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//K2-SeqSUMFunc-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//K2-SeqSUMFunc-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//K2-SeqSUMFunc-4, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//K2-SeqSUMFunc-4, EXPECTED_RESULT_GOT_ERROR Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sum-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sum-10, EXPECTED_ERROR_GOT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sum-2, EXPECTED_RESULT_GOT_SAME_RESULT @@ -16208,17 +16208,17 @@ Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sum-6, EXPECTED_RESULT_GOT_SAM Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sum-7, EXPECTED_ERROR_GOT_SAME_ERROR Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sum-8, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sum-9, EXPECTED_ERROR_GOT_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdbl1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdbl1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdbl1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdbl1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdbl2args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdbl1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdbl2args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdbl2args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdbl2args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdbl2args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdbl2args-4, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdbl3args-1, EXPECTED_ERROR_GOT_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdbl3args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdbl3args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdbl3args-4, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdbl3args-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdbl3args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdbl3args-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdbl3args-5, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdbl3args-6, EXPECTED_ERROR_GOT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdec1args-1, EXPECTED_RESULT_GOT_SAME_RESULT @@ -16232,17 +16232,17 @@ Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdec3args-1, EXPECTED_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdec3args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdec3args-3, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumdec3args-4, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt2args-1, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt2args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt2args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt2args-4, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt2args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt2args-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt2args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt2args-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt3args-1, EXPECTED_ERROR_GOT_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt3args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt3args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt3args-4, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt3args-2, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt3args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt3args-4, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt3args-5, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumflt3args-6, EXPECTED_ERROR_GOT_RESULT Functions/SeqFunc/AggregateSeqFunc/SeqSUMFunc//fn-sumint1args-1, EXPECTED_RESULT_GOT_SAME_RESULT @@ -16384,15 +16384,15 @@ Functions/SeqFunc/CardinalitySeqFunc/SeqExactlyOneFunc//K-SeqExactlyOneFunc-7, E Functions/SeqFunc/CardinalitySeqFunc/SeqExactlyOneFunc//K-SeqExactlyOneFunc-8, EXPECTED_ERROR_GOT_SAME_ERROR Functions/SeqFunc/CardinalitySeqFunc/SeqExactlyOneFunc//K-SeqExactlyOneFunc-9, EXPECTED_ERROR_GOT_SAME_ERROR Functions/SeqFunc/CardinalitySeqFunc/SeqExactlyOneFunc//fn-exactly-one-1, EXPECTED_ERROR_GOT_SAME_ERROR -Functions/SeqFunc/CardinalitySeqFunc/SeqExactlyOneFunc//fn-exactly-onedbl1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/CardinalitySeqFunc/SeqExactlyOneFunc//fn-exactly-onedbl1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqExactlyOneFunc//fn-exactly-onedbl1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/CardinalitySeqFunc/SeqExactlyOneFunc//fn-exactly-onedbl1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/CardinalitySeqFunc/SeqExactlyOneFunc//fn-exactly-onedbl1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqExactlyOneFunc//fn-exactly-onedec1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqExactlyOneFunc//fn-exactly-onedec1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqExactlyOneFunc//fn-exactly-onedec1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/CardinalitySeqFunc/SeqExactlyOneFunc//fn-exactly-oneflt1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/CardinalitySeqFunc/SeqExactlyOneFunc//fn-exactly-oneflt1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqExactlyOneFunc//fn-exactly-oneflt1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/CardinalitySeqFunc/SeqExactlyOneFunc//fn-exactly-oneflt1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/CardinalitySeqFunc/SeqExactlyOneFunc//fn-exactly-oneflt1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqExactlyOneFunc//fn-exactly-oneint1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqExactlyOneFunc//fn-exactly-oneint1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqExactlyOneFunc//fn-exactly-oneint1args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -16433,15 +16433,15 @@ Functions/SeqFunc/CardinalitySeqFunc/SeqOneOrMoreFunc//K-SeqOneOrMoreFunc-7, EXP Functions/SeqFunc/CardinalitySeqFunc/SeqOneOrMoreFunc//K-SeqOneOrMoreFunc-8, EXPECTED_ERROR_GOT_SAME_ERROR Functions/SeqFunc/CardinalitySeqFunc/SeqOneOrMoreFunc//K2-SeqOneOrMoreFunc-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqOneOrMoreFunc//fn-one-or-more-1, EXPECTED_ERROR_GOT_SAME_ERROR -Functions/SeqFunc/CardinalitySeqFunc/SeqOneOrMoreFunc//fn-one-or-moredbl1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/CardinalitySeqFunc/SeqOneOrMoreFunc//fn-one-or-moredbl1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqOneOrMoreFunc//fn-one-or-moredbl1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/CardinalitySeqFunc/SeqOneOrMoreFunc//fn-one-or-moredbl1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/CardinalitySeqFunc/SeqOneOrMoreFunc//fn-one-or-moredbl1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqOneOrMoreFunc//fn-one-or-moredec1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqOneOrMoreFunc//fn-one-or-moredec1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqOneOrMoreFunc//fn-one-or-moredec1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/CardinalitySeqFunc/SeqOneOrMoreFunc//fn-one-or-moreflt1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/CardinalitySeqFunc/SeqOneOrMoreFunc//fn-one-or-moreflt1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqOneOrMoreFunc//fn-one-or-moreflt1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/CardinalitySeqFunc/SeqOneOrMoreFunc//fn-one-or-moreflt1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/CardinalitySeqFunc/SeqOneOrMoreFunc//fn-one-or-moreflt1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqOneOrMoreFunc//fn-one-or-moreint1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqOneOrMoreFunc//fn-one-or-moreint1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqOneOrMoreFunc//fn-one-or-moreint1args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -16481,15 +16481,15 @@ Functions/SeqFunc/CardinalitySeqFunc/SeqZeroOrOneFunc//K-SeqZeroOrOneFunc-6, EXP Functions/SeqFunc/CardinalitySeqFunc/SeqZeroOrOneFunc//K-SeqZeroOrOneFunc-7, EXPECTED_ERROR_GOT_SAME_ERROR Functions/SeqFunc/CardinalitySeqFunc/SeqZeroOrOneFunc//K-SeqZeroOrOneFunc-8, EXPECTED_ERROR_GOT_SAME_ERROR Functions/SeqFunc/CardinalitySeqFunc/SeqZeroOrOneFunc//fn-zero-or-one-1, EXPECTED_ERROR_GOT_SAME_ERROR -Functions/SeqFunc/CardinalitySeqFunc/SeqZeroOrOneFunc//fn-zero-or-onedbl1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/CardinalitySeqFunc/SeqZeroOrOneFunc//fn-zero-or-onedbl1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqZeroOrOneFunc//fn-zero-or-onedbl1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/CardinalitySeqFunc/SeqZeroOrOneFunc//fn-zero-or-onedbl1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/CardinalitySeqFunc/SeqZeroOrOneFunc//fn-zero-or-onedbl1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqZeroOrOneFunc//fn-zero-or-onedec1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqZeroOrOneFunc//fn-zero-or-onedec1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqZeroOrOneFunc//fn-zero-or-onedec1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/CardinalitySeqFunc/SeqZeroOrOneFunc//fn-zero-or-oneflt1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/CardinalitySeqFunc/SeqZeroOrOneFunc//fn-zero-or-oneflt1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqZeroOrOneFunc//fn-zero-or-oneflt1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/CardinalitySeqFunc/SeqZeroOrOneFunc//fn-zero-or-oneflt1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/CardinalitySeqFunc/SeqZeroOrOneFunc//fn-zero-or-oneflt1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqZeroOrOneFunc//fn-zero-or-oneint1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqZeroOrOneFunc//fn-zero-or-oneint1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/CardinalitySeqFunc/SeqZeroOrOneFunc//fn-zero-or-oneint1args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -16658,7 +16658,7 @@ Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//K-SeqDistinctValuesFunc- Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//K-SeqDistinctValuesFunc-8, EXPECTED_ERROR_GOT_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//K-SeqDistinctValuesFunc-9, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//K2-SeqDistinctValuesFunc-1, EXPECTED_ERROR_GOT_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-values-1, EXPECTED_RESULT_GOT_ERROR +Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-values-1, EXPECTED_RESULT_GOT_FAILURE Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-values-mixed-args-001, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-values-mixed-args-002, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-values-mixed-args-003, EXPECTED_RESULT_GOT_DIFFERENT_RESULT @@ -16691,15 +16691,15 @@ Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-values-mixed Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-values-mixed-args-030, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-values-mixed-args-031, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-values-mixed-args-032, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-valuesdbl1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-valuesdbl1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-valuesdbl1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-valuesdbl1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-valuesdbl1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-valuesdec1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-valuesdec1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-valuesdec1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-valuesflt1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-valuesflt1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-valuesflt1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-valuesflt1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-valuesflt1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-valuesint1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-valuesint1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqDistinctValuesFunc//fn-distinct-valuesint1args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -16886,12 +16886,12 @@ Functions/SeqFunc/GeneralSeqFunc/SeqInsertBeforeFunc//K-SeqInsertBeforeFunc-13, Functions/SeqFunc/GeneralSeqFunc/SeqInsertBeforeFunc//K-SeqInsertBeforeFunc-14, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqInsertBeforeFunc//K-SeqInsertBeforeFunc-15, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqInsertBeforeFunc//K-SeqInsertBeforeFunc-16, EXPECTED_ERROR_GOT_SAME_ERROR -Functions/SeqFunc/GeneralSeqFunc/SeqInsertBeforeFunc//K-SeqInsertBeforeFunc-17, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqInsertBeforeFunc//K-SeqInsertBeforeFunc-18, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqInsertBeforeFunc//K-SeqInsertBeforeFunc-19, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/GeneralSeqFunc/SeqInsertBeforeFunc//K-SeqInsertBeforeFunc-17, EXPECTED_RESULT_GOT_FAILURE +Functions/SeqFunc/GeneralSeqFunc/SeqInsertBeforeFunc//K-SeqInsertBeforeFunc-18, EXPECTED_RESULT_GOT_FAILURE +Functions/SeqFunc/GeneralSeqFunc/SeqInsertBeforeFunc//K-SeqInsertBeforeFunc-19, EXPECTED_RESULT_GOT_FAILURE Functions/SeqFunc/GeneralSeqFunc/SeqInsertBeforeFunc//K-SeqInsertBeforeFunc-2, EXPECTED_ERROR_GOT_SAME_ERROR -Functions/SeqFunc/GeneralSeqFunc/SeqInsertBeforeFunc//K-SeqInsertBeforeFunc-20, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqInsertBeforeFunc//K-SeqInsertBeforeFunc-21, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/GeneralSeqFunc/SeqInsertBeforeFunc//K-SeqInsertBeforeFunc-20, EXPECTED_RESULT_GOT_FAILURE +Functions/SeqFunc/GeneralSeqFunc/SeqInsertBeforeFunc//K-SeqInsertBeforeFunc-21, EXPECTED_RESULT_GOT_FAILURE Functions/SeqFunc/GeneralSeqFunc/SeqInsertBeforeFunc//K-SeqInsertBeforeFunc-3, EXPECTED_ERROR_GOT_SAME_ERROR Functions/SeqFunc/GeneralSeqFunc/SeqInsertBeforeFunc//K-SeqInsertBeforeFunc-4, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/SeqFunc/GeneralSeqFunc/SeqInsertBeforeFunc//K-SeqInsertBeforeFunc-5, EXPECTED_RESULT_GOT_SAME_RESULT @@ -16926,16 +16926,16 @@ Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-12, EXPECTED_RES Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-13, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-14, EXPECTED_ERROR_GOT_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-15, EXPECTED_ERROR_GOT_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-16, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-16, EXPECTED_ERROR_GOT_FAILURE Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-17, EXPECTED_ERROR_GOT_SAME_ERROR Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-18, EXPECTED_ERROR_GOT_SAME_ERROR Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-19, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-2, EXPECTED_ERROR_GOT_SAME_ERROR Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-20, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-21, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-22, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-23, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-24, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-21, EXPECTED_RESULT_GOT_FAILURE +Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-22, EXPECTED_RESULT_GOT_FAILURE +Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-23, EXPECTED_RESULT_GOT_FAILURE +Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-24, EXPECTED_RESULT_GOT_FAILURE Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-3, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-4, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqRemoveFunc//K-SeqRemoveFunc-5, EXPECTED_ERROR_GOT_RESULT @@ -16970,19 +16970,19 @@ Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-12, EXPECTED_R Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-13, EXPECTED_RESULT_GOT_ERROR Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-14, EXPECTED_RESULT_GOT_ERROR Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-15, EXPECTED_ERROR_GOT_SAME_ERROR -Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-16, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-17, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-18, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-19, EXPECTED_RESULT_GOT_ERROR +Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-16, EXPECTED_RESULT_GOT_FAILURE +Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-17, EXPECTED_RESULT_GOT_FAILURE +Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-18, EXPECTED_RESULT_GOT_FAILURE +Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-19, EXPECTED_RESULT_GOT_FAILURE Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-2, EXPECTED_ERROR_GOT_SAME_ERROR -Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-20, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-21, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-20, EXPECTED_RESULT_GOT_FAILURE +Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-21, EXPECTED_RESULT_GOT_FAILURE Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-3, EXPECTED_ERROR_GOT_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-4, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-5, EXPECTED_ERROR_GOT_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-6, EXPECTED_ERROR_GOT_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-7, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-8, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-8, EXPECTED_RESULT_GOT_FAILURE Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K-SeqReverseFunc-9, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K2-SeqReverseFunc-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K2-SeqReverseFunc-2, EXPECTED_RESULT_GOT_ERROR @@ -16990,15 +16990,15 @@ Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K2-SeqReverseFunc-3, EXPECTED_R Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K2-SeqReverseFunc-4, EXPECTED_ERROR_GOT_SAME_ERROR Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K2-SeqReverseFunc-5, EXPECTED_ERROR_GOT_SAME_ERROR Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//K2-SeqReverseFunc-6, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//fn-reversedbl1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//fn-reversedbl1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//fn-reversedbl1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//fn-reversedbl1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//fn-reversedbl1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//fn-reversedec1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//fn-reversedec1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//fn-reversedec1args-3, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//fn-reverseflt1args-1, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//fn-reverseflt1args-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//fn-reverseflt1args-2, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//fn-reverseflt1args-3, EXPECTED_RESULT_GOT_SAME_RESULT +Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//fn-reverseflt1args-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//fn-reverseint1args-1, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//fn-reverseint1args-2, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqReverseFunc//fn-reverseint1args-3, EXPECTED_RESULT_GOT_SAME_RESULT @@ -17063,11 +17063,11 @@ Functions/SeqFunc/GeneralSeqFunc/SeqSubsequenceFunc//K-SeqSubsequenceFunc-37, EX Functions/SeqFunc/GeneralSeqFunc/SeqSubsequenceFunc//K-SeqSubsequenceFunc-38, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqSubsequenceFunc//K-SeqSubsequenceFunc-39, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqSubsequenceFunc//K-SeqSubsequenceFunc-4, EXPECTED_ERROR_GOT_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqSubsequenceFunc//K-SeqSubsequenceFunc-40, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqSubsequenceFunc//K-SeqSubsequenceFunc-41, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqSubsequenceFunc//K-SeqSubsequenceFunc-42, EXPECTED_RESULT_GOT_SAME_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqSubsequenceFunc//K-SeqSubsequenceFunc-43, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -Functions/SeqFunc/GeneralSeqFunc/SeqSubsequenceFunc//K-SeqSubsequenceFunc-44, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +Functions/SeqFunc/GeneralSeqFunc/SeqSubsequenceFunc//K-SeqSubsequenceFunc-40, EXPECTED_RESULT_GOT_FAILURE +Functions/SeqFunc/GeneralSeqFunc/SeqSubsequenceFunc//K-SeqSubsequenceFunc-41, EXPECTED_RESULT_GOT_FAILURE +Functions/SeqFunc/GeneralSeqFunc/SeqSubsequenceFunc//K-SeqSubsequenceFunc-42, EXPECTED_RESULT_GOT_FAILURE +Functions/SeqFunc/GeneralSeqFunc/SeqSubsequenceFunc//K-SeqSubsequenceFunc-43, EXPECTED_RESULT_GOT_FAILURE +Functions/SeqFunc/GeneralSeqFunc/SeqSubsequenceFunc//K-SeqSubsequenceFunc-44, EXPECTED_RESULT_GOT_FAILURE Functions/SeqFunc/GeneralSeqFunc/SeqSubsequenceFunc//K-SeqSubsequenceFunc-5, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqSubsequenceFunc//K-SeqSubsequenceFunc-6, EXPECTED_RESULT_GOT_SAME_RESULT Functions/SeqFunc/GeneralSeqFunc/SeqSubsequenceFunc//K-SeqSubsequenceFunc-7, EXPECTED_RESULT_GOT_SAME_RESULT @@ -17168,15 +17168,15 @@ Functions/SeqFunc/NodeSeqFunc/SeqDocFunc//K2-SeqDocFunc-8, EXPECTED_ERROR_GOT_DI Functions/SeqFunc/NodeSeqFunc/SeqDocFunc//K2-SeqDocFunc-9, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/SeqFunc/NodeSeqFunc/SeqIDFunc//K2-SeqIDFunc-1, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/SeqFunc/NodeSeqFunc/SeqIDFunc//K2-SeqIDFunc-10, EXPECTED_RESULT_GOT_ERROR -Functions/SeqFunc/NodeSeqFunc/SeqIDFunc//K2-SeqIDFunc-11, EXPECTED_RESULT_GOT_ERROR -Functions/SeqFunc/NodeSeqFunc/SeqIDFunc//K2-SeqIDFunc-12, EXPECTED_RESULT_GOT_ERROR +Functions/SeqFunc/NodeSeqFunc/SeqIDFunc//K2-SeqIDFunc-11, EXPECTED_RESULT_GOT_FAILURE +Functions/SeqFunc/NodeSeqFunc/SeqIDFunc//K2-SeqIDFunc-12, EXPECTED_RESULT_GOT_FAILURE Functions/SeqFunc/NodeSeqFunc/SeqIDFunc//K2-SeqIDFunc-13, EXPECTED_RESULT_GOT_FAILURE Functions/SeqFunc/NodeSeqFunc/SeqIDFunc//K2-SeqIDFunc-2, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/SeqFunc/NodeSeqFunc/SeqIDFunc//K2-SeqIDFunc-3, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/SeqFunc/NodeSeqFunc/SeqIDFunc//K2-SeqIDFunc-4, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/SeqFunc/NodeSeqFunc/SeqIDFunc//K2-SeqIDFunc-5, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/SeqFunc/NodeSeqFunc/SeqIDFunc//K2-SeqIDFunc-6, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Functions/SeqFunc/NodeSeqFunc/SeqIDFunc//K2-SeqIDFunc-7, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +Functions/SeqFunc/NodeSeqFunc/SeqIDFunc//K2-SeqIDFunc-7, EXPECTED_ERROR_GOT_FAILURE Functions/SeqFunc/NodeSeqFunc/SeqIDFunc//K2-SeqIDFunc-8, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Functions/SeqFunc/NodeSeqFunc/SeqIDFunc//K2-SeqIDFunc-9, EXPECTED_RESULT_GOT_ERROR Functions/SeqFunc/NodeSeqFunc/SeqIDREFFunc//K2-SeqIDREFFunc-1, EXPECTED_ERROR_GOT_DIFFERENT_ERROR @@ -17495,7 +17495,7 @@ Operators/ArithExpr/NumericOpr/NumericDivide//K2-NumericDivide-13, EXPECTED_RESU Operators/ArithExpr/NumericOpr/NumericDivide//K2-NumericDivide-14, EXPECTED_RESULT_GOT_SAME_RESULT Operators/ArithExpr/NumericOpr/NumericDivide//K2-NumericDivide-15, EXPECTED_RESULT_GOT_SAME_RESULT Operators/ArithExpr/NumericOpr/NumericDivide//K2-NumericDivide-16, EXPECTED_RESULT_GOT_SAME_RESULT -Operators/ArithExpr/NumericOpr/NumericDivide//K2-NumericDivide-17, EXPECTED_RESULT_GOT_SAME_RESULT +Operators/ArithExpr/NumericOpr/NumericDivide//K2-NumericDivide-17, EXPECTED_RESULT_GOT_FAILURE Operators/ArithExpr/NumericOpr/NumericDivide//K2-NumericDivide-2, EXPECTED_ERROR_GOT_SAME_ERROR Operators/ArithExpr/NumericOpr/NumericDivide//K2-NumericDivide-3, EXPECTED_ERROR_GOT_SAME_ERROR Operators/ArithExpr/NumericOpr/NumericDivide//K2-NumericDivide-4, EXPECTED_ERROR_GOT_SAME_ERROR @@ -17570,7 +17570,7 @@ Operators/ArithExpr/NumericOpr/NumericMod//K2-NumericMod-59, EXPECTED_ERROR_GOT_ Operators/ArithExpr/NumericOpr/NumericMod//K2-NumericMod-6, EXPECTED_RESULT_GOT_ERROR Operators/ArithExpr/NumericOpr/NumericMod//K2-NumericMod-60, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Operators/ArithExpr/NumericOpr/NumericMod//K2-NumericMod-61, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -Operators/ArithExpr/NumericOpr/NumericMod//K2-NumericMod-62, EXPECTED_RESULT_GOT_SAME_RESULT +Operators/ArithExpr/NumericOpr/NumericMod//K2-NumericMod-62, EXPECTED_RESULT_GOT_FAILURE Operators/ArithExpr/NumericOpr/NumericMod//K2-NumericMod-7, EXPECTED_ERROR_GOT_SAME_ERROR Operators/ArithExpr/NumericOpr/NumericMod//K2-NumericMod-8, EXPECTED_ERROR_GOT_SAME_ERROR Operators/ArithExpr/NumericOpr/NumericMod//K2-NumericMod-9, EXPECTED_RESULT_GOT_SAME_RESULT @@ -17604,7 +17604,7 @@ Operators/CompExpr/GenComprsn/GenCompLT//K2-GenCompLT-5, EXPECTED_RESULT_GOT_SAM Operators/CompExpr/GenComprsn/GenCompLT//K2-GenCompLT-6, EXPECTED_RESULT_GOT_SAME_RESULT Operators/CompExpr/GenComprsn/GenCompLT//K2-GenCompLT-7, EXPECTED_RESULT_GOT_SAME_RESULT Operators/CompExpr/GenComprsn/GenCompLT//K2-GenCompLT-8, EXPECTED_RESULT_GOT_SAME_RESULT -Operators/CompExpr/NodeComp/NodeSame//K2-NodeSame-1, EXPECTED_RESULT_GOT_ERROR +Operators/CompExpr/NodeComp/NodeSame//K2-NodeSame-1, EXPECTED_RESULT_GOT_FAILURE Operators/CompExpr/NodeComp/NodeSame//K2-NodeSame-2, EXPECTED_RESULT_GOT_ERROR Operators/CompExpr/NodeComp/NodeSame//K2-NodeSame-3, EXPECTED_RESULT_GOT_ERROR Operators/CompExpr/NodeComp/NodeSame//K2-NodeSame-4, EXPECTED_RESULT_GOT_ERROR @@ -17695,9 +17695,9 @@ Operators/SeqOp/SeqExcept//K2-SeqExcept-35, EXPECTED_RESULT_GOT_ERROR Operators/SeqOp/SeqExcept//K2-SeqExcept-36, EXPECTED_RESULT_GOT_ERROR Operators/SeqOp/SeqExcept//K2-SeqExcept-37, EXPECTED_RESULT_GOT_ERROR Operators/SeqOp/SeqExcept//K2-SeqExcept-38, EXPECTED_RESULT_GOT_ERROR -Operators/SeqOp/SeqExcept//K2-SeqExcept-39, EXPECTED_RESULT_GOT_ERROR +Operators/SeqOp/SeqExcept//K2-SeqExcept-39, EXPECTED_RESULT_GOT_FAILURE Operators/SeqOp/SeqExcept//K2-SeqExcept-4, EXPECTED_RESULT_GOT_ERROR -Operators/SeqOp/SeqExcept//K2-SeqExcept-40, EXPECTED_RESULT_GOT_ERROR +Operators/SeqOp/SeqExcept//K2-SeqExcept-40, EXPECTED_RESULT_GOT_FAILURE Operators/SeqOp/SeqExcept//K2-SeqExcept-41, EXPECTED_RESULT_GOT_ERROR Operators/SeqOp/SeqExcept//K2-SeqExcept-42, EXPECTED_RESULT_GOT_ERROR Operators/SeqOp/SeqExcept//K2-SeqExcept-5, EXPECTED_RESULT_GOT_ERROR @@ -17737,9 +17737,9 @@ Operators/SeqOp/SeqIntersect//K2-SeqIntersect-35, EXPECTED_RESULT_GOT_ERROR Operators/SeqOp/SeqIntersect//K2-SeqIntersect-36, EXPECTED_RESULT_GOT_ERROR Operators/SeqOp/SeqIntersect//K2-SeqIntersect-37, EXPECTED_RESULT_GOT_ERROR Operators/SeqOp/SeqIntersect//K2-SeqIntersect-38, EXPECTED_RESULT_GOT_ERROR -Operators/SeqOp/SeqIntersect//K2-SeqIntersect-39, EXPECTED_RESULT_GOT_ERROR +Operators/SeqOp/SeqIntersect//K2-SeqIntersect-39, EXPECTED_RESULT_GOT_FAILURE Operators/SeqOp/SeqIntersect//K2-SeqIntersect-4, EXPECTED_RESULT_GOT_ERROR -Operators/SeqOp/SeqIntersect//K2-SeqIntersect-40, EXPECTED_RESULT_GOT_ERROR +Operators/SeqOp/SeqIntersect//K2-SeqIntersect-40, EXPECTED_RESULT_GOT_FAILURE Operators/SeqOp/SeqIntersect//K2-SeqIntersect-41, EXPECTED_RESULT_GOT_ERROR Operators/SeqOp/SeqIntersect//K2-SeqIntersect-42, EXPECTED_RESULT_GOT_ERROR Operators/SeqOp/SeqIntersect//K2-SeqIntersect-43, EXPECTED_ERROR_GOT_DIFFERENT_ERROR @@ -17786,9 +17786,9 @@ Operators/SeqOp/SeqUnion//K2-SeqUnion-4, EXPECTED_RESULT_GOT_ERROR Operators/SeqOp/SeqUnion//K2-SeqUnion-40, EXPECTED_RESULT_GOT_ERROR Operators/SeqOp/SeqUnion//K2-SeqUnion-41, EXPECTED_RESULT_GOT_ERROR Operators/SeqOp/SeqUnion//K2-SeqUnion-42, EXPECTED_RESULT_GOT_ERROR -Operators/SeqOp/SeqUnion//K2-SeqUnion-43, EXPECTED_RESULT_GOT_ERROR -Operators/SeqOp/SeqUnion//K2-SeqUnion-44, EXPECTED_RESULT_GOT_ERROR -Operators/SeqOp/SeqUnion//K2-SeqUnion-45, EXPECTED_RESULT_GOT_ERROR +Operators/SeqOp/SeqUnion//K2-SeqUnion-43, EXPECTED_RESULT_GOT_FAILURE +Operators/SeqOp/SeqUnion//K2-SeqUnion-44, EXPECTED_RESULT_GOT_FAILURE +Operators/SeqOp/SeqUnion//K2-SeqUnion-45, EXPECTED_RESULT_GOT_FAILURE Operators/SeqOp/SeqUnion//K2-SeqUnion-46, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Operators/SeqOp/SeqUnion//K2-SeqUnion-47, EXPECTED_ERROR_GOT_DIFFERENT_ERROR Operators/SeqOp/SeqUnion//K2-SeqUnion-5, EXPECTED_ERROR_GOT_DIFFERENT_ERROR @@ -17890,14 +17890,14 @@ OptionalFeatureErrors/CombinedErrorCodes//K-CombinedErrorCodes-9, EXPECTED_ERROR OptionalFeatureErrors/CombinedErrorCodes//combined-errors-1, EXPECTED_ERROR_GOT_RESULT OptionalFeatureErrors/CombinedErrorCodes//combined-errors-2, EXPECTED_ERROR_GOT_RESULT OptionalFeatureErrors/CombinedErrorCodes//combined-errors-3, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -OptionalFeatureErrors/CombinedErrorCodes//combined-errors-4, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +OptionalFeatureErrors/CombinedErrorCodes//combined-errors-4, EXPECTED_ERROR_GOT_FAILURE PathExpr/AbbrAxes//K2-AbbrAxes-1, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -PathExpr/Predicates//K2-Predicates-1, EXPECTED_RESULT_GOT_SAME_RESULT +PathExpr/Predicates//K2-Predicates-1, EXPECTED_RESULT_GOT_FAILURE PathExpr/Predicates//K2-Predicates-2, EXPECTED_RESULT_GOT_FAILURE PathExpr/Predicates//K2-Predicates-3, EXPECTED_RESULT_GOT_FAILURE PathExpr/Predicates//K2-Predicates-4, EXPECTED_RESULT_GOT_FAILURE -PathExpr/Predicates//K2-Predicates-5, EXPECTED_RESULT_GOT_SAME_RESULT -PathExpr/Predicates//K2-Predicates-6, EXPECTED_RESULT_GOT_SAME_RESULT +PathExpr/Predicates//K2-Predicates-5, EXPECTED_RESULT_GOT_FAILURE +PathExpr/Predicates//K2-Predicates-6, EXPECTED_RESULT_GOT_FAILURE PathExpr/Predicates//K2-Predicates-7, EXPECTED_RESULT_GOT_FAILURE PathExpr/Predicates//K2-Predicates-8, EXPECTED_RESULT_GOT_ERROR PathExpr/Predicates//K2-Predicates-9, EXPECTED_RESULT_GOT_ERROR @@ -17905,11 +17905,11 @@ PathExpr/Steps//K2-Steps-1, EXPECTED_ERROR_GOT_DIFFERENT_ERROR PathExpr/Steps//K2-Steps-10, EXPECTED_ERROR_GOT_FAILURE PathExpr/Steps//K2-Steps-11, EXPECTED_ERROR_GOT_SAME_ERROR PathExpr/Steps//K2-Steps-12, EXPECTED_ERROR_GOT_FAILURE -PathExpr/Steps//K2-Steps-13, EXPECTED_RESULT_GOT_SAME_RESULT +PathExpr/Steps//K2-Steps-13, EXPECTED_RESULT_GOT_FAILURE PathExpr/Steps//K2-Steps-14, EXPECTED_ERROR_GOT_RESULT -PathExpr/Steps//K2-Steps-15, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -PathExpr/Steps//K2-Steps-16, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -PathExpr/Steps//K2-Steps-17, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +PathExpr/Steps//K2-Steps-15, EXPECTED_RESULT_GOT_ERROR +PathExpr/Steps//K2-Steps-16, EXPECTED_RESULT_GOT_ERROR +PathExpr/Steps//K2-Steps-17, EXPECTED_RESULT_GOT_ERROR PathExpr/Steps//K2-Steps-18, EXPECTED_RESULT_GOT_FAILURE PathExpr/Steps//K2-Steps-19, EXPECTED_RESULT_GOT_DIFFERENT_RESULT PathExpr/Steps//K2-Steps-2, EXPECTED_ERROR_GOT_DIFFERENT_ERROR @@ -17931,7 +17931,7 @@ PathExpr/Steps//K2-Steps-33, EXPECTED_RESULT_GOT_ERROR PathExpr/Steps//K2-Steps-34, EXPECTED_RESULT_GOT_ERROR PathExpr/Steps//K2-Steps-35, EXPECTED_RESULT_GOT_FAILURE PathExpr/Steps//K2-Steps-4, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -PathExpr/Steps//K2-Steps-5, EXPECTED_RESULT_GOT_SAME_RESULT +PathExpr/Steps//K2-Steps-5, EXPECTED_RESULT_GOT_FAILURE PathExpr/Steps//K2-Steps-6, EXPECTED_RESULT_GOT_SAME_RESULT PathExpr/Steps//K2-Steps-7, EXPECTED_RESULT_GOT_SAME_RESULT PathExpr/Steps//K2-Steps-8, EXPECTED_ERROR_GOT_DIFFERENT_ERROR @@ -17961,8 +17961,8 @@ PathExpr/Steps//Steps-leading-lone-slash-8a, EXPECTED_RESULT_GOT_FAILURE PathExpr/Steps//Steps-leading-lone-slash-9, EXPECTED_ERROR_GOT_SAME_ERROR PathExpr/Steps/Axes//K2-Axes-1, EXPECTED_RESULT_GOT_ERROR PathExpr/Steps/Axes//K2-Axes-10, EXPECTED_ERROR_GOT_SAME_ERROR -PathExpr/Steps/Axes//K2-Axes-100, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -PathExpr/Steps/Axes//K2-Axes-101, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +PathExpr/Steps/Axes//K2-Axes-100, EXPECTED_ERROR_GOT_FAILURE +PathExpr/Steps/Axes//K2-Axes-101, EXPECTED_ERROR_GOT_FAILURE PathExpr/Steps/Axes//K2-Axes-102, EXPECTED_RESULT_GOT_FAILURE PathExpr/Steps/Axes//K2-Axes-103, EXPECTED_RESULT_GOT_FAILURE PathExpr/Steps/Axes//K2-Axes-104, EXPECTED_RESULT_GOT_SAME_RESULT @@ -18012,7 +18012,7 @@ PathExpr/Steps/Axes//K2-Axes-5, EXPECTED_ERROR_GOT_SAME_ERROR PathExpr/Steps/Axes//K2-Axes-50, EXPECTED_ERROR_GOT_RESULT PathExpr/Steps/Axes//K2-Axes-51, EXPECTED_ERROR_GOT_DIFFERENT_ERROR PathExpr/Steps/Axes//K2-Axes-52, EXPECTED_ERROR_GOT_FAILURE -PathExpr/Steps/Axes//K2-Axes-53, EXPECTED_ERROR_GOT_RESULT +PathExpr/Steps/Axes//K2-Axes-53, EXPECTED_ERROR_GOT_FAILURE PathExpr/Steps/Axes//K2-Axes-54, EXPECTED_ERROR_GOT_SAME_ERROR PathExpr/Steps/Axes//K2-Axes-55, EXPECTED_ERROR_GOT_RESULT PathExpr/Steps/Axes//K2-Axes-56, EXPECTED_ERROR_GOT_RESULT @@ -18055,7 +18055,7 @@ PathExpr/Steps/Axes//K2-Axes-89, EXPECTED_RESULT_GOT_ERROR PathExpr/Steps/Axes//K2-Axes-9, EXPECTED_ERROR_GOT_SAME_ERROR PathExpr/Steps/Axes//K2-Axes-90, EXPECTED_ERROR_GOT_SAME_ERROR PathExpr/Steps/Axes//K2-Axes-91, EXPECTED_ERROR_GOT_SAME_ERROR -PathExpr/Steps/Axes//K2-Axes-92, EXPECTED_ERROR_GOT_RESULT +PathExpr/Steps/Axes//K2-Axes-92, EXPECTED_ERROR_GOT_FAILURE PathExpr/Steps/Axes//K2-Axes-93, EXPECTED_ERROR_GOT_SAME_ERROR PathExpr/Steps/Axes//K2-Axes-94, EXPECTED_ERROR_GOT_FAILURE PathExpr/Steps/Axes//K2-Axes-95, EXPECTED_ERROR_GOT_SAME_ERROR @@ -18088,7 +18088,7 @@ PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-29, EXPECTED_ERROR_GOT_SAME PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-3, EXPECTED_ERROR_GOT_SAME_ERROR PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-30, EXPECTED_RESULT_GOT_DIFFERENT_RESULT PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-31, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-32, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-32, EXPECTED_RESULT_GOT_FAILURE PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-33, EXPECTED_ERROR_GOT_SAME_ERROR PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-34, EXPECTED_ERROR_GOT_SAME_ERROR PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-35, EXPECTED_ERROR_GOT_FAILURE @@ -18122,12 +18122,12 @@ PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-6, EXPECTED_ERROR_GOT_SAME_ PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-60, EXPECTED_ERROR_GOT_FAILURE PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-61, EXPECTED_ERROR_GOT_FAILURE PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-62, EXPECTED_ERROR_GOT_FAILURE -PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-63, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-64, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-65, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-63, EXPECTED_RESULT_GOT_FAILURE +PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-64, EXPECTED_RESULT_GOT_FAILURE +PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-65, EXPECTED_RESULT_GOT_FAILURE PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-66, EXPECTED_ERROR_GOT_SAME_ERROR PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-67, EXPECTED_ERROR_GOT_SAME_ERROR -PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-68, EXPECTED_ERROR_GOT_RESULT +PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-68, EXPECTED_ERROR_GOT_FAILURE PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-69, EXPECTED_ERROR_GOT_DIFFERENT_ERROR PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-7, EXPECTED_ERROR_GOT_SAME_ERROR PathExpr/Steps/NodeTestSection/NameTest//K2-NameTest-70, EXPECTED_ERROR_GOT_DIFFERENT_ERROR @@ -18185,12 +18185,12 @@ PathExpr/Steps/NodeTestSection/NodeTest//K2-NodeTest-35, EXPECTED_ERROR_GOT_DIFF PathExpr/Steps/NodeTestSection/NodeTest//K2-NodeTest-36, EXPECTED_ERROR_GOT_DIFFERENT_ERROR PathExpr/Steps/NodeTestSection/NodeTest//K2-NodeTest-37, EXPECTED_ERROR_GOT_DIFFERENT_ERROR PathExpr/Steps/NodeTestSection/NodeTest//K2-NodeTest-38, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -PathExpr/Steps/NodeTestSection/NodeTest//K2-NodeTest-39, EXPECTED_ERROR_GOT_RESULT +PathExpr/Steps/NodeTestSection/NodeTest//K2-NodeTest-39, EXPECTED_ERROR_GOT_DIFFERENT_ERROR PathExpr/Steps/NodeTestSection/NodeTest//K2-NodeTest-4, EXPECTED_ERROR_GOT_SAME_ERROR PathExpr/Steps/NodeTestSection/NodeTest//K2-NodeTest-40, EXPECTED_ERROR_GOT_RESULT -PathExpr/Steps/NodeTestSection/NodeTest//K2-NodeTest-41, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -PathExpr/Steps/NodeTestSection/NodeTest//K2-NodeTest-42, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -PathExpr/Steps/NodeTestSection/NodeTest//K2-NodeTest-43, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +PathExpr/Steps/NodeTestSection/NodeTest//K2-NodeTest-41, EXPECTED_RESULT_GOT_FAILURE +PathExpr/Steps/NodeTestSection/NodeTest//K2-NodeTest-42, EXPECTED_RESULT_GOT_FAILURE +PathExpr/Steps/NodeTestSection/NodeTest//K2-NodeTest-43, EXPECTED_RESULT_GOT_FAILURE PathExpr/Steps/NodeTestSection/NodeTest//K2-NodeTest-5, EXPECTED_ERROR_GOT_SAME_ERROR PathExpr/Steps/NodeTestSection/NodeTest//K2-NodeTest-6, EXPECTED_ERROR_GOT_SAME_ERROR PathExpr/Steps/NodeTestSection/NodeTest//K2-NodeTest-7, EXPECTED_ERROR_GOT_SAME_ERROR @@ -18232,44 +18232,44 @@ SchemaImport/MiscFunctions//fn-element-with-id-2, EXPECTED_RESULT_GOT_ERROR SchemaImport/MiscFunctions//fn-element-with-id-3, EXPECTED_RESULT_GOT_ERROR SchemaImport/MiscFunctions//fn-element-with-id-4, EXPECTED_RESULT_GOT_ERROR SchemaImport/MiscFunctions//fn-element-with-id-5, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-id-10, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-id-11, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-id-12, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-id-13, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-id-14, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-id-15, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-id-16, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-id-17, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-id-18, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-id-19, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-id-20, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-id-21, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-id-23, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-id-5, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-id-6, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-id-7, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-id-8, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-id-9, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-idref-10, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-idref-11, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-idref-12, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-idref-13, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-idref-14, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-idref-15, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-idref-16, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-idref-17, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-idref-18, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-idref-19, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-idref-20, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-idref-21, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-idref-23, EXPECTED_RESULT_GOT_ERROR +SchemaImport/MiscFunctions//fn-id-10, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-id-11, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-id-12, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-id-13, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-id-14, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-id-15, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-id-16, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-id-17, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-id-18, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-id-19, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-id-20, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-id-21, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-id-23, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-id-5, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-id-6, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-id-7, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-id-8, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-id-9, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-idref-10, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-idref-11, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-idref-12, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-idref-13, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-idref-14, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-idref-15, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-idref-16, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-idref-17, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-idref-18, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-idref-19, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-idref-20, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-idref-21, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-idref-23, EXPECTED_RESULT_GOT_FAILURE SchemaImport/MiscFunctions//fn-idref-30, EXPECTED_RESULT_GOT_FAILURE SchemaImport/MiscFunctions//fn-idref-31, EXPECTED_RESULT_GOT_FAILURE -SchemaImport/MiscFunctions//fn-idref-5, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-idref-6, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-idref-7, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-idref-8, EXPECTED_RESULT_GOT_ERROR -SchemaImport/MiscFunctions//fn-idref-9, EXPECTED_RESULT_GOT_ERROR +SchemaImport/MiscFunctions//fn-idref-5, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-idref-6, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-idref-7, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-idref-8, EXPECTED_RESULT_GOT_FAILURE +SchemaImport/MiscFunctions//fn-idref-9, EXPECTED_RESULT_GOT_FAILURE SchemaImport/NotationEQSI//Comp-notation-1, EXPECTED_RESULT_GOT_FAILURE SchemaImport/NotationEQSI//Comp-notation-10, EXPECTED_RESULT_GOT_FAILURE SchemaImport/NotationEQSI//Comp-notation-11, EXPECTED_RESULT_GOT_FAILURE @@ -18438,8 +18438,8 @@ SeqExpr/ConstructSeq/RangeExpr//K2-RangeExpr-3, EXPECTED_RESULT_GOT_DIFFERENT_RE SeqExpr/ConstructSeq/RangeExpr//K2-RangeExpr-4, EXPECTED_RESULT_GOT_ERROR SeqExpr/FilterExpr//K2-FilterExpr-1, EXPECTED_RESULT_GOT_FAILURE SeqExpr/FilterExpr//K2-FilterExpr-2, EXPECTED_RESULT_GOT_FAILURE -SeqExpr/FilterExpr//K2-FilterExpr-3, EXPECTED_RESULT_GOT_DIFFERENT_RESULT -SeqExpr/FilterExpr//K2-FilterExpr-4, EXPECTED_ERROR_GOT_RESULT +SeqExpr/FilterExpr//K2-FilterExpr-3, EXPECTED_RESULT_GOT_FAILURE +SeqExpr/FilterExpr//K2-FilterExpr-4, EXPECTED_ERROR_GOT_FAILURE SeqExpr/FilterExpr//K2-FilterExpr-5, EXPECTED_ERROR_GOT_FAILURE SeqExpr/FilterExpr//K2-FilterExpr-6, EXPECTED_RESULT_GOT_FAILURE SeqExpr/FilterExpr//K2-FilterExpr-7, EXPECTED_RESULT_GOT_FAILURE @@ -18452,24 +18452,24 @@ StaticTyping/STFLWORExpr//statictyping-1, EXPECTED_ERROR_GOT_SAME_ERROR StaticTyping/STFLWORExpr//statictyping-10, EXPECTED_ERROR_GOT_SAME_ERROR StaticTyping/STFLWORExpr//statictyping-11, EXPECTED_ERROR_GOT_SAME_ERROR StaticTyping/STFLWORExpr//statictyping-12, EXPECTED_ERROR_GOT_SAME_ERROR -StaticTyping/STFLWORExpr//statictyping-13, EXPECTED_ERROR_GOT_SAME_ERROR -StaticTyping/STFLWORExpr//statictyping-14, EXPECTED_ERROR_GOT_SAME_ERROR -StaticTyping/STFLWORExpr//statictyping-15, EXPECTED_ERROR_GOT_SAME_ERROR -StaticTyping/STFLWORExpr//statictyping-16, EXPECTED_ERROR_GOT_SAME_ERROR -StaticTyping/STFLWORExpr//statictyping-17, EXPECTED_ERROR_GOT_SAME_ERROR -StaticTyping/STFLWORExpr//statictyping-18, EXPECTED_ERROR_GOT_SAME_ERROR -StaticTyping/STFLWORExpr//statictyping-19, EXPECTED_ERROR_GOT_SAME_ERROR +StaticTyping/STFLWORExpr//statictyping-13, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +StaticTyping/STFLWORExpr//statictyping-14, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +StaticTyping/STFLWORExpr//statictyping-15, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +StaticTyping/STFLWORExpr//statictyping-16, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +StaticTyping/STFLWORExpr//statictyping-17, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +StaticTyping/STFLWORExpr//statictyping-18, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +StaticTyping/STFLWORExpr//statictyping-19, EXPECTED_ERROR_GOT_DIFFERENT_ERROR StaticTyping/STFLWORExpr//statictyping-2, EXPECTED_ERROR_GOT_SAME_ERROR -StaticTyping/STFLWORExpr//statictyping-20, EXPECTED_ERROR_GOT_SAME_ERROR +StaticTyping/STFLWORExpr//statictyping-20, EXPECTED_ERROR_GOT_DIFFERENT_ERROR StaticTyping/STFLWORExpr//statictyping-21, EXPECTED_ERROR_GOT_SAME_ERROR StaticTyping/STFLWORExpr//statictyping-22, EXPECTED_ERROR_GOT_RESULT StaticTyping/STFLWORExpr//statictyping-23, EXPECTED_ERROR_GOT_SAME_ERROR -StaticTyping/STFLWORExpr//statictyping-24, EXPECTED_ERROR_GOT_RESULT +StaticTyping/STFLWORExpr//statictyping-24, EXPECTED_ERROR_GOT_DIFFERENT_ERROR StaticTyping/STFLWORExpr//statictyping-3, EXPECTED_ERROR_GOT_DIFFERENT_ERROR StaticTyping/STFLWORExpr//statictyping-4, EXPECTED_ERROR_GOT_DIFFERENT_ERROR StaticTyping/STFLWORExpr//statictyping-5, EXPECTED_ERROR_GOT_DIFFERENT_ERROR StaticTyping/STFLWORExpr//statictyping-6, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -StaticTyping/STFLWORExpr//statictyping-7, EXPECTED_ERROR_GOT_RESULT +StaticTyping/STFLWORExpr//statictyping-7, EXPECTED_ERROR_GOT_DIFFERENT_ERROR StaticTyping/STFLWORExpr//statictyping-8, EXPECTED_ERROR_GOT_SAME_ERROR StaticTyping/STFLWORExpr//statictyping-9, EXPECTED_ERROR_GOT_SAME_ERROR StaticTyping/STFunctions//ST-Data001, EXPECTED_ERROR_GOT_DIFFERENT_ERROR @@ -18502,7 +18502,7 @@ UseCase/UseCaseNS//ns-queries-results-q5, EXPECTED_RESULT_GOT_FAILURE UseCase/UseCaseNS//ns-queries-results-q6, EXPECTED_RESULT_GOT_FAILURE UseCase/UseCaseNS//ns-queries-results-q7, EXPECTED_RESULT_GOT_ERROR UseCase/UseCaseNS//ns-queries-results-q8, EXPECTED_RESULT_GOT_ERROR -UseCase/UseCasePARTS//parts-queries-results-q1, EXPECTED_ERROR_GOT_DIFFERENT_ERROR +UseCase/UseCasePARTS//parts-queries-results-q1, EXPECTED_ERROR_GOT_FAILURE UseCase/UseCaseR//rdb-queries-results-q1, EXPECTED_RESULT_GOT_FAILURE UseCase/UseCaseR//rdb-queries-results-q10, EXPECTED_RESULT_GOT_FAILURE UseCase/UseCaseR//rdb-queries-results-q11, EXPECTED_RESULT_GOT_FAILURE @@ -18564,7 +18564,7 @@ XMLEdition//XML10-4ed-Excluded-char-1, EXPECTED_ERROR_GOT_SAME_ERROR XMLEdition//XML10-4ed-Excluded-char-1, EXPECTED_ERROR_GOT_SAME_ERROR XMLEdition//XML10-5ed-Included-char-1, EXPECTED_RESULT_GOT_DIFFERENT_RESULT XMLEdition//XML11-1ed-Included-char-1, EXPECTED_ERROR_GOT_SAME_ERROR -XMark//XMark-All, EXPECTED_RESULT_GOT_ERROR +XMark//XMark-All, EXPECTED_RESULT_GOT_FAILURE XMark//XMark-Q1, EXPECTED_RESULT_GOT_FAILURE XMark//XMark-Q10, EXPECTED_RESULT_GOT_FAILURE XMark//XMark-Q11, EXPECTED_RESULT_GOT_FAILURE @@ -18658,7 +18658,7 @@ exprSeqTypes/PrologExpr/FunctionProlog//K2-FunctionProlog-21, EXPECTED_ERROR_GOT exprSeqTypes/PrologExpr/FunctionProlog//K2-FunctionProlog-22, EXPECTED_RESULT_GOT_ERROR exprSeqTypes/PrologExpr/FunctionProlog//K2-FunctionProlog-23, EXPECTED_RESULT_GOT_ERROR exprSeqTypes/PrologExpr/FunctionProlog//K2-FunctionProlog-24, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -exprSeqTypes/PrologExpr/FunctionProlog//K2-FunctionProlog-25, EXPECTED_RESULT_GOT_ERROR +exprSeqTypes/PrologExpr/FunctionProlog//K2-FunctionProlog-25, EXPECTED_RESULT_GOT_FAILURE exprSeqTypes/PrologExpr/FunctionProlog//K2-FunctionProlog-26, EXPECTED_ERROR_GOT_DIFFERENT_ERROR exprSeqTypes/PrologExpr/FunctionProlog//K2-FunctionProlog-27, EXPECTED_ERROR_GOT_DIFFERENT_ERROR exprSeqTypes/PrologExpr/FunctionProlog//K2-FunctionProlog-28, EXPECTED_RESULT_GOT_ERROR @@ -18686,7 +18686,7 @@ exprSeqTypes/PrologExpr/NamespaceProlog//K2-NamespaceProlog-1, EXPECTED_ERROR_GO exprSeqTypes/PrologExpr/NamespaceProlog//K2-NamespaceProlog-10, EXPECTED_ERROR_GOT_DIFFERENT_ERROR exprSeqTypes/PrologExpr/NamespaceProlog//K2-NamespaceProlog-11, EXPECTED_ERROR_GOT_DIFFERENT_ERROR exprSeqTypes/PrologExpr/NamespaceProlog//K2-NamespaceProlog-12, EXPECTED_ERROR_GOT_DIFFERENT_ERROR -exprSeqTypes/PrologExpr/NamespaceProlog//K2-NamespaceProlog-13, EXPECTED_RESULT_GOT_DIFFERENT_RESULT +exprSeqTypes/PrologExpr/NamespaceProlog//K2-NamespaceProlog-13, EXPECTED_RESULT_GOT_FAILURE exprSeqTypes/PrologExpr/NamespaceProlog//K2-NamespaceProlog-14, EXPECTED_ERROR_GOT_SAME_ERROR exprSeqTypes/PrologExpr/NamespaceProlog//K2-NamespaceProlog-15, EXPECTED_ERROR_GOT_RESULT exprSeqTypes/PrologExpr/NamespaceProlog//K2-NamespaceProlog-16, EXPECTED_ERROR_GOT_SAME_ERROR @@ -18727,7 +18727,7 @@ exprSeqTypes/PrologExpr/VariableProlog/ExternalVariablesWith//K2-ExternalVariabl exprSeqTypes/PrologExpr/VariableProlog/ExternalVariablesWith//K2-ExternalVariablesWith-9, EXPECTED_ERROR_GOT_RESULT exprSeqTypes/PrologExpr/VariableProlog/ExternalVariablesWithout//K2-ExternalVariablesWithout-1, EXPECTED_ERROR_GOT_RESULT exprSeqTypes/PrologExpr/VariableProlog/ExternalVariablesWithout//K2-ExternalVariablesWithout-10, EXPECTED_RESULT_GOT_ERROR -exprSeqTypes/PrologExpr/VariableProlog/ExternalVariablesWithout//K2-ExternalVariablesWithout-11, EXPECTED_RESULT_GOT_ERROR +exprSeqTypes/PrologExpr/VariableProlog/ExternalVariablesWithout//K2-ExternalVariablesWithout-11, EXPECTED_RESULT_GOT_FAILURE exprSeqTypes/PrologExpr/VariableProlog/ExternalVariablesWithout//K2-ExternalVariablesWithout-12, EXPECTED_RESULT_GOT_FAILURE exprSeqTypes/PrologExpr/VariableProlog/ExternalVariablesWithout//K2-ExternalVariablesWithout-13, EXPECTED_RESULT_GOT_FAILURE exprSeqTypes/PrologExpr/VariableProlog/ExternalVariablesWithout//K2-ExternalVariablesWithout-14, EXPECTED_ERROR_GOT_SAME_ERROR @@ -18903,8 +18903,8 @@ exprSeqTypes/SeqExprCast//K2-SeqExprCast-218, EXPECTED_ERROR_GOT_SAME_ERROR exprSeqTypes/SeqExprCast//K2-SeqExprCast-219, EXPECTED_ERROR_GOT_SAME_ERROR exprSeqTypes/SeqExprCast//K2-SeqExprCast-22, EXPECTED_ERROR_GOT_RESULT exprSeqTypes/SeqExprCast//K2-SeqExprCast-220, EXPECTED_ERROR_GOT_SAME_ERROR -exprSeqTypes/SeqExprCast//K2-SeqExprCast-221, EXPECTED_RESULT_GOT_SAME_RESULT -exprSeqTypes/SeqExprCast//K2-SeqExprCast-222, EXPECTED_RESULT_GOT_SAME_RESULT +exprSeqTypes/SeqExprCast//K2-SeqExprCast-221, EXPECTED_RESULT_GOT_ERROR +exprSeqTypes/SeqExprCast//K2-SeqExprCast-222, EXPECTED_RESULT_GOT_ERROR exprSeqTypes/SeqExprCast//K2-SeqExprCast-223, EXPECTED_RESULT_GOT_ERROR exprSeqTypes/SeqExprCast//K2-SeqExprCast-224, EXPECTED_RESULT_GOT_ERROR exprSeqTypes/SeqExprCast//K2-SeqExprCast-225, EXPECTED_ERROR_GOT_SAME_ERROR diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/AbstractTestCaseFactory.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/AbstractTestCaseFactory.java index b38f0ab3c..31e45d7bb 100644 --- a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/AbstractTestCaseFactory.java +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/AbstractTestCaseFactory.java @@ -117,20 +117,9 @@ public InputSource resolveEntity(String publicId, String systemId) throws SAXExc + new File(url.getFile()).getCanonicalPath().substring(currPathLen)); } }); - try { - FileReader characterStream = new FileReader(catalog); - parser.parse(new InputSource(characterStream)); - characterStream.close(); - } catch (SAXException e) { - System.err.println("Unable to parse file: " + catalog.getAbsolutePath()); - e.printStackTrace(); - } catch (FileNotFoundException e) { - System.err.println("Test Catalog has not been found: " + catalog.getAbsolutePath()); - e.printStackTrace(); - } catch (IOException e) { - System.err.println("I: " + catalog.getAbsolutePath()); - e.printStackTrace(); - } + FileReader characterStream = new FileReader(catalog); + parser.parse(new InputSource(characterStream)); + characterStream.close(); return count; } @@ -142,7 +131,7 @@ protected boolean submitTestCase(TestCase tc) { } return toSubmit; } - + protected abstract void submit(TestCase tc); protected class Handler implements ContentHandler { @@ -269,4 +258,4 @@ public void startElement(String uri, String localName, String name, Attributes a public void startPrefixMapping(String prefix, String uri) throws SAXException { } } -} +} \ No newline at end of file diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/ExpectedResult.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/ExpectedResult.java index cf85d85b9..2a0982e7a 100644 --- a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/ExpectedResult.java +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/ExpectedResult.java @@ -22,4 +22,4 @@ public class ExpectedResult { public ExpectedResult(String fileName) { this.fileName = fileName; } -} +} \ No newline at end of file diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/HTMLFileReporterImpl.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/HTMLFileReporterImpl.java index 654828711..bc17bba44 100644 --- a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/HTMLFileReporterImpl.java +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/HTMLFileReporterImpl.java @@ -358,4 +358,4 @@ private static String escape(String s) { return start > 0 ? sb.toString() : s; } -} +} \ No newline at end of file diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/LineFileReporterImpl.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/LineFileReporterImpl.java index dce59b088..03e47eb4e 100644 --- a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/LineFileReporterImpl.java +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/LineFileReporterImpl.java @@ -38,4 +38,4 @@ public synchronized void reportResult(TestCaseResult result) { public void close() { out.close(); } -} +} \ No newline at end of file diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/Main.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/Main.java index 616a1148d..dcb1b7e39 100644 --- a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/Main.java +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/Main.java @@ -33,4 +33,4 @@ public static void main(String[] args) throws Exception { xts.init(); xts.waitForCompletion(); } -} +} \ No newline at end of file diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/ResultReporter.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/ResultReporter.java index 349f292c8..b3dd60da1 100644 --- a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/ResultReporter.java +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/ResultReporter.java @@ -20,4 +20,4 @@ public interface ResultReporter { public void reportResult(TestCaseResult result); public void close(); -} +} \ No newline at end of file diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/ServletReporterImpl.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/ServletReporterImpl.java index 6a79a4a4f..df18b5308 100644 --- a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/ServletReporterImpl.java +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/ServletReporterImpl.java @@ -53,4 +53,4 @@ public synchronized void reportResult(TestCaseResult result) { public void close() { reporter.close(); } -} +} \ No newline at end of file diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestCase.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestCase.java index b7295c771..fbfc566ea 100644 --- a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestCase.java +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestCase.java @@ -108,4 +108,4 @@ public String toString() { buffer.append("}"); return buffer.toString(); } -} +} \ No newline at end of file diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestCaseFactory.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestCaseFactory.java index a948e23bc..d1681852a 100644 --- a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestCaseFactory.java +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestCaseFactory.java @@ -37,4 +37,4 @@ protected void submit(TestCase tc) { } } -} +} \ No newline at end of file diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestCaseResult.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestCaseResult.java index 86c85304c..bb28177a8 100644 --- a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestCaseResult.java +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestCaseResult.java @@ -218,4 +218,4 @@ public String getColor() { private static final String RED = "#FF9900"; private static final String ORANGE = "#FFCC00"; private static final String GREEN = "#99CC00"; -} +} \ No newline at end of file diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestRunner.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestRunner.java index 18db5c1ff..a5f0ba1bd 100644 --- a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestRunner.java +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestRunner.java @@ -18,30 +18,11 @@ import java.io.FileInputStream; import java.io.InputStreamReader; import java.io.Reader; +import java.nio.ByteBuffer; import java.util.EnumSet; import java.util.regex.Matcher; import java.util.regex.Pattern; -import org.apache.commons.io.IOUtils; -import org.apache.hyracks.api.client.HyracksConnection; -import org.apache.hyracks.api.client.IHyracksClientConnection; -import org.apache.hyracks.api.comm.IFrame; -import org.apache.hyracks.api.comm.IFrameTupleAccessor; -import org.apache.hyracks.api.comm.VSizeFrame; -import org.apache.hyracks.api.dataset.IHyracksDataset; -import org.apache.hyracks.api.dataset.IHyracksDatasetReader; -import org.apache.hyracks.api.dataset.ResultSetId; -import org.apache.hyracks.api.exceptions.HyracksException; -import org.apache.hyracks.api.job.JobFlag; -import org.apache.hyracks.api.job.JobId; -import org.apache.hyracks.api.job.JobSpecification; -import org.apache.hyracks.client.dataset.HyracksDataset; -import org.apache.hyracks.control.cc.ClusterControllerService; -import org.apache.hyracks.control.common.controllers.CCConfig; -import org.apache.hyracks.control.common.controllers.NCConfig; -import org.apache.hyracks.control.nc.NodeControllerService; -import org.apache.hyracks.control.nc.resources.memory.FrameManager; -import org.apache.hyracks.dataflow.common.comm.io.ResultFrameTupleAccessor; import org.apache.vxquery.compiler.CompilerControlBlock; import org.apache.vxquery.compiler.algebricks.VXQueryGlobalDataFactory; import org.apache.vxquery.context.DynamicContext; @@ -51,10 +32,28 @@ import org.apache.vxquery.exceptions.ErrorCode; import org.apache.vxquery.exceptions.SystemException; import org.apache.vxquery.result.ResultUtils; -import org.apache.vxquery.xmlquery.query.VXQueryCompilationListener; import org.apache.vxquery.xmlquery.query.XMLQueryCompiler; +import edu.uci.ics.hyracks.api.client.HyracksConnection; +import edu.uci.ics.hyracks.api.client.IHyracksClientConnection; +import edu.uci.ics.hyracks.api.comm.IFrameTupleAccessor; +import edu.uci.ics.hyracks.api.dataset.IHyracksDataset; +import edu.uci.ics.hyracks.api.dataset.IHyracksDatasetReader; +import edu.uci.ics.hyracks.api.dataset.ResultSetId; +import edu.uci.ics.hyracks.api.exceptions.HyracksException; +import edu.uci.ics.hyracks.api.job.JobFlag; +import edu.uci.ics.hyracks.api.job.JobId; +import edu.uci.ics.hyracks.api.job.JobSpecification; +import edu.uci.ics.hyracks.client.dataset.HyracksDataset; +import edu.uci.ics.hyracks.control.cc.ClusterControllerService; +import edu.uci.ics.hyracks.control.common.controllers.CCConfig; +import edu.uci.ics.hyracks.control.common.controllers.NCConfig; +import edu.uci.ics.hyracks.control.nc.NodeControllerService; +import edu.uci.ics.hyracks.dataflow.common.comm.io.ResultFrameTupleAccessor; + public class TestRunner { + private static final int FRAME_SIZE = 65536; + private static final Pattern EMBEDDED_SYSERROR_PATTERN = Pattern .compile("org\\.apache\\.vxquery\\.exceptions\\.SystemException: (\\p{javaUpperCase}{4}\\d{4})"); @@ -102,24 +101,14 @@ public TestCaseResult run(final TestCase testCase) { if (opts.verbose) { System.err.println("Starting " + testCase.getXQueryDisplayName()); } - long start = System.currentTimeMillis(); - try { try { - FileInputStream query = new FileInputStream(testCase.getXQueryFile()); - if (opts.showQuery) { - System.err.println("***Query for " + testCase.getXQueryDisplayName() + ": "); - System.err.println(IOUtils.toString(query, "UTF-8")); - } - - VXQueryCompilationListener listener = new VXQueryCompilationListener(opts.showAST, opts.showTET, - opts.showOET, opts.showRP); - XMLQueryCompiler compiler = new XMLQueryCompiler(listener, new String[] { "nc1" }, opts.frameSize); + XMLQueryCompiler compiler = new XMLQueryCompiler(null, new String[] { "nc1" }, FRAME_SIZE); Reader in = new InputStreamReader(new FileInputStream(testCase.getXQueryFile()), "UTF-8"); - CompilerControlBlock ccb = new CompilerControlBlock( - new StaticContextImpl(RootStaticContextImpl.INSTANCE), - new ResultSetId(testCase.getXQueryDisplayName().hashCode()), testCase.getSourceFileMap()); + CompilerControlBlock ccb = new CompilerControlBlock(new StaticContextImpl( + RootStaticContextImpl.INSTANCE), new ResultSetId(testCase.getXQueryDisplayName().hashCode()), + testCase.getSourceFileMap()); compiler.compile(testCase.getXQueryDisplayName(), in, ccb, opts.optimizationLevel); JobSpecification spec = compiler.getModule().getHyracksJobSpecification(); in.close(); @@ -133,14 +122,14 @@ public TestCaseResult run(final TestCase testCase) { if (hds == null) { hds = new HyracksDataset(hcc, spec.getFrameSize(), opts.threads); } - FrameManager resultDisplayFrameMgr = new FrameManager(spec.getFrameSize()); - IFrame frame = new VSizeFrame(resultDisplayFrameMgr); + ByteBuffer buffer = ByteBuffer.allocate(spec.getFrameSize()); IHyracksDatasetReader reader = hds.createReader(jobId, ccb.getResultSetId()); - IFrameTupleAccessor frameTupleAccessor = new ResultFrameTupleAccessor(); + IFrameTupleAccessor frameTupleAccessor = new ResultFrameTupleAccessor(spec.getFrameSize()); + buffer.clear(); res.result = ""; - while (reader.read(frame) > 0) { - res.result += ResultUtils.getStringFromBuffer(frame.getBuffer(), frameTupleAccessor); - frame.getBuffer().clear(); + while (reader.read(buffer) > 0) { + buffer.clear(); + res.result += ResultUtils.getStringFromBuffer(buffer, frameTupleAccessor); } res.result.trim(); hcc.waitForCompletion(jobId); @@ -180,16 +169,6 @@ public TestCaseResult run(final TestCase testCase) { long end = System.currentTimeMillis(); res.time = end - start; } - if (opts.showResult) { - if (res.result == null) { - System.err.println("***Error: "); - System.err.println("Message: " + res.error.getMessage()); - res.error.printStackTrace(); - } else { - System.err.println("***Result: "); - System.err.println(res.result); - } - } return res; } @@ -197,4 +176,4 @@ public void close() throws Exception { nc1.stop(); cc.stop(); } -} +} \ No newline at end of file diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestRunnerFactory.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestRunnerFactory.java index 197e9ae74..1910f84c1 100644 --- a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestRunnerFactory.java +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/TestRunnerFactory.java @@ -56,4 +56,4 @@ public void registerReporters(Collection reporters) { public void close() throws Exception { tr.close(); } -} +} \ No newline at end of file diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/XMLFileReporterImpl.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/XMLFileReporterImpl.java index 530befc32..c7c3b2c81 100644 --- a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/XMLFileReporterImpl.java +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/XMLFileReporterImpl.java @@ -48,4 +48,4 @@ public void close() { out.println(""); out.close(); } -} +} \ No newline at end of file diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/XTest.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/XTest.java index b21624077..87f068733 100644 --- a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/XTest.java +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/XTest.java @@ -90,9 +90,6 @@ synchronized void waitForCompletion() throws InterruptedException { Thread.sleep(opts.keepalive); } eSvc.shutdown(); - while (!eSvc.awaitTermination(5L, TimeUnit.SECONDS)) { - System.err.println("Failed to close all threads, trying again..."); - } for (ResultReporter r : reporters) { r.close(); } @@ -109,4 +106,4 @@ synchronized void waitForCompletion() throws InterruptedException { } } } -} +} \ No newline at end of file diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/XTestOptions.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/XTestOptions.java index 854cbf8bd..2b7b508cb 100644 --- a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/XTestOptions.java +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/XTestOptions.java @@ -17,63 +17,39 @@ import org.kohsuke.args4j.Option; public class XTestOptions { - @Option(name = "-O", required = false, usage = "Optimization level. (default: Full Optimization)") + @Option(name = "-O", required = false, usage = "Optimization Level") int optimizationLevel = Integer.MAX_VALUE; - @Option(name = "-frame-size", required = false, usage = "Setting frame size. (default: 65,536)") - int frameSize = 65536; - - @Option(name = "-port", required = false, usage = "Port for web server to listen on.") + @Option(name = "-port", required = false, usage = "Port for web server to listen on") int port; - @Option(name = "-catalog", required = true, usage = "Test catalog XML.") + @Option(name = "-catalog", required = true, usage = "Test Catalog XML") String catalog; - @Option(name = "-threads", required = false, usage = "Number of threads. (default: 1)") + @Option(name = "-threads", required = false, usage = "Number of threads") int threads; - @Option(name = "-include", required = false, usage = "Include filter regular expression.") + @Option(name = "-include", required = false, usage = "Include filter regular expression") String include; - @Option(name = "-exclude", required = false, usage = "Exclude filter regular expression.") + @Option(name = "-exclude", required = false, usage = "Exclude filter regular expression") String exclude; - @Option(name = "-previous-test-results", required = false, usage = "File path to previous test results. (text report output file)") + @Option(name = "-previous-test-results", required = false, usage = "File path to previous test results (text report output file)") String previousTestResults; @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; -} +} \ No newline at end of file diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/DiskPerformance.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/DiskPerformance.java new file mode 100644 index 000000000..5d0503574 --- /dev/null +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/DiskPerformance.java @@ -0,0 +1,215 @@ +/* + * 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. + */ +package org.apache.vxquery.xtest.util; + +import java.io.File; +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; +import java.util.Date; +import java.util.Iterator; +import java.util.List; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.concurrent.TimeUnit; + +import org.apache.commons.io.FileUtils; +import org.apache.commons.io.filefilter.TrueFileFilter; +import org.apache.vxquery.datamodel.builders.atomic.StringValueBuilder; +import org.apache.vxquery.metadata.VXQueryIOFileFilter; +import org.apache.vxquery.types.AnyType; +import org.apache.vxquery.types.ElementType; +import org.apache.vxquery.types.NameTest; +import org.apache.vxquery.types.Quantifier; +import org.apache.vxquery.types.SequenceType; +import org.apache.vxquery.xmlparser.SAXContentHandler; +import org.apache.vxquery.xmlparser.TreeNodeIdProvider; +import org.apache.vxquery.xtest.util.tests.BufferedParsedCharacterStream; +import org.apache.vxquery.xtest.util.tests.BufferedReaderBufferedStream; +import org.apache.vxquery.xtest.util.tests.BufferedReaderStream; +import org.apache.vxquery.xtest.util.tests.BufferedStream; +import org.apache.vxquery.xtest.util.tests.IDiskTest; +import org.apache.vxquery.xtest.util.tests.ParsedBufferedByteStream; +import org.apache.vxquery.xtest.util.tests.ParsedBufferedCharacterStream; +import org.apache.vxquery.xtest.util.tests.ParsedByteStream; +import org.apache.vxquery.xtest.util.tests.ParsedCharacterStream; +import org.apache.vxquery.xtest.util.tests.ReaderBufferedStream; +import org.apache.vxquery.xtest.util.tests.ReaderStream; +import org.apache.vxquery.xtest.util.tests.Stream; +import org.xml.sax.XMLReader; +import org.xml.sax.helpers.XMLReaderFactory; + +import edu.uci.ics.hyracks.algebricks.common.utils.Pair; +import edu.uci.ics.hyracks.data.std.util.ArrayBackedValueStorage; + +public class DiskPerformance { + XMLReader parser; + SAXContentHandler handler; + Collection cTestFiles; + Iterator testFilesIt; + + public DiskPerformance() { + Pair p = getNewParser(); + parser = p.first; + handler = p.second; + cTestFiles = null; + } + + public Pair getNewParser() { + XMLReader parser; + SAXContentHandler handler; + + try { + parser = XMLReaderFactory.createXMLReader(); + List childSeq = new ArrayList(); + NameTest nt = new NameTest(createUTF8String(""), createUTF8String("data")); + childSeq.add(SequenceType.create(new ElementType(nt, AnyType.INSTANCE, false), Quantifier.QUANT_ONE)); + handler = new SAXContentHandler(false, new TreeNodeIdProvider((short) 0), null, null, childSeq); + parser.setContentHandler(handler); + parser.setProperty("http://xml.org/sax/properties/lexical-handler", handler); + return new Pair(parser, handler); + } catch (Exception e) { + e.printStackTrace(); + } + return null; + } + + public void setDirectory(String filename) { + File directory = new File(filename); + if (directory.isDirectory()) { + cTestFiles = FileUtils.listFiles(directory, new VXQueryIOFileFilter(), TrueFileFilter.INSTANCE); + if (cTestFiles.size() < 1) { + System.err.println("No XML files found in given directory."); + return; + } + } + testFilesIt = cTestFiles.iterator(); + } + + public File getNextFile() { + if (!testFilesIt.hasNext()) { + testFilesIt = cTestFiles.iterator(); + } + return testFilesIt.next(); + } + + private byte[] createUTF8String(String str) { + ArrayBackedValueStorage abvs = new ArrayBackedValueStorage(); + StringValueBuilder svb = new StringValueBuilder(); + try { + svb.write(str, abvs.getDataOutput()); + } catch (IOException e) { + throw new IllegalStateException(e); + } + return Arrays.copyOf(abvs.getByteArray(), abvs.getLength()); + } + + public static void main(String... args) throws IOException { + // First Argument (XML folder) + if (args.length < 1) { + System.err.println("Please provide a directory for the test XML documents."); + return; + } + // Second argument (threads) + int threads = 1; + if (args.length > 1) { + threads = Integer.parseInt(args[1]); + } + + // Third argument (repeat) + int repeat = 1; + if (args.length > 2) { + repeat = Integer.parseInt(args[2]); + } + + // Fourth argument (buffer size) + int bufferSize = -1; + if (args.length > 3) { + bufferSize = Integer.parseInt(args[3]); + } + + DiskPerformance dp = new DiskPerformance(); + dp.setDirectory(args[0]); + + ArrayList tests = new ArrayList(); + // Parsed Character Streams + tests.add(ParsedBufferedCharacterStream.class); + // tests.add(BufferedParsedCharacterStream.class); + // tests.add(ParsedCharacterStream.class); + // Parsed Byte Streams + // tests.add(ParsedBufferedByteStream.class); + // tests.add(ParsedByteStream.class); + // Character Streams + // tests.add(BufferedReaderBufferedStream.class); + // tests.add(BufferedReaderStream.class); + // tests.add(ReaderBufferedStream.class); + // tests.add(ReaderStream.class); + // Byte Streams + // tests.add(BufferedStream.class); + // tests.add(Stream.class); + + System.out.println("------"); + System.out.println("Started Test Group: " + new Date()); + System.out.println("Thread: " + threads); + System.out.println("Repeat: " + repeat); + System.out.println("Buffer: " + bufferSize); + System.out.println("------"); + + for (Class testClass : tests) { + for (int r = 0; r < repeat; ++r) { + try { + if (threads > 1) { + runThreadTest(testClass, dp, threads, bufferSize); + } else { + IDiskTest test = testClass.newInstance(); + test.setFile(dp.getNextFile()); + test.setBufferSize(bufferSize); + test.setParser(dp.parser); + test.run(); + } + } catch (InstantiationException e) { + e.printStackTrace(); + } catch (IllegalAccessException e) { + e.printStackTrace(); + } + + } + } + + } + + static void runThreadTest(Class testType, DiskPerformance dp, int threads, int bufferSize) + throws InstantiationException, IllegalAccessException { + ExecutorService es = Executors.newCachedThreadPool(); + ArrayList threadTests = new ArrayList(); + for (int i = 0; i < threads; ++i) { + threadTests.add((IDiskTest) testType.newInstance()); + } + for (IDiskTest test : threadTests) { + test.setFile(dp.getNextFile()); + test.setBufferSize(bufferSize); + test.setParser(dp.getNewParser().first); + es.execute((Runnable) test); + } + es.shutdown(); + try { + es.awaitTermination(60, TimeUnit.MINUTES); + } catch (InterruptedException e) { + e.printStackTrace(); + } + // System.out.println("Completed thread batch: " + new Date()); + } +} diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/AbstractDiskTest.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/AbstractDiskTest.java new file mode 100644 index 000000000..f41a02b12 --- /dev/null +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/AbstractDiskTest.java @@ -0,0 +1,90 @@ +/* + * 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. + */ +package org.apache.vxquery.xtest.util.tests; + +import java.io.File; +import java.io.IOException; +import java.net.InetAddress; +import java.net.UnknownHostException; + +import org.xml.sax.XMLReader; + +abstract class AbstractDiskTest implements IDiskTest, Runnable { + private String filename; + private int bufferSize; + protected XMLReader parser; + + public void setFile(File file) { + this.filename = file.getAbsolutePath(); + } + + public String getPrintFilename() { + return filename.substring(filename.length() - 20); + } + + public void setBufferSize(int bufferSize) { + this.bufferSize = bufferSize; + } + + public void setParser(XMLReader parser) { + this.parser = parser; + } + + public void start() { + run(); + } + + public void run() { + long size = -1; + // System.out.printf(getPrintFilename() + "\t" + getMessage() + " - Starting%n"); + long start = System.nanoTime(); + try { + size = test(filename, bufferSize); + } catch (IOException e) { + e.printStackTrace(); + } + long end = System.nanoTime(); + long timeDelta = end - start; + double speed = 0; + if (size > 0) { + speed = (size * 1e3) / timeDelta; + } + // System.out.printf("checkSum: %d%n", checkSum); + // System.out.printf(getPrintFilename() + "\t" + getMessage() + "%.1f ms\t%.2f MB/s\t%.2f MB/s", + // (timeDelta) / 1e6, 1024 * 1024 * 1e6 / (timeDelta), speed); + // CSV output of the results. + try { + System.out.printf("%s,", InetAddress.getLocalHost().getHostName()); + } catch (UnknownHostException e) { + e.printStackTrace(); + } + System.out.printf("%s,%s,%.1f,%.2f", filename, getMessage(), (timeDelta) / 1e6, + 1024 * 1024 * 1e6 / (timeDelta), speed); + if (isBuffered() && bufferSize > 0) { + System.out.printf(",%.1f", bufferSize / 1024.0); + } else { + System.out.printf(",0"); + } + System.out.println(); + } + + public boolean isBuffered() { + return true; + } + + abstract public String getMessage(); + + abstract public long test(String filename, int bufferSize) throws IOException; +} diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/BufferedParsedCharacterStream.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/BufferedParsedCharacterStream.java new file mode 100644 index 000000000..8a9ee18ea --- /dev/null +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/BufferedParsedCharacterStream.java @@ -0,0 +1,45 @@ +/* + * 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. + */ +package org.apache.vxquery.xtest.util.tests; + +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStreamReader; + +import org.xml.sax.InputSource; +import org.xml.sax.SAXException; + +public class BufferedParsedCharacterStream extends AbstractDiskTest { + @Override + public String getMessage() { + return "Buffered Parsed - Character Stream"; + } + + @Override + public long test(String filename, int bufferSize) throws IOException { + try { + if (bufferSize > 0) { + parser.setProperty("http://apache.org/xml/properties/input-buffer-size", new Integer(bufferSize)); + } + InputStreamReader f = new InputStreamReader(new FileInputStream(filename)); + InputSource in = new InputSource(); + in.setCharacterStream(f); + parser.parse(in); + } catch (SAXException e) { + e.printStackTrace(); + } + return -1; + } +} diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/BufferedReaderBufferedStream.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/BufferedReaderBufferedStream.java new file mode 100644 index 000000000..d96424162 --- /dev/null +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/BufferedReaderBufferedStream.java @@ -0,0 +1,48 @@ +/* + * 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. + */ +package org.apache.vxquery.xtest.util.tests; + +import java.io.BufferedInputStream; +import java.io.BufferedReader; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStreamReader; + +public class BufferedReaderBufferedStream extends AbstractDiskTest { + @Override + public String getMessage() { + return "Buffered Reader - Buffered Stream"; + } + + @Override + public long test(String filename, int bufferSize) throws IOException { + BufferedReader f; + if (bufferSize > 0) { + f = new BufferedReader(new InputStreamReader(new BufferedInputStream(new FileInputStream(filename), + bufferSize)), bufferSize); + } else { + f = new BufferedReader(new InputStreamReader(new BufferedInputStream(new FileInputStream(filename)))); + } + int b; + long byteCount = 0L; + long checkSum = 0L; + while ((b = f.read()) != -1) { + checkSum += b; + byteCount++; + } + f.close(); + return byteCount; + } +} diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/BufferedReaderStream.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/BufferedReaderStream.java new file mode 100644 index 000000000..710002577 --- /dev/null +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/BufferedReaderStream.java @@ -0,0 +1,46 @@ +/* + * 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. + */ +package org.apache.vxquery.xtest.util.tests; + +import java.io.BufferedReader; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStreamReader; + +public class BufferedReaderStream extends AbstractDiskTest { + @Override + public String getMessage() { + return "Buffered Reader - Stream"; + } + + @Override + public long test(String filename, int bufferSize) throws IOException { + BufferedReader f; + if (bufferSize > 0) { + f = new BufferedReader(new InputStreamReader(new FileInputStream(filename)), bufferSize); + } else { + f = new BufferedReader(new InputStreamReader(new FileInputStream(filename))); + } + int b; + long byteCount = 0L; + long checkSum = 0L; + while ((b = f.read()) != -1) { + checkSum += b; + byteCount++; + } + f.close(); + return byteCount; + } +} diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/BufferedStream.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/BufferedStream.java new file mode 100644 index 000000000..5751307c4 --- /dev/null +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/BufferedStream.java @@ -0,0 +1,45 @@ +/* + * 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. + */ +package org.apache.vxquery.xtest.util.tests; + +import java.io.BufferedInputStream; +import java.io.FileInputStream; +import java.io.IOException; + +public class BufferedStream extends AbstractDiskTest { + @Override + public String getMessage() { + return "Buffered Stream"; + } + + @Override + public long test(String filename, int bufferSize) throws IOException { + BufferedInputStream f; + if (bufferSize > 0) { + f = new BufferedInputStream(new FileInputStream(filename), bufferSize); + } else { + f = new BufferedInputStream(new FileInputStream(filename)); + } + int b; + long byteCount = 0L; + long checkSum = 0L; + while ((b = f.read()) != -1) { + checkSum += b; + byteCount++; + } + f.close(); + return byteCount; + } +} diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/IDiskTest.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/IDiskTest.java new file mode 100644 index 000000000..581d7830f --- /dev/null +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/IDiskTest.java @@ -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. + */ +package org.apache.vxquery.xtest.util.tests; + +import java.io.File; + +import org.xml.sax.XMLReader; + +public interface IDiskTest { + public void setBufferSize(int bufferSize); + + public void setFile(File file); + + public void setParser(XMLReader parser); + + public void run(); + + public void start(); +} diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/ParsedBufferedByteStream.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/ParsedBufferedByteStream.java new file mode 100644 index 000000000..9fc93c4e1 --- /dev/null +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/ParsedBufferedByteStream.java @@ -0,0 +1,48 @@ +/* + * 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. + */ +package org.apache.vxquery.xtest.util.tests; + +import java.io.BufferedInputStream; +import java.io.FileInputStream; +import java.io.IOException; + +import org.xml.sax.InputSource; +import org.xml.sax.SAXException; + +public class ParsedBufferedByteStream extends AbstractDiskTest { + @Override + public String getMessage() { + return "Parsed - Buffered Byte Stream"; + } + + @Override + public long test(String filename, int bufferSize) throws IOException { + try { + BufferedInputStream f; + if (bufferSize > 0) { + f = new BufferedInputStream(new FileInputStream(filename), bufferSize); + } else { + f = new BufferedInputStream(new FileInputStream(filename)); + } + InputSource in = new InputSource(); + in.setByteStream(f); + in.setEncoding("UTF-8"); + parser.parse(in); + } catch (SAXException e) { + e.printStackTrace(); + } + return -1; + } +} diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/ParsedBufferedCharacterStream.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/ParsedBufferedCharacterStream.java new file mode 100644 index 000000000..1cacee6e7 --- /dev/null +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/ParsedBufferedCharacterStream.java @@ -0,0 +1,48 @@ +/* + * 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. + */ +package org.apache.vxquery.xtest.util.tests; + +import java.io.BufferedReader; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStreamReader; + +import org.xml.sax.InputSource; +import org.xml.sax.SAXException; + +public class ParsedBufferedCharacterStream extends AbstractDiskTest implements IDiskTest { + @Override + public String getMessage() { + return "Parsed - Buffered Character Stream"; + } + + @Override + public long test(String filename, int bufferSize) throws IOException { + try { + BufferedReader f; + if (bufferSize > 0) { + f = new BufferedReader(new InputStreamReader(new FileInputStream(filename)), bufferSize); + } else { + f = new BufferedReader(new InputStreamReader(new FileInputStream(filename))); + } + InputSource in = new InputSource(); + in.setCharacterStream(f); + parser.parse(in); + } catch (SAXException e) { + e.printStackTrace(); + } + return -1; + } +} diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/ParsedByteStream.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/ParsedByteStream.java new file mode 100644 index 000000000..783424ad0 --- /dev/null +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/ParsedByteStream.java @@ -0,0 +1,46 @@ +/* + * 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. + */ +package org.apache.vxquery.xtest.util.tests; + +import java.io.FileInputStream; +import java.io.IOException; + +import org.xml.sax.InputSource; +import org.xml.sax.SAXException; + +public class ParsedByteStream extends AbstractDiskTest { + @Override + public String getMessage() { + return "Parsed - Byte Stream"; + } + + @Override + public boolean isBuffered() { + return false; + } + + @Override + public long test(String filename, int bufferSize) throws IOException { + try { + InputSource in = new InputSource(); + in.setByteStream(new FileInputStream(filename)); + in.setEncoding("UTF-8"); + parser.parse(in); + } catch (SAXException e) { + e.printStackTrace(); + } + return -1; + } +} diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/ParsedCharacterStream.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/ParsedCharacterStream.java new file mode 100644 index 000000000..0b292a391 --- /dev/null +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/ParsedCharacterStream.java @@ -0,0 +1,47 @@ +/* + * 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. + */ +package org.apache.vxquery.xtest.util.tests; + +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStreamReader; + +import org.xml.sax.InputSource; +import org.xml.sax.SAXException; + +public class ParsedCharacterStream extends AbstractDiskTest { + @Override + public String getMessage() { + return "Parsed - Character Stream"; + } + + @Override + public boolean isBuffered() { + return false; + } + + @Override + public long test(String filename, int bufferSize) throws IOException { + try { + InputStreamReader f = new InputStreamReader(new FileInputStream(filename)); + InputSource in = new InputSource(); + in.setCharacterStream(f); + parser.parse(in); + } catch (SAXException e) { + e.printStackTrace(); + } + return -1; + } +} diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/ReaderBufferedStream.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/ReaderBufferedStream.java new file mode 100644 index 000000000..721dd3a24 --- /dev/null +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/ReaderBufferedStream.java @@ -0,0 +1,46 @@ +/* + * 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. + */ +package org.apache.vxquery.xtest.util.tests; + +import java.io.BufferedInputStream; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStreamReader; + +public class ReaderBufferedStream extends AbstractDiskTest { + @Override + public String getMessage() { + return "Reader - Buffered Stream"; + } + + @Override + public long test(String filename, int bufferSize) throws IOException { + InputStreamReader f; + if (bufferSize > 0) { + f = new InputStreamReader(new BufferedInputStream(new FileInputStream(filename), bufferSize)); + } else { + f = new InputStreamReader(new BufferedInputStream(new FileInputStream(filename))); + } + int b; + long byteCount = 0L; + long checkSum = 0L; + while ((b = f.read()) != -1) { + checkSum += b; + byteCount++; + } + f.close(); + return byteCount; + } +} diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/ReaderStream.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/ReaderStream.java new file mode 100644 index 000000000..4fdbdf953 --- /dev/null +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/ReaderStream.java @@ -0,0 +1,45 @@ +/* + * 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. + */ +package org.apache.vxquery.xtest.util.tests; + +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStreamReader; + +public class ReaderStream extends AbstractDiskTest { + @Override + public String getMessage() { + return "Reader - Stream"; + } + + @Override + public boolean isBuffered() { + return false; + } + + @Override + public long test(String filename, int bufferSize) throws IOException { + InputStreamReader f = new InputStreamReader(new FileInputStream(filename)); + int b; + long byteCount = 0L; + long checkSum = 0L; + while ((b = f.read()) != -1) { + checkSum += b; + byteCount++; + } + f.close(); + return byteCount; + } +} diff --git a/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/Stream.java b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/Stream.java new file mode 100644 index 000000000..7890b2a32 --- /dev/null +++ b/vxquery-xtest/src/main/java/org/apache/vxquery/xtest/util/tests/Stream.java @@ -0,0 +1,44 @@ +/* + * 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. + */ +package org.apache.vxquery.xtest.util.tests; + +import java.io.FileInputStream; +import java.io.IOException; + +public class Stream extends AbstractDiskTest { + @Override + public String getMessage() { + return "Stream"; + } + + @Override + public boolean isBuffered() { + return false; + } + + @Override + public long test(String filename, int bufferSize) throws IOException { + FileInputStream f = new FileInputStream(filename); + int b; + long byteCount = 0L; + long checkSum = 0L; + while ((b = f.read()) != -1) { + checkSum += b; + byteCount++; + } + f.close(); + return byteCount; + } +} diff --git a/vxquery-xtest/src/test/java/org/apache/vxquery/xtest/JUnitTestCaseFactory.java b/vxquery-xtest/src/test/java/org/apache/vxquery/xtest/JUnitTestCaseFactory.java index fea80e826..e1ea21519 100644 --- a/vxquery-xtest/src/test/java/org/apache/vxquery/xtest/JUnitTestCaseFactory.java +++ b/vxquery-xtest/src/test/java/org/apache/vxquery/xtest/JUnitTestCaseFactory.java @@ -41,4 +41,4 @@ public Collection getList() throws Exception { return testCases; } -} +} \ No newline at end of file diff --git a/vxquery-xtest/src/test/java/org/apache/vxquery/xtest/VXQueryTest.java b/vxquery-xtest/src/test/java/org/apache/vxquery/xtest/VXQueryTest.java index 3704d07db..b889eb6e0 100644 --- 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,40 +16,95 @@ */ package org.apache.vxquery.xtest; +import static org.junit.Assert.fail; + import java.io.File; import java.util.Collection; import org.apache.commons.lang3.StringUtils; +import org.junit.After; +import org.junit.Before; +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 extends AbstractXQueryTest { +public class VXQueryTest { + private TestCase tc; + private TestRunner tr; private static String VXQUERY_CATALOG = StringUtils.join(new String[] { "src", "test", "resources", "VXQueryCatalog.xml" }, File.separator); + private static String XQTS_CATALOG = StringUtils.join(new String[] { "test-suites", "xqts", "XQTSCatalog.xml" }, + File.separator); - public VXQueryTest(TestCase tc) throws Exception { - super(tc); + private static boolean includeXqtsTests() { + return new File(XQTS_CATALOG).isFile(); + } + + private static XTestOptions getVXQueryOptions() { + XTestOptions opts = new XTestOptions(); + opts.catalog = VXQUERY_CATALOG; + opts.verbose = false; + opts.threads = 1; + return opts; + } + + private static XTestOptions getPreviousTestOptions() { + XTestOptions opts = new XTestOptions(); + opts.catalog = XQTS_CATALOG; + opts.previousTestResults = StringUtils.join(new String[] { "results", "xqts.txt" }, File.separator); + opts.verbose = false; + opts.threads = 1; + return opts; } @Parameters public static Collection tests() throws Exception { - JUnitTestCaseFactory jtcf_vxquery = new JUnitTestCaseFactory(getOptions()); + JUnitTestCaseFactory jtcf_vxquery = new JUnitTestCaseFactory(getVXQueryOptions()); Collection tests = jtcf_vxquery.getList(); + if (includeXqtsTests()) { + JUnitTestCaseFactory jtcf_previous = new JUnitTestCaseFactory(getPreviousTestOptions()); + // TODO Maven fails to run when including XQTS. (Error to many open files.) + // tests.addAll(jtcf_previous.getList()); + } return tests; } - public static XTestOptions getOptions() { - XTestOptions options = getDefaultTestOptions(); - options.catalog = VXQUERY_CATALOG; - return options; + 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; + } } - @Override - protected XTestOptions getTestOptions() { - return getOptions(); + @After + public void afterTest() throws Exception { + tr.close(); } } diff --git a/vxquery-xtest/src/test/resources/Queries/XQuery/Ghcnd/Partition-1/q01.xq b/vxquery-xtest/src/test/resources/Queries/XQuery/Ghcnd/Partition-1/q01.xq index 145c02124..0fed630ce 100644 --- a/vxquery-xtest/src/test/resources/Queries/XQuery/Ghcnd/Partition-1/q01.xq +++ b/vxquery-xtest/src/test/resources/Queries/XQuery/Ghcnd/Partition-1/q01.xq @@ -21,5 +21,5 @@ (: meters per second). (Wind value is in tenth of a meter per second) :) let $collection := "ghcnd" for $r in collection($collection)/dataCollection/data -where $r/dataType eq "AWND" and xs:decimal($r/value) gt 491.744 +where $r/dataType eq "AWND" and xs:decimal(fn:data($r/value)) gt 491.744 return $r diff --git a/vxquery-xtest/src/test/resources/Queries/XQuery/Ghcnd/Partition-2/q01.xq b/vxquery-xtest/src/test/resources/Queries/XQuery/Ghcnd/Partition-2/q01.xq index 6de41950b..bc62d73d2 100644 --- a/vxquery-xtest/src/test/resources/Queries/XQuery/Ghcnd/Partition-2/q01.xq +++ b/vxquery-xtest/src/test/resources/Queries/XQuery/Ghcnd/Partition-2/q01.xq @@ -21,5 +21,5 @@ (: meters per second). (Wind value is in tenth of a meter per second) :) let $collection := "ghcnd_half_1|ghcnd_half_2" for $r in collection($collection)/dataCollection/data -where $r/dataType eq "AWND" and xs:decimal($r/value) gt 491.744 +where $r/dataType eq "AWND" and xs:decimal(fn:data($r/value)) gt 491.744 return $r diff --git a/vxquery-xtest/src/test/resources/Queries/XQuery/Ghcnd/Partition-4/q01.xq b/vxquery-xtest/src/test/resources/Queries/XQuery/Ghcnd/Partition-4/q01.xq index 7ea1c48e4..2de26909f 100644 --- a/vxquery-xtest/src/test/resources/Queries/XQuery/Ghcnd/Partition-4/q01.xq +++ b/vxquery-xtest/src/test/resources/Queries/XQuery/Ghcnd/Partition-4/q01.xq @@ -21,5 +21,5 @@ (: meters per second). (Wind value is in tenth of a meter per second) :) let $collection := "ghcnd_quarter_1|ghcnd_quarter_2|ghcnd_quarter_3|ghcnd_quarter_4" for $r in collection($collection)/dataCollection/data -where $r/dataType eq "AWND" and xs:decimal($r/value) gt 491.744 +where $r/dataType eq "AWND" and xs:decimal(fn:data($r/value)) gt 491.744 return $r diff --git a/vxquery-xtest/src/test/resources/VXQueryCatalog.xml b/vxquery-xtest/src/test/resources/VXQueryCatalog.xml index 6f7acee24..773c27648 100644 --- a/vxquery-xtest/src/test/resources/VXQueryCatalog.xml +++ b/vxquery-xtest/src/test/resources/VXQueryCatalog.xml @@ -23,7 +23,6 @@ - @@ -83,9 +82,6 @@ Collection of files - - File - @@ -135,19 +131,6 @@ &FunctionsAndOperatorsOnNumericsQueries; - - - Functions And Operators That Generate Sequences Queries - - - - - Functions And Operators That Generate Sequences Execution Tests - - - &FunctionsAndOperatorsThatGenerateSequences; - - GHCND Partition Queries @@ -193,4 +176,4 @@ &GhcndRecordsPartition4Queries; - \ No newline at end of file + diff --git a/vxquery-xtest/src/test/resources/VXQuerySingleAlternateCatalog.xml b/vxquery-xtest/src/test/resources/VXQuerySingleAlternateCatalog.xml index 7be226f86..c0fe358c5 100644 --- a/vxquery-xtest/src/test/resources/VXQuerySingleAlternateCatalog.xml +++ b/vxquery-xtest/src/test/resources/VXQuerySingleAlternateCatalog.xml @@ -35,7 +35,6 @@ - ]> Single Test - &SingleAlternateQuery; + &SingleQuery; diff --git a/vxquery-xtest/src/test/resources/VXQuerySingleCatalog.xml b/vxquery-xtest/src/test/resources/VXQuerySingleCatalog.xml index e88a68d44..7be226f86 100644 --- a/vxquery-xtest/src/test/resources/VXQuerySingleCatalog.xml +++ b/vxquery-xtest/src/test/resources/VXQuerySingleCatalog.xml @@ -91,7 +91,7 @@ Single Test - &SingleQuery; + &SingleAlternateQuery; diff --git a/vxquery-xtest/src/test/resources/cat/FunctionsAndOperatorsOnNumericsQueries.xml b/vxquery-xtest/src/test/resources/cat/FunctionsAndOperatorsOnNumericsQueries.xml index 52a1e6960..4b6555ddd 100644 --- a/vxquery-xtest/src/test/resources/cat/FunctionsAndOperatorsOnNumericsQueries.xml +++ b/vxquery-xtest/src/test/resources/cat/FunctionsAndOperatorsOnNumericsQueries.xml @@ -15,7 +15,7 @@ limitations under the License. --> - + Function and Operators on Numerics @@ -30,19 +30,4 @@ fn_ceiling.txt - - Query for fn:round-half-to-even with all numeric types. - - fn_round-half-to-even.txt - - - Query for fn:round with all numeric types. - - fn_round.txt - - - Query for fn:floor with all numeric types. - - fn_floor.txt - \ No newline at end of file diff --git a/vxquery-xtest/src/test/resources/cat/GhcndPartition2Queries.xml b/vxquery-xtest/src/test/resources/cat/GhcndPartition2Queries.xml index 107518332..73c01e10b 100644 --- a/vxquery-xtest/src/test/resources/cat/GhcndPartition2Queries.xml +++ b/vxquery-xtest/src/test/resources/cat/GhcndPartition2Queries.xml @@ -15,7 +15,7 @@ limitations under the License. --> - + GHCND Partition 1 diff --git a/vxquery-xtest/src/test/resources/cat/GhcndRecordsPartition1Queries.xml b/vxquery-xtest/src/test/resources/cat/GhcndRecordsPartition1Queries.xml index f55153cdd..65ca953ee 100644 --- a/vxquery-xtest/src/test/resources/cat/GhcndRecordsPartition1Queries.xml +++ b/vxquery-xtest/src/test/resources/cat/GhcndRecordsPartition1Queries.xml @@ -29,11 +29,6 @@ Count records returned for q03 from the weather benchmark with 1 partition. q03_records.txt - q03_records-1.txt - q03_records-2.txt - q03_records-3.txt - q03_records-4.txt - q03_records-5.txt Count records returned for q05 from the weather benchmark with 1 partition. diff --git a/vxquery-xtest/src/test/resources/cat/GhcndRecordsPartition2Queries.xml b/vxquery-xtest/src/test/resources/cat/GhcndRecordsPartition2Queries.xml index ce7b0b783..17d6819c2 100644 --- a/vxquery-xtest/src/test/resources/cat/GhcndRecordsPartition2Queries.xml +++ b/vxquery-xtest/src/test/resources/cat/GhcndRecordsPartition2Queries.xml @@ -29,11 +29,6 @@ Count records returned for q03 from the weather benchmark with 2 partitions. q03_records.txt - q03_records-1.txt - q03_records-2.txt - q03_records-3.txt - q03_records-4.txt - q03_records-5.txt Count records returned for q05 from the weather benchmark with 2 partitions. diff --git a/vxquery-xtest/src/test/resources/cat/GhcndRecordsPartition4Queries.xml b/vxquery-xtest/src/test/resources/cat/GhcndRecordsPartition4Queries.xml index 3a0910a0d..3789c5113 100644 --- a/vxquery-xtest/src/test/resources/cat/GhcndRecordsPartition4Queries.xml +++ b/vxquery-xtest/src/test/resources/cat/GhcndRecordsPartition4Queries.xml @@ -29,11 +29,6 @@ Count records returned for q03 from the weather benchmark with 4 partitions. q03_records.txt - q03_records-1.txt - q03_records-2.txt - q03_records-3.txt - q03_records-4.txt - q03_records-5.txt Count records returned for q05 from the weather benchmark with 4 partitions. diff --git a/vxquery-xtest/src/test/resources/cat/SingleAlternateQuery.xml b/vxquery-xtest/src/test/resources/cat/SingleAlternateQuery.xml index bba230ca5..ea444d805 100644 --- a/vxquery-xtest/src/test/resources/cat/SingleAlternateQuery.xml +++ b/vxquery-xtest/src/test/resources/cat/SingleAlternateQuery.xml @@ -15,7 +15,7 @@ limitations under the License. --> - + Single Test diff --git a/vxquery-xtest/src/test/resources/cat/SingleQuery.xml b/vxquery-xtest/src/test/resources/cat/SingleQuery.xml index add4fabbb..19011b747 100644 --- a/vxquery-xtest/src/test/resources/cat/SingleQuery.xml +++ b/vxquery-xtest/src/test/resources/cat/SingleQuery.xml @@ -5,7 +5,9 @@ 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.