From 09cbe7724e2dd6845086232edc5426851bc81e1a Mon Sep 17 00:00:00 2001 From: Gavin Halliday Date: Wed, 20 Mar 2024 14:46:18 +0000 Subject: [PATCH] HPCC-31505 Add regression test for index read with continuation Signed-off-by: Gavin Halliday --- testing/regress/ecl/indexmerge.ecl | 40 ++++++++++++++++++++++++++ testing/regress/ecl/key/indexmerge.xml | 3 ++ 2 files changed, 43 insertions(+) create mode 100644 testing/regress/ecl/indexmerge.ecl create mode 100644 testing/regress/ecl/key/indexmerge.xml diff --git a/testing/regress/ecl/indexmerge.ecl b/testing/regress/ecl/indexmerge.ecl new file mode 100644 index 00000000000..e089e4c95a5 --- /dev/null +++ b/testing/regress/ecl/indexmerge.ecl @@ -0,0 +1,40 @@ +/*############################################################################## + + HPCC SYSTEMS software Copyright (C) 2024 HPCC Systems®. + + Licensed 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. +############################################################################## */ + +//class=file +//class=index +//version multiPart=false +//version multiPart=true + +import ^ as root; +multiPart := #IFDEFINED(root.multiPart, true); +useLocal := #IFDEFINED(root.useLocal, false); +useTranslation := #IFDEFINED(root.useTranslation, false); + +//--- end of version configuration --- + +import $.setup; +import setup.TS; +Files := setup.Files(multiPart, useLocal, useTranslation); + +//Read from an index, merging from a large number of cursor positions to generate a sorted output + +TS_searchIndex := Files.getSearchIndex(); +filtered := TS_searchIndex(KEYED(kind=1 AND word[1]='a')); +withOrder := STEPPED(filtered, doc, PRIORITY(3),HINT(maxseeklookahead(50))); + +OUTPUT(COUNT(NOFOLD(withOrder)) = 305475); diff --git a/testing/regress/ecl/key/indexmerge.xml b/testing/regress/ecl/key/indexmerge.xml new file mode 100644 index 00000000000..44a8709ad35 --- /dev/null +++ b/testing/regress/ecl/key/indexmerge.xml @@ -0,0 +1,3 @@ + + true +