pingcap/tidb

show `CARTESIAN JOIN` inappropriately in some cases

Open

#20.261 geöffnet am 28. Sept. 2020

Auf GitHub ansehen
 (1 Kommentar) (0 Reaktionen) (2 zugewiesene Personen)Go (6.186 Forks)batch import
good first issuehelp wantedsig/plannertype/enhancement

Repository-Metriken

Stars
 (40.090 Stars)
PR-Merge-Metriken
 (Durchschn. Merge 14T 4h) (346 gemergte PRs in 30 T)

Beschreibung

Development Task

mysql> desc select /*+ tidb_hj(t1) */ * from t t1 inner join t t2 where t1.a=t2.a and t1.a=1;
+---------------------------+---------+------+---------------+----------------------+
| id                        | estRows | task | access object | operator info        |
+---------------------------+---------+------+---------------+----------------------+
| HashJoin_7                | 1.00    | root |               | CARTESIAN inner join |
| ├─Point_Get_10(Build)     | 1.00    | root | table:t       | handle:1             |
| └─Point_Get_9(Probe)      | 1.00    | root | table:t       | handle:1             |
+---------------------------+---------+------+---------------+----------------------+
3 rows in set (0.00 sec)

In the case above, it's not a cartesian join, but there is a CARTESIAN in the result.

Contributor Guide