[
https://issues.apache.org/jira/browse/IGNITE-25504?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Konstantin Orlov reassigned IGNITE-25504:
-----------------------------------------
Assignee: Konstantin Orlov
> Sql. Confusing explain output for join condition
> ------------------------------------------------
>
> Key: IGNITE-25504
> URL: https://issues.apache.org/jira/browse/IGNITE-25504
> Project: Ignite
> Issue Type: Improvement
> Components: sql ai3
> Reporter: Evgeny Stanilovsky
> Assignee: Konstantin Orlov
> Priority: Major
> Labels: ignite-3
>
> Confusing condition found:
> {noformat}
> MergeJoin
> condition: =(VAL1, VAL10) <--- VAL10 what does it mean ?
> joinType: inner
> est: (rows=1)
> IndexScan
> table: PUBLIC.T1
> index: IDX1
> type: SORTED
> fields: [ID, VAL1]
> collation: [VAL1 ASC]
> est: (rows=1)
> IndexScan
> table: PUBLIC.T2
> index: IDX2
> type: SORTED
> fields: [ID, VAL1]
> collation: [VAL1 ASC, ID ASC]
> est: (rows=1)
> {noformat}
> to reproduce:
> with @WithSystemProperty(key = COLOCATION_FEATURE_FLAG, value = "true")
> {noformat}
> sql("CREATE TABLE T1 (ID INT, VAL1 VARCHAR, VAL2 VARCHAR, PRIMARY
> KEY(VAL1, VAL2)) COLOCATE BY(VAL1);");
> sql("CREATE TABLE T2 (ID INT, VAL1 VARCHAR, VAL2 VARCHAR, PRIMARY
> KEY(VAL1, VAL2)) COLOCATE BY(VAL1);");
> sql("CREATE INDEX IDX1 ON T1(VAL1, VAL2);");
> sql("CREATE INDEX IDX2 ON T2(VAL1, ID);");
> List<List<Object>> res = sql("explain plan for SELECT T1.ID as T1ID,
> T2.ID as T2ID FROM T1 JOIN T2 USING (VAL1);");
> System.err.println("plan: " + res.get(0));
> {noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)