This is an automated email from the ASF dual-hosted git repository.

amashenkov pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/main by this push:
     new 214d1debfd IGNITE-21453 Fix force index hint test (#3175)
214d1debfd is described below

commit 214d1debfd2d201e4db9390926304785cede3a79
Author: Andrey Novikov <[email protected]>
AuthorDate: Thu Feb 8 21:34:02 2024 +0700

    IGNITE-21453 Fix force index hint test (#3175)
---
 .../planner/hints/ForceIndexHintPlannerTest.java      | 19 ++++++++++++-------
 1 file changed, 12 insertions(+), 7 deletions(-)

diff --git 
a/modules/sql-engine/src/test/java/org/apache/ignite/internal/sql/engine/planner/hints/ForceIndexHintPlannerTest.java
 
b/modules/sql-engine/src/test/java/org/apache/ignite/internal/sql/engine/planner/hints/ForceIndexHintPlannerTest.java
index c2b383095d..ffac3a3649 100644
--- 
a/modules/sql-engine/src/test/java/org/apache/ignite/internal/sql/engine/planner/hints/ForceIndexHintPlannerTest.java
+++ 
b/modules/sql-engine/src/test/java/org/apache/ignite/internal/sql/engine/planner/hints/ForceIndexHintPlannerTest.java
@@ -45,7 +45,7 @@ public class ForceIndexHintPlannerTest extends 
AbstractPlannerTest {
     @BeforeAll
     public static void setup() {
         SCHEMA = createSchemaFrom(
-                createSimpleTable(TBL1, 1)
+                createSimpleTable(TBL1, 100)
                         .andThen(addHashIndex("ID"))
                         .andThen(addSortIndex("VAL1"))
                         .andThen(addSortIndex("VAL2", "VAL3"))
@@ -62,16 +62,17 @@ public class ForceIndexHintPlannerTest extends 
AbstractPlannerTest {
     public void testWrongIndexName() throws Exception {
         var sql = "SELECT /*+ FORCE_INDEX({}) */ * FROM TBL1 WHERE id = 0 AND 
val1 = 'v'";
 
-        assertPlan(format(sql, "'tbl1_idx_id'"), SCHEMA, isTableScan(TBL1));
-        assertPlan(format(sql, "\"tbl1_idx_id\""), SCHEMA, isTableScan(TBL1));
-        assertPlan(format(sql, "'unexisting', 'tbl1_idx_id'"), SCHEMA, 
isTableScan(TBL1));
-        assertPlan(format(sql, "\"unexisting\", \"tbl1_idx_id\""), SCHEMA, 
isTableScan(TBL1));
+        assertNoCertainIndex(format(sql, "'tbl1_idx_id'"), TBL1, 
"TBL1_IDX_ID");
+        assertNoCertainIndex(format(sql, "\"tbl1_idx_id\""), TBL1, 
"TBL1_IDX_ID");
+        assertNoCertainIndex(format(sql, "'unexisting', 'tbl1_idx_id'"), TBL1, 
"UNEXISTING");
+        assertNoCertainIndex(format(sql, "\"unexisting\", \"tbl1_idx_id\""), 
TBL1, "UNEXISTING");
     }
 
     @Test
     public void testSingleTable() throws Exception {
         var sql = "SELECT /*+ FORCE_INDEX({}) */ * FROM TBL1 WHERE val2 = 'v' 
AND val3 = 'v'";
 
+        assertCertainIndex(format(sql, ""), TBL1, "IDX_VAL2_VAL3");
         assertCertainIndex(format(sql, "unexisting, idx_val3"), TBL1, 
"IDX_VAL3");
         assertCertainIndex(format(sql, "UNEXISTING, IDX_VAL3"), TBL1, 
"IDX_VAL3");
         assertCertainIndex(format(sql, "'UNEXISTING', 'IDX_VAL3'"), TBL1, 
"IDX_VAL3");
@@ -88,13 +89,13 @@ public class ForceIndexHintPlannerTest extends 
AbstractPlannerTest {
     public void testSubquery() throws Exception {
         var sql1 = "SELECT /*+ FORCE_INDEX({}) */ * FROM TBL1 t2, (SELECT * 
FROM TBL1 WHERE val2='v' AND val3='v') t1 WHERE t2.val2='v'";
 
-        assertPlan(format(sql1, ""), SCHEMA, 
nodeOrAnyChild(isTableScan(TBL1)));
+        assertCertainIndex(format(sql1, ""), TBL1, "IDX_VAL2_VAL3");
         assertCertainIndex(format(sql1, "IDX_VAL2_VAL3"), TBL1, 
"IDX_VAL2_VAL3");
         assertCertainIndex(format(sql1, "IDX_VAL3"), TBL1, "IDX_VAL3");
 
         var sql2 = "SELECT /*+ FORCE_INDEX({}) */ * FROM TBL2 t2 WHERE t2.val2 
= (SELECT val2 from TBL1 WHERE val2='v' AND val3='v')";
 
-        assertPlan(format(sql2, ""), SCHEMA, 
nodeOrAnyChild(isTableScan(TBL1)));
+        assertCertainIndex(format(sql2, ""), TBL1, "IDX_VAL2_VAL3");
         assertCertainIndex(format(sql2, "IDX_VAL2_VAL3"), TBL1, 
"IDX_VAL2_VAL3");
         assertCertainIndex(format(sql2, "IDX_VAL3"), TBL1, "IDX_VAL3");
     }
@@ -169,4 +170,8 @@ public class ForceIndexHintPlannerTest extends 
AbstractPlannerTest {
     private void assertCertainIndex(String sql, String tblName, String 
idxName) throws Exception {
         assertPlan(sql, SCHEMA, nodeOrAnyChild(isIndexScan(tblName, idxName)));
     }
+
+    private void assertNoCertainIndex(String sql, String tblName, String 
idxName) throws Exception {
+        assertPlan(sql, SCHEMA, nodeOrAnyChild(isIndexScan(tblName, 
idxName)).negate());
+    }
 }

Reply via email to