Full-text implementation step 1 - Introduced ftcontains() that conducts the full-text search - This version doesn't support index-based full-text search yet. After this step, the functionality will be added as a separate patch. - Added BinaryHashSet derived from BinaryHashMap class. - Parameter checking during the compilation is not merged yet.
Change-Id: If00a871a8241d6aa6931f97b694d65f164d3ab8c Reviewed-on: https://asterix-gerrit.ics.uci.edu/1228 Tested-by: Jenkins <jenk...@fulliautomatix.ics.uci.edu> Integration-Tests: Jenkins <jenk...@fulliautomatix.ics.uci.edu> Reviewed-by: Ian Maxon <ima...@apache.org> Project: http://git-wip-us.apache.org/repos/asf/asterixdb/repo Commit: http://git-wip-us.apache.org/repos/asf/asterixdb/commit/44cef249 Tree: http://git-wip-us.apache.org/repos/asf/asterixdb/tree/44cef249 Diff: http://git-wip-us.apache.org/repos/asf/asterixdb/diff/44cef249 Branch: refs/heads/master Commit: 44cef249a525991ea632b20422736ab82e72b94d Parents: fce8e29 Author: Taewoo Kim <wangs...@yahoo.com> Authored: Fri Dec 9 15:01:41 2016 -0800 Committer: Taewoo Kim <wangs...@yahoo.com> Committed: Sat Dec 10 00:14:10 2016 -0800 ---------------------------------------------------------------------- .../rules/am/InvertedIndexAccessMethod.java | 2 +- .../translator/util/FunctionCollection.java | 4 + .../fulltext/fulltext-01/fulltext-01.1.ddl.aql | 50 +++ .../fulltext-01/fulltext-01.2.update.aql | 24 ++ .../fulltext-01/fulltext-01.3.query.aql | 25 ++ .../fulltext-01/fulltext-01.4.query.aql | 26 ++ .../fulltext-01/fulltext-01.5.query.aql | 26 ++ .../fulltext/fulltext-02/fulltext-02.1.ddl.aql | 55 +++ .../fulltext-02/fulltext-02.2.update.aql | 24 ++ .../fulltext-02/fulltext-02.3.query.aql | 25 ++ .../fulltext-02/fulltext-02.4.query.aql | 25 ++ .../fulltext-02/fulltext-02.5.query.aql | 25 ++ .../fulltext-02/fulltext-02.6.query.aql | 25 ++ .../fulltext/fulltext-03/fulltext-03.1.ddl.aql | 67 ++++ .../fulltext-03/fulltext-03.2.update.aql | 28 ++ .../fulltext-03/fulltext-03.3.query.aql | 26 ++ .../fulltext-03/fulltext-03.4.query.aql | 26 ++ .../fulltext-03/fulltext-03.5.query.aql | 26 ++ .../fulltext-03/fulltext-03.6.query.aql | 26 ++ .../fulltext-03/fulltext-03.7.query.aql | 25 ++ .../fulltext-03/fulltext-03.8.query.aql | 25 ++ .../fulltext/fulltext-04/fulltext-04.1.ddl.aql | 56 +++ .../fulltext-04/fulltext-04.2.update.aql | 19 + .../fulltext-04/fulltext-04.3.query.aql | 25 ++ .../fulltext/fulltext-05/fulltext-05.1.ddl.aql | 58 +++ .../fulltext-05/fulltext-05.2.update.aql | 19 + .../fulltext-05/fulltext-05.3.query.aql | 25 ++ .../fulltext/fulltext-06/fulltext-06.1.ddl.aql | 58 +++ .../fulltext-06/fulltext-06.2.update.aql | 19 + .../fulltext-06/fulltext-06.3.query.aql | 25 ++ .../fulltext/fulltext-07/fulltext-07.1.ddl.aql | 61 +++ .../fulltext-07/fulltext-07.2.update.aql | 28 ++ .../fulltext-07/fulltext-07.3.query.aql | 26 ++ .../fulltext-07/fulltext-07.4.query.aql | 26 ++ .../fulltext/fulltext-01/fulltext-01.3.adm | 20 + .../fulltext/fulltext-01/fulltext-01.4.adm | 20 + .../fulltext/fulltext-01/fulltext-01.5.adm | 20 + .../fulltext/fulltext-02/fulltext-02.3.adm | 38 ++ .../fulltext/fulltext-02/fulltext-02.4.adm | 14 + .../fulltext/fulltext-02/fulltext-02.5.adm | 38 ++ .../fulltext/fulltext-02/fulltext-02.6.adm | 14 + .../fulltext/fulltext-03/fulltext-03.3.adm | 38 ++ .../fulltext/fulltext-03/fulltext-03.4.adm | 14 + .../fulltext/fulltext-03/fulltext-03.5.adm | 38 ++ .../fulltext/fulltext-03/fulltext-03.6.adm | 14 + .../fulltext/fulltext-03/fulltext-03.7.adm | 38 ++ .../fulltext/fulltext-03/fulltext-03.8.adm | 14 + .../fulltext/fulltext-04/fulltext-04.3.adm | 1 + .../fulltext/fulltext-05/fulltext-05.3.adm | 1 + .../fulltext/fulltext-06/fulltext-06.3.adm | 1 + .../fulltext/fulltext-07/fulltext-07.3.adm | 38 ++ .../fulltext/fulltext-07/fulltext-07.4.adm | 14 + .../src/test/resources/runtimets/testsuite.xml | 7 + .../src/site/markdown/aql/fulltext.md | 99 +++++ .../common/IBinaryTokenizerFactoryProvider.java | 3 +- .../BinaryComparatorFactoryProvider.java | 9 +- .../BinaryTokenizerFactoryProvider.java | 19 +- .../om/functions/AsterixBuiltinFunctions.java | 7 + .../asterix/om/util/ConstantExpressionUtil.java | 11 +- .../asterix/om/util/NonTaggedFormatUtil.java | 2 +- .../common/FullTextContainsEvaluator.java | 399 +++++++++++++++++++ .../common/SimilarityJaccardCheckEvaluator.java | 8 +- .../common/SimilarityJaccardEvaluator.java | 16 +- .../evaluators/functions/BinaryHashMap.java | 41 +- .../functions/FullTextContainsDescriptor.java | 105 +++++ .../records/RecordAddFieldsDescriptor.java | 9 +- .../visitors/DeepEqualityVisitorHelper.java | 5 +- .../visitors/ListDeepEqualityChecker.java | 7 +- .../visitors/RecordDeepEqualityChecker.java | 11 +- .../UTF8StringLowercaseTokenPointable.java | 80 ++++ .../hyracks/data/std/util/BinaryEntry.java | 79 ++++ .../hyracks/data/std/util/BinaryHashSet.java | 299 ++++++++++++++ .../DelimitedUTF8StringBinaryTokenizer.java | 2 +- .../hyracks/util/string/UTF8StringUtil.java | 62 ++- 74 files changed, 2597 insertions(+), 88 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/InvertedIndexAccessMethod.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/InvertedIndexAccessMethod.java b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/InvertedIndexAccessMethod.java index 78e308f..5b092b1 100644 --- a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/InvertedIndexAccessMethod.java +++ b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/optimizer/rules/am/InvertedIndexAccessMethod.java @@ -1131,7 +1131,7 @@ public class InvertedIndexAccessMethod implements IAccessMethod { switch (index.getIndexType()) { case SINGLE_PARTITION_WORD_INVIX: case LENGTH_PARTITIONED_WORD_INVIX: { - return BinaryTokenizerFactoryProvider.INSTANCE.getWordTokenizerFactory(searchKeyType, false); + return BinaryTokenizerFactoryProvider.INSTANCE.getWordTokenizerFactory(searchKeyType, false, false); } case SINGLE_PARTITION_NGRAM_INVIX: case LENGTH_PARTITIONED_NGRAM_INVIX: { http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/util/FunctionCollection.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/util/FunctionCollection.java b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/util/FunctionCollection.java index fc49503..144531e 100644 --- a/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/util/FunctionCollection.java +++ b/asterixdb/asterix-algebra/src/main/java/org/apache/asterix/translator/util/FunctionCollection.java @@ -152,6 +152,7 @@ import org.apache.asterix.runtime.evaluators.functions.EditDistanceContainsDescr import org.apache.asterix.runtime.evaluators.functions.EditDistanceDescriptor; import org.apache.asterix.runtime.evaluators.functions.EditDistanceListIsFilterableDescriptor; import org.apache.asterix.runtime.evaluators.functions.EditDistanceStringIsFilterableDescriptor; +import org.apache.asterix.runtime.evaluators.functions.FullTextContainsDescriptor; import org.apache.asterix.runtime.evaluators.functions.GetItemDescriptor; import org.apache.asterix.runtime.evaluators.functions.GramTokensDescriptor; import org.apache.asterix.runtime.evaluators.functions.HashedGramTokensDescriptor; @@ -595,6 +596,9 @@ public class FunctionCollection { functionsToInjectUnkownHandling.add(SimilarityJaccardSortedDescriptor.FACTORY); functionsToInjectUnkownHandling.add(SimilarityJaccardSortedCheckDescriptor.FACTORY); + // full-text function + functionsToInjectUnkownHandling.add(FullTextContainsDescriptor.FACTORY); + // Record functions. functionsToInjectUnkownHandling.add(GetRecordFieldsDescriptor.FACTORY); functionsToInjectUnkownHandling.add(GetRecordFieldValueDescriptor.FACTORY); http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-01/fulltext-01.1.ddl.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-01/fulltext-01.1.ddl.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-01/fulltext-01.1.ddl.aql new file mode 100644 index 0000000..6c731a9 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-01/fulltext-01.1.ddl.aql @@ -0,0 +1,50 @@ +/* + * 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. + */ + +/* + * Description : Full-text search non-index test + * : This test is intended to verify that the full-text search works as expected. + * : query #3 - single string value query + * : query #4 - single string value in an ordered list query + * : query #5 - single string value in an unordered list query + * Expected Result : Success + * +*/ + +drop dataverse test if exists; +create dataverse test; +use dataverse test; + +create type MyRecord as closed { + id: int64, + docid: int64, + val1: int64, + title: string, + point: point, + kwds: string, + line1: line, + line2: line, + poly1: polygon, + poly2: polygon, + rec: rectangle, + circle: circle +} + +create dataset MyData(MyRecord) + primary key id; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-01/fulltext-01.2.update.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-01/fulltext-01.2.update.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-01/fulltext-01.2.update.aql new file mode 100644 index 0000000..c627cf1 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-01/fulltext-01.2.update.aql @@ -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. + */ + +use dataverse test; + +load dataset MyData +using localfs +(("path"="asterix_nc1://data/spatial/spatialData2.json"),("format"="adm")); http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-01/fulltext-01.3.query.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-01/fulltext-01.3.query.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-01/fulltext-01.3.query.aql new file mode 100644 index 0000000..bc47bb6 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-01/fulltext-01.3.query.aql @@ -0,0 +1,25 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +use dataverse test; + +for $o in dataset MyData +where ftcontains($o.title, "database", {"mode":"any"}) +order by $o.id +return {"id":$o.id} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-01/fulltext-01.4.query.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-01/fulltext-01.4.query.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-01/fulltext-01.4.query.aql new file mode 100644 index 0000000..53cecb6 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-01/fulltext-01.4.query.aql @@ -0,0 +1,26 @@ +/* + * 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. + */ + + +use dataverse test; + +for $o in dataset MyData +where ftcontains($o.title, ["database"], {"mode":"any"}) +order by $o.id +return {"id":$o.id} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-01/fulltext-01.5.query.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-01/fulltext-01.5.query.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-01/fulltext-01.5.query.aql new file mode 100644 index 0000000..2a4ddea --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-01/fulltext-01.5.query.aql @@ -0,0 +1,26 @@ +/* + * 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. + */ + + +use dataverse test; + +for $o in dataset MyData +where ftcontains($o.title, {{"database"}}, {"mode":"any"}) +order by $o.id +return {"id":$o.id} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.1.ddl.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.1.ddl.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.1.ddl.aql new file mode 100644 index 0000000..eba30c4 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.1.ddl.aql @@ -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. + */ + +/* + * Description : Full-text search non-index test + * : This test is intended to verify that the full-text search works as expected. + * : query #3 - two string values in [an ordered list] query with "any" option + * : in this case, "any" option that enforces a disjunctive search will be applied. + * : query #4 - the same as query #3, but with a different option - "all" + * : in this case, we explicitly specify "all" option that enforces a conjunctive search. + * : query #5 - two string values in {{an unordered list}} query with "any" option + * : in this case, "any" option that enforces a disjunctive search will be applied. + * : query #6 - the same as query #6, but with a different option - "all" + * : in this case, we explicitly specify "all" option that enforces a conjunctive search. + * Expected Result : Success + * +*/ + +drop dataverse test if exists; +create dataverse test; +use dataverse test; + +create type MyRecord as closed { + id: int64, + docid: int64, + val1: int64, + title: string, + point: point, + kwds: string, + line1: line, + line2: line, + poly1: polygon, + poly2: polygon, + rec: rectangle, + circle: circle +} + +create dataset MyData(MyRecord) + primary key id; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.2.update.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.2.update.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.2.update.aql new file mode 100644 index 0000000..c627cf1 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.2.update.aql @@ -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. + */ + +use dataverse test; + +load dataset MyData +using localfs +(("path"="asterix_nc1://data/spatial/spatialData2.json"),("format"="adm")); http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.3.query.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.3.query.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.3.query.aql new file mode 100644 index 0000000..caa4a9a --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.3.query.aql @@ -0,0 +1,25 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +use dataverse test; + +for $o in dataset MyData +where ftcontains($o.title, ["object","database"], {"mode":"any"}) +order by $o.id +return {"id":$o.id} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.4.query.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.4.query.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.4.query.aql new file mode 100644 index 0000000..dc2b30a --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.4.query.aql @@ -0,0 +1,25 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +use dataverse test; + +for $o in dataset MyData +where ftcontains($o.title, ["object","database"], {"mode":"all"}) +order by $o.id +return {"id":$o.id} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.5.query.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.5.query.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.5.query.aql new file mode 100644 index 0000000..05c2a37 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.5.query.aql @@ -0,0 +1,25 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +use dataverse test; + +for $o in dataset MyData +where ftcontains($o.title, {{"object","database"}}, {"mode":"any"}) +order by $o.id +return {"id":$o.id} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.6.query.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.6.query.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.6.query.aql new file mode 100644 index 0000000..7cd2428 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-02/fulltext-02.6.query.aql @@ -0,0 +1,25 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +use dataverse test; + +for $o in dataset MyData +where ftcontains($o.title, {{"object","database"}}, {"mode":"all"}) +order by $o.id +return {"id":$o.id} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.1.ddl.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.1.ddl.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.1.ddl.aql new file mode 100644 index 0000000..9096d89 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.1.ddl.aql @@ -0,0 +1,67 @@ +/* + * 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. + */ + +/* + * Description : Full-text search non-index test + * : This test is intended to verify that the full-text search works as expected. + * : In this test, search predicate is provided as a variable. + * : query #3 - two string values in [an ordered list] query with "any" option + * : in this case, "any" option that enforces a disjunctive search will be applied. + * : query #4 - the same as query #3, but with a different option - "all" + * : in this case, we explicitly specify "all" option that enforces a conjunctive search. + * : query #5 - two string values in {{an unordered list}} query with "any" option + * : in this case, "any" option that enforces a disjunctive search will be applied. + * : query #6 - the same as query #5, but with a different option - "all" + * : in this case, we explicitly specify "all" option that enforces a conjunctive search. + * : query #7 - two string values in a dataset query with "any" option + * : in this case, "any" option that enforces a disjunctive search will be applied. + * : query #8 - the same as query #7, but with a different option - "all" + * : in this case, we explicitly specify "all" option that enforces a conjunctive search. + * Expected Result : Success + * +*/ + +drop dataverse test if exists; +create dataverse test; +use dataverse test; + +create type MyRecord as closed { + id: int64, + docid: int64, + val1: int64, + title: string, + point: point, + kwds: string, + line1: line, + line2: line, + poly1: polygon, + poly2: polygon, + rec: rectangle, + circle: circle +} + +create type MyKeyword as closed { + keyword_text: string +} + +create dataset MyData(MyRecord) + primary key id; + +create dataset MyKeywordData(MyKeyword) + primary key keyword_text; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.2.update.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.2.update.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.2.update.aql new file mode 100644 index 0000000..d60dd6a --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.2.update.aql @@ -0,0 +1,28 @@ +/* + * 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. + */ + +use dataverse test; + +load dataset MyData +using localfs +(("path"="asterix_nc1://data/spatial/spatialData2.json"),("format"="adm")); + +insert into dataset MyKeywordData ({"keyword_text":"object"}); + +insert into dataset MyKeywordData ({"keyword_text":"database"}); http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.3.query.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.3.query.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.3.query.aql new file mode 100644 index 0000000..dcf61c5 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.3.query.aql @@ -0,0 +1,26 @@ +/* + * 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. + */ + +use dataverse test; + +for $o in dataset MyData +let $list := ["object", "database"] +where ftcontains($o.title, $list, {"mode":"any"}) +order by $o.id +return {"id":$o.id} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.4.query.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.4.query.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.4.query.aql new file mode 100644 index 0000000..86fe5d4 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.4.query.aql @@ -0,0 +1,26 @@ +/* + * 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. + */ + +use dataverse test; + +for $o in dataset MyData +let $list := ["object", "database"] +where ftcontains($o.title, $list, {"mode":"all"}) +order by $o.id +return {"id":$o.id} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.5.query.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.5.query.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.5.query.aql new file mode 100644 index 0000000..5d0a546 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.5.query.aql @@ -0,0 +1,26 @@ +/* + * 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. + */ + +use dataverse test; + +for $o in dataset MyData +let $list := {{"object", "database"}} +where ftcontains($o.title, $list, {"mode":"any"}) +order by $o.id +return {"id":$o.id} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.6.query.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.6.query.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.6.query.aql new file mode 100644 index 0000000..7def1fa --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.6.query.aql @@ -0,0 +1,26 @@ +/* + * 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. + */ + +use dataverse test; + +for $o in dataset MyData +let $list := {{"object", "database"}} +where ftcontains($o.title, $list, {"mode":"all"}) +order by $o.id +return {"id":$o.id} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.7.query.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.7.query.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.7.query.aql new file mode 100644 index 0000000..4cc2f45 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.7.query.aql @@ -0,0 +1,25 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +use dataverse test; + +for $o in dataset MyData +where ftcontains($o.title, for $list in dataset MyKeywordData return $list.keyword_text, {"mode":"any"}) +order by $o.id +return {"id":$o.id} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.8.query.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.8.query.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.8.query.aql new file mode 100644 index 0000000..bae1da5 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-03/fulltext-03.8.query.aql @@ -0,0 +1,25 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +use dataverse test; + +for $o in dataset MyData +where ftcontains($o.title, for $list in dataset MyKeywordData return $list.keyword_text, {"mode":"all"}) +order by $o.id +return {"id":$o.id} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-04/fulltext-04.1.ddl.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-04/fulltext-04.1.ddl.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-04/fulltext-04.1.ddl.aql new file mode 100644 index 0000000..14cda48 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-04/fulltext-04.1.ddl.aql @@ -0,0 +1,56 @@ +/* + * 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. + */ + +/* + * Description : Full-text search non-index test + * : This test is intended to verify that the full-text search DOES NOT work as expected. + * : query #3 - a string phrase is provided as a query predicate. + * : this should throw an exception since we don't support a phrase search yet. + * Expected Result : Exception + * +*/ + +drop dataverse test if exists; +create dataverse test; +use dataverse test; + +create type MyRecord as closed { + id: int64, + docid: int64, + val1: int64, + title: string, + point: point, + kwds: string, + line1: line, + line2: line, + poly1: polygon, + poly2: polygon, + rec: rectangle, + circle: circle +} + +create type MyKeyword as closed { + keyword_text: string +} + +create dataset MyData(MyRecord) + primary key id; + +create dataset MyKeywordData(MyKeyword) + primary key keyword_text; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-04/fulltext-04.2.update.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-04/fulltext-04.2.update.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-04/fulltext-04.2.update.aql new file mode 100644 index 0000000..bd244d0 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-04/fulltext-04.2.update.aql @@ -0,0 +1,19 @@ +/* + * 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. + */ + http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-04/fulltext-04.3.query.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-04/fulltext-04.3.query.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-04/fulltext-04.3.query.aql new file mode 100644 index 0000000..2769cbd --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-04/fulltext-04.3.query.aql @@ -0,0 +1,25 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +use dataverse test; + +for $o in dataset MyData +where ftcontains($o.title, "object database", {"mode":"any"}) +order by $o.id +return {"id":$o.id} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-05/fulltext-05.1.ddl.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-05/fulltext-05.1.ddl.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-05/fulltext-05.1.ddl.aql new file mode 100644 index 0000000..011a86e --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-05/fulltext-05.1.ddl.aql @@ -0,0 +1,58 @@ +/* + * 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. + */ + +/* + * Description : Full-text search non-index test + * : This test is intended to verify that the full-text search DOES NOT work as expected. + * : query #3 - a string phrase in an ordered list is provided as a query predicate. + * : this should throw an exception since we don't support a phrase search yet. + * Expected Result : Exception + * +*/ + +drop dataverse test if exists; +create dataverse test; +use dataverse test; + +create type MyRecord as closed { + id: int64, + docid: int64, + val1: int64, + title: string, + point: point, + kwds: string, + line1: line, + line2: line, + poly1: polygon, + poly2: polygon, + rec: rectangle, + circle: circle +} + +create type MyKeyword as closed { + keyword_text: string +} + +create dataset MyData(MyRecord) + primary key id; + +create dataset MyKeywordData(MyKeyword) + primary key keyword_text; + +create index fulltext_index_title on MyData(title) type fulltext; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-05/fulltext-05.2.update.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-05/fulltext-05.2.update.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-05/fulltext-05.2.update.aql new file mode 100644 index 0000000..bd244d0 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-05/fulltext-05.2.update.aql @@ -0,0 +1,19 @@ +/* + * 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. + */ + http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-05/fulltext-05.3.query.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-05/fulltext-05.3.query.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-05/fulltext-05.3.query.aql new file mode 100644 index 0000000..5d4bd2f --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-05/fulltext-05.3.query.aql @@ -0,0 +1,25 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +use dataverse test; + +for $o in dataset MyData +where ftcontains($o.title, ["object database","systems"], {"mode":"any"}) +order by $o.id +return {"id":$o.id} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-06/fulltext-06.1.ddl.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-06/fulltext-06.1.ddl.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-06/fulltext-06.1.ddl.aql new file mode 100644 index 0000000..e155ba8 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-06/fulltext-06.1.ddl.aql @@ -0,0 +1,58 @@ +/* + * 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. + */ + +/* + * Description : Full-text search non-index test + * : This test is intended to verify that the full-text search DOES NOT work as expected. + * : query #3 - a string phrase in an unordered list is provided as a query predicate. + * : this should throw an exception since we don't support a phrase search yet. + * Expected Result : Exception + * +*/ + +drop dataverse test if exists; +create dataverse test; +use dataverse test; + +create type MyRecord as closed { + id: int64, + docid: int64, + val1: int64, + title: string, + point: point, + kwds: string, + line1: line, + line2: line, + poly1: polygon, + poly2: polygon, + rec: rectangle, + circle: circle +} + +create type MyKeyword as closed { + keyword_text: string +} + +create dataset MyData(MyRecord) + primary key id; + +create dataset MyKeywordData(MyKeyword) + primary key keyword_text; + +create index fulltext_index_title on MyData(title) type fulltext; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-06/fulltext-06.2.update.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-06/fulltext-06.2.update.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-06/fulltext-06.2.update.aql new file mode 100644 index 0000000..bd244d0 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-06/fulltext-06.2.update.aql @@ -0,0 +1,19 @@ +/* + * 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. + */ + http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-06/fulltext-06.3.query.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-06/fulltext-06.3.query.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-06/fulltext-06.3.query.aql new file mode 100644 index 0000000..a509e10 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-06/fulltext-06.3.query.aql @@ -0,0 +1,25 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +use dataverse test; + +for $o in dataset MyData +where ftcontains($o.title, {{"object database","systems"}}, {"mode":"any"}) +order by $o.id +return {"id":$o.id} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-07/fulltext-07.1.ddl.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-07/fulltext-07.1.ddl.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-07/fulltext-07.1.ddl.aql new file mode 100644 index 0000000..13e5506 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-07/fulltext-07.1.ddl.aql @@ -0,0 +1,61 @@ +/* + * 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. + */ + +/* + * Description : Full-text search non-index test + * : This test is intended to verify that the full-text search works as expected. + * : query #3 - two string values in [an ordered list] query with "any" option. + * : an ordered list is first initialized by let clause and is being used. + * : in this case, "any" option that enforces a disjunctive search will be applied. + * : query #4 - the same as query #3, but with a different option - "all" + * : in this case, we explicitly specify "all" option that enforces a conjunctive search. + * Expected Result : Success + * +*/ + +drop dataverse test if exists; +create dataverse test; +use dataverse test; + +create type MyRecord as closed { + id: int64, + docid: int64, + val1: int64, + title: string, + point: point, + kwds: string, + line1: line, + line2: line, + poly1: polygon, + poly2: polygon, + rec: rectangle, + circle: circle +} + +create type MyKeyword as closed { + keyword_text: string +} + +create dataset MyData(MyRecord) + primary key id; + +create dataset MyKeywordData(MyKeyword) + primary key keyword_text; + +create index fulltext_index_title on MyData(title) type fulltext; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-07/fulltext-07.2.update.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-07/fulltext-07.2.update.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-07/fulltext-07.2.update.aql new file mode 100644 index 0000000..d60dd6a --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-07/fulltext-07.2.update.aql @@ -0,0 +1,28 @@ +/* + * 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. + */ + +use dataverse test; + +load dataset MyData +using localfs +(("path"="asterix_nc1://data/spatial/spatialData2.json"),("format"="adm")); + +insert into dataset MyKeywordData ({"keyword_text":"object"}); + +insert into dataset MyKeywordData ({"keyword_text":"database"}); http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-07/fulltext-07.3.query.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-07/fulltext-07.3.query.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-07/fulltext-07.3.query.aql new file mode 100644 index 0000000..f567c7b --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-07/fulltext-07.3.query.aql @@ -0,0 +1,26 @@ +/* + * 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. + */ + +use dataverse test; + +for $k in dataset MyKeywordData +for $t in dataset MyData +where ftcontains($t.title, $k.keyword_text, {"mode":"any"}) +order by $t.id +return {"id":$t.id} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-07/fulltext-07.4.query.aql ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-07/fulltext-07.4.query.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-07/fulltext-07.4.query.aql new file mode 100644 index 0000000..ceeb2ad --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/fulltext/fulltext-07/fulltext-07.4.query.aql @@ -0,0 +1,26 @@ +/* + * 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. + */ + +use dataverse test; + +for $k in dataset MyKeywordData +for $t in dataset MyData +where ftcontains($t.title, $k.keyword_text, {"mode":"all"}) +order by $t.id +return {"id":$t.id} http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-01/fulltext-01.3.adm ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-01/fulltext-01.3.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-01/fulltext-01.3.adm new file mode 100644 index 0000000..a64e700 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-01/fulltext-01.3.adm @@ -0,0 +1,20 @@ +{ "id": 5 } +{ "id": 8 } +{ "id": 12 } +{ "id": 13 } +{ "id": 16 } +{ "id": 19 } +{ "id": 22 } +{ "id": 23 } +{ "id": 26 } +{ "id": 29 } +{ "id": 35 } +{ "id": 38 } +{ "id": 42 } +{ "id": 43 } +{ "id": 46 } +{ "id": 49 } +{ "id": 52 } +{ "id": 53 } +{ "id": 56 } +{ "id": 59 } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-01/fulltext-01.4.adm ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-01/fulltext-01.4.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-01/fulltext-01.4.adm new file mode 100644 index 0000000..a64e700 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-01/fulltext-01.4.adm @@ -0,0 +1,20 @@ +{ "id": 5 } +{ "id": 8 } +{ "id": 12 } +{ "id": 13 } +{ "id": 16 } +{ "id": 19 } +{ "id": 22 } +{ "id": 23 } +{ "id": 26 } +{ "id": 29 } +{ "id": 35 } +{ "id": 38 } +{ "id": 42 } +{ "id": 43 } +{ "id": 46 } +{ "id": 49 } +{ "id": 52 } +{ "id": 53 } +{ "id": 56 } +{ "id": 59 } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-01/fulltext-01.5.adm ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-01/fulltext-01.5.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-01/fulltext-01.5.adm new file mode 100644 index 0000000..a64e700 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-01/fulltext-01.5.adm @@ -0,0 +1,20 @@ +{ "id": 5 } +{ "id": 8 } +{ "id": 12 } +{ "id": 13 } +{ "id": 16 } +{ "id": 19 } +{ "id": 22 } +{ "id": 23 } +{ "id": 26 } +{ "id": 29 } +{ "id": 35 } +{ "id": 38 } +{ "id": 42 } +{ "id": 43 } +{ "id": 46 } +{ "id": 49 } +{ "id": 52 } +{ "id": 53 } +{ "id": 56 } +{ "id": 59 } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-02/fulltext-02.3.adm ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-02/fulltext-02.3.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-02/fulltext-02.3.adm new file mode 100644 index 0000000..9b34c44 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-02/fulltext-02.3.adm @@ -0,0 +1,38 @@ +{ "id": 1 } +{ "id": 2 } +{ "id": 5 } +{ "id": 6 } +{ "id": 8 } +{ "id": 11 } +{ "id": 12 } +{ "id": 13 } +{ "id": 16 } +{ "id": 17 } +{ "id": 19 } +{ "id": 20 } +{ "id": 21 } +{ "id": 22 } +{ "id": 23 } +{ "id": 26 } +{ "id": 27 } +{ "id": 29 } +{ "id": 30 } +{ "id": 31 } +{ "id": 32 } +{ "id": 35 } +{ "id": 36 } +{ "id": 38 } +{ "id": 41 } +{ "id": 42 } +{ "id": 43 } +{ "id": 46 } +{ "id": 47 } +{ "id": 49 } +{ "id": 50 } +{ "id": 51 } +{ "id": 52 } +{ "id": 53 } +{ "id": 56 } +{ "id": 57 } +{ "id": 59 } +{ "id": 60 } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-02/fulltext-02.4.adm ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-02/fulltext-02.4.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-02/fulltext-02.4.adm new file mode 100644 index 0000000..acde73f --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-02/fulltext-02.4.adm @@ -0,0 +1,14 @@ +{ "id": 8 } +{ "id": 13 } +{ "id": 16 } +{ "id": 19 } +{ "id": 23 } +{ "id": 26 } +{ "id": 29 } +{ "id": 38 } +{ "id": 43 } +{ "id": 46 } +{ "id": 49 } +{ "id": 53 } +{ "id": 56 } +{ "id": 59 } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-02/fulltext-02.5.adm ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-02/fulltext-02.5.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-02/fulltext-02.5.adm new file mode 100644 index 0000000..9b34c44 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-02/fulltext-02.5.adm @@ -0,0 +1,38 @@ +{ "id": 1 } +{ "id": 2 } +{ "id": 5 } +{ "id": 6 } +{ "id": 8 } +{ "id": 11 } +{ "id": 12 } +{ "id": 13 } +{ "id": 16 } +{ "id": 17 } +{ "id": 19 } +{ "id": 20 } +{ "id": 21 } +{ "id": 22 } +{ "id": 23 } +{ "id": 26 } +{ "id": 27 } +{ "id": 29 } +{ "id": 30 } +{ "id": 31 } +{ "id": 32 } +{ "id": 35 } +{ "id": 36 } +{ "id": 38 } +{ "id": 41 } +{ "id": 42 } +{ "id": 43 } +{ "id": 46 } +{ "id": 47 } +{ "id": 49 } +{ "id": 50 } +{ "id": 51 } +{ "id": 52 } +{ "id": 53 } +{ "id": 56 } +{ "id": 57 } +{ "id": 59 } +{ "id": 60 } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-02/fulltext-02.6.adm ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-02/fulltext-02.6.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-02/fulltext-02.6.adm new file mode 100644 index 0000000..acde73f --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-02/fulltext-02.6.adm @@ -0,0 +1,14 @@ +{ "id": 8 } +{ "id": 13 } +{ "id": 16 } +{ "id": 19 } +{ "id": 23 } +{ "id": 26 } +{ "id": 29 } +{ "id": 38 } +{ "id": 43 } +{ "id": 46 } +{ "id": 49 } +{ "id": 53 } +{ "id": 56 } +{ "id": 59 } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.3.adm ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.3.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.3.adm new file mode 100644 index 0000000..9b34c44 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.3.adm @@ -0,0 +1,38 @@ +{ "id": 1 } +{ "id": 2 } +{ "id": 5 } +{ "id": 6 } +{ "id": 8 } +{ "id": 11 } +{ "id": 12 } +{ "id": 13 } +{ "id": 16 } +{ "id": 17 } +{ "id": 19 } +{ "id": 20 } +{ "id": 21 } +{ "id": 22 } +{ "id": 23 } +{ "id": 26 } +{ "id": 27 } +{ "id": 29 } +{ "id": 30 } +{ "id": 31 } +{ "id": 32 } +{ "id": 35 } +{ "id": 36 } +{ "id": 38 } +{ "id": 41 } +{ "id": 42 } +{ "id": 43 } +{ "id": 46 } +{ "id": 47 } +{ "id": 49 } +{ "id": 50 } +{ "id": 51 } +{ "id": 52 } +{ "id": 53 } +{ "id": 56 } +{ "id": 57 } +{ "id": 59 } +{ "id": 60 } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.4.adm ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.4.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.4.adm new file mode 100644 index 0000000..acde73f --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.4.adm @@ -0,0 +1,14 @@ +{ "id": 8 } +{ "id": 13 } +{ "id": 16 } +{ "id": 19 } +{ "id": 23 } +{ "id": 26 } +{ "id": 29 } +{ "id": 38 } +{ "id": 43 } +{ "id": 46 } +{ "id": 49 } +{ "id": 53 } +{ "id": 56 } +{ "id": 59 } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.5.adm ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.5.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.5.adm new file mode 100644 index 0000000..9b34c44 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.5.adm @@ -0,0 +1,38 @@ +{ "id": 1 } +{ "id": 2 } +{ "id": 5 } +{ "id": 6 } +{ "id": 8 } +{ "id": 11 } +{ "id": 12 } +{ "id": 13 } +{ "id": 16 } +{ "id": 17 } +{ "id": 19 } +{ "id": 20 } +{ "id": 21 } +{ "id": 22 } +{ "id": 23 } +{ "id": 26 } +{ "id": 27 } +{ "id": 29 } +{ "id": 30 } +{ "id": 31 } +{ "id": 32 } +{ "id": 35 } +{ "id": 36 } +{ "id": 38 } +{ "id": 41 } +{ "id": 42 } +{ "id": 43 } +{ "id": 46 } +{ "id": 47 } +{ "id": 49 } +{ "id": 50 } +{ "id": 51 } +{ "id": 52 } +{ "id": 53 } +{ "id": 56 } +{ "id": 57 } +{ "id": 59 } +{ "id": 60 } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.6.adm ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.6.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.6.adm new file mode 100644 index 0000000..acde73f --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.6.adm @@ -0,0 +1,14 @@ +{ "id": 8 } +{ "id": 13 } +{ "id": 16 } +{ "id": 19 } +{ "id": 23 } +{ "id": 26 } +{ "id": 29 } +{ "id": 38 } +{ "id": 43 } +{ "id": 46 } +{ "id": 49 } +{ "id": 53 } +{ "id": 56 } +{ "id": 59 } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.7.adm ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.7.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.7.adm new file mode 100644 index 0000000..9b34c44 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.7.adm @@ -0,0 +1,38 @@ +{ "id": 1 } +{ "id": 2 } +{ "id": 5 } +{ "id": 6 } +{ "id": 8 } +{ "id": 11 } +{ "id": 12 } +{ "id": 13 } +{ "id": 16 } +{ "id": 17 } +{ "id": 19 } +{ "id": 20 } +{ "id": 21 } +{ "id": 22 } +{ "id": 23 } +{ "id": 26 } +{ "id": 27 } +{ "id": 29 } +{ "id": 30 } +{ "id": 31 } +{ "id": 32 } +{ "id": 35 } +{ "id": 36 } +{ "id": 38 } +{ "id": 41 } +{ "id": 42 } +{ "id": 43 } +{ "id": 46 } +{ "id": 47 } +{ "id": 49 } +{ "id": 50 } +{ "id": 51 } +{ "id": 52 } +{ "id": 53 } +{ "id": 56 } +{ "id": 57 } +{ "id": 59 } +{ "id": 60 } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.8.adm ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.8.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.8.adm new file mode 100644 index 0000000..acde73f --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-03/fulltext-03.8.adm @@ -0,0 +1,14 @@ +{ "id": 8 } +{ "id": 13 } +{ "id": 16 } +{ "id": 19 } +{ "id": 23 } +{ "id": 26 } +{ "id": 29 } +{ "id": 38 } +{ "id": 43 } +{ "id": 46 } +{ "id": 49 } +{ "id": 53 } +{ "id": 56 } +{ "id": 59 } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-04/fulltext-04.3.adm ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-04/fulltext-04.3.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-04/fulltext-04.3.adm new file mode 100644 index 0000000..0787798 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-04/fulltext-04.3.adm @@ -0,0 +1 @@ +{ "id": 1 } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-05/fulltext-05.3.adm ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-05/fulltext-05.3.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-05/fulltext-05.3.adm new file mode 100644 index 0000000..0787798 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-05/fulltext-05.3.adm @@ -0,0 +1 @@ +{ "id": 1 } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-06/fulltext-06.3.adm ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-06/fulltext-06.3.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-06/fulltext-06.3.adm new file mode 100644 index 0000000..0787798 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-06/fulltext-06.3.adm @@ -0,0 +1 @@ +{ "id": 1 } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-07/fulltext-07.3.adm ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-07/fulltext-07.3.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-07/fulltext-07.3.adm new file mode 100644 index 0000000..9b34c44 --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-07/fulltext-07.3.adm @@ -0,0 +1,38 @@ +{ "id": 1 } +{ "id": 2 } +{ "id": 5 } +{ "id": 6 } +{ "id": 8 } +{ "id": 11 } +{ "id": 12 } +{ "id": 13 } +{ "id": 16 } +{ "id": 17 } +{ "id": 19 } +{ "id": 20 } +{ "id": 21 } +{ "id": 22 } +{ "id": 23 } +{ "id": 26 } +{ "id": 27 } +{ "id": 29 } +{ "id": 30 } +{ "id": 31 } +{ "id": 32 } +{ "id": 35 } +{ "id": 36 } +{ "id": 38 } +{ "id": 41 } +{ "id": 42 } +{ "id": 43 } +{ "id": 46 } +{ "id": 47 } +{ "id": 49 } +{ "id": 50 } +{ "id": 51 } +{ "id": 52 } +{ "id": 53 } +{ "id": 56 } +{ "id": 57 } +{ "id": 59 } +{ "id": 60 } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-07/fulltext-07.4.adm ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-07/fulltext-07.4.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-07/fulltext-07.4.adm new file mode 100644 index 0000000..acde73f --- /dev/null +++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/fulltext/fulltext-07/fulltext-07.4.adm @@ -0,0 +1,14 @@ +{ "id": 8 } +{ "id": 13 } +{ "id": 16 } +{ "id": 19 } +{ "id": 23 } +{ "id": 26 } +{ "id": 29 } +{ "id": 38 } +{ "id": 43 } +{ "id": 46 } +{ "id": 49 } +{ "id": 53 } +{ "id": 56 } +{ "id": 59 } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/44cef249/asterixdb/asterix-app/src/test/resources/runtimets/testsuite.xml ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/testsuite.xml b/asterixdb/asterix-app/src/test/resources/runtimets/testsuite.xml index 67e9909..e4d4ee3 100644 --- a/asterixdb/asterix-app/src/test/resources/runtimets/testsuite.xml +++ b/asterixdb/asterix-app/src/test/resources/runtimets/testsuite.xml @@ -381,6 +381,13 @@ </compilation-unit> </test-case> </test-group> + <test-group name="fulltext"> + <test-case FilePath="fulltext"> + <compilation-unit name="fulltext-01"> + <output-dir compare="Text">fulltext-01</output-dir> + </compilation-unit> + </test-case> + </test-group> <test-group name="union"> <test-case FilePath="union"> <compilation-unit name="union">