Details
-
Task
-
Status: In Review (View Workflow)
-
Major
-
Resolution: Unresolved
Description
EXISTS-to-IN optimization performs trivial correlation detection and removal.
MySQL 8 has got it too, but in addition to EXISTS subqueries, they perform de-correlation also for IN subqueries. This allows them to use Materialization strategy for trivially-correlated IN- subqueries:
create table ten(a int primary key);
|
insert into ten values (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
|
create table t1 (a int, b int, c int);
|
insert into t1 select a,a,a from ten;
|
create table t2 select * from t1;
|
explain select * from t1 where a in (select a from t2 where t1.b=t2.b);
|
id select_type table partitions type possible_keys key key_len ref rows filtered Extra
|
1 SIMPLE t1 NULL ALL NULL NULL NULL NULL 10 100.00 Using where
|
1 SIMPLE <subquery2> NULL eq_ref <auto_distinct_key> <auto_distinct_key> 10 test.t1.a,test.t1.b 1 100.00 NULL
|
2 MATERIALIZED t2 NULL ALL NULL NULL NULL NULL 10 100.00 NULL
|
Attachments
Issue Links
- blocks
-
MDEV-31510 Allow exists2in and decorrelate-in to work for IN/EXISTS subqueries in arbitrary context
-
- Open
-
- is blocked by
-
MDEV-30073 Wrong result on 2nd execution of PS for query with NOT EXISTS
-
- In Progress
-
- relates to
-
MDEV-3881 Endless loop for query with EXISTS predicate using outer reference to view
-
- Closed
-
-
MDEV-31229 Extend check_equality_for_exist2in() to cover inner table expressions
-
- Open
-
-
MDEV-31408 Second SELECT from VIEW based on information_schema.optimizer_trace gives NULL result
-
- Closed
-
-
MDEV-31647 Stack looping and SIGSEGV in Item_args::walk_args on UPDATE
-
- Open
-
Activity
Field | Original Value | New Value |
---|---|---|
Labels | subquery |
Assignee | Sergei Petrunia [ psergey ] |
Rank | Ranked lower |
Fix Version/s | 10.7 [ 24805 ] | |
Fix Version/s | 10.6 [ 24028 ] |
Fix Version/s | 10.8 [ 26121 ] | |
Fix Version/s | 10.7 [ 24805 ] |
Workflow | MariaDB v3 [ 108567 ] | MariaDB v4 [ 131288 ] |
Labels | subquery | optimizer subquery |
Labels | optimizer subquery | optimizer optimizer-easy subquery |
Fix Version/s | 10.9 [ 26905 ] | |
Fix Version/s | 10.8 [ 26121 ] |
Fix Version/s | 10.10 [ 27530 ] | |
Fix Version/s | 10.9 [ 26905 ] |
Fix Version/s | 10.11 [ 27614 ] | |
Fix Version/s | 10.10 [ 27530 ] |
Fix Version/s | 10.12 [ 28320 ] | |
Fix Version/s | 10.11 [ 27614 ] |
Fix Version/s | 11.2 [ 28603 ] | |
Fix Version/s | 11.0 [ 28320 ] |
Assignee | Sergei Petrunia [ psergey ] | Yuchen Pei [ JIRAUSER52627 ] |
Status | Open [ 1 ] | In Progress [ 3 ] |
Priority | Major [ 3 ] | Critical [ 2 ] |
Link | This issue relates to MDEV-31229 [ MDEV-31229 ] |
Link | This issue relates to MDEV-31269 [ MDEV-31269 ] |
Assignee | Yuchen Pei [ JIRAUSER52627 ] | Sergei Petrunia [ psergey ] |
Status | In Progress [ 3 ] | In Review [ 10002 ] |
Link | This issue is blocked by MDEV-31269 [ MDEV-31269 ] |
Assignee | Sergei Petrunia [ psergey ] | Yuchen Pei [ JIRAUSER52627 ] |
Status | In Review [ 10002 ] | Stalled [ 10000 ] |
Assignee | Yuchen Pei [ JIRAUSER52627 ] | Sergei Petrunia [ psergey ] |
Status | Stalled [ 10000 ] | In Review [ 10002 ] |
Attachment | mdev22534-full-scan-on-null-key.sql [ 70511 ] |
Link |
This issue relates to |
Link | This issue relates to MDEV-31269 [ MDEV-31269 ] |
Link | This issue blocks MDEV-31510 [ MDEV-31510 ] |
Fix Version/s | 11.3 [ 28565 ] | |
Fix Version/s | 11.2 [ 28603 ] |
Link | This issue is blocked by MDEV-31269 [ MDEV-31269 ] |
Link | This issue blocks TODO-4253 [ TODO-4253 ] |
Fix Version/s | 11.4 [ 29301 ] | |
Fix Version/s | 11.3 [ 28565 ] |
Link | This issue blocks TODO-4253 [ TODO-4253 ] |
Link | This issue relates to MDEV-31647 [ MDEV-31647 ] |
Fix Version/s | 11.5 [ 29506 ] | |
Fix Version/s | 11.4 [ 29301 ] |
Fix Version/s | 11.4 [ 29301 ] | |
Fix Version/s | 11.5 [ 29506 ] |
Fix Version/s | 11.5 [ 29506 ] | |
Fix Version/s | 11.4 [ 29301 ] |
Status | In Review [ 10002 ] | Stalled [ 10000 ] |
Assignee | Sergei Petrunia [ psergey ] | Sergei Golubchik [ serg ] |
Assignee | Sergei Golubchik [ serg ] | Sergei Petrunia [ psergey ] |
Status | Stalled [ 10000 ] | In Review [ 10002 ] |
Link | This issue is blocked by MDEV-30073 [ MDEV-30073 ] |
Fix Version/s | 11.6 [ 29515 ] | |
Fix Version/s | 11.5 [ 29506 ] |
Fix Version/s | 11.7 [ 29815 ] | |
Fix Version/s | 11.6 [ 29515 ] |
Fix Version/s | 11.8 [ 29921 ] | |
Fix Version/s | 11.7 [ 29815 ] |
Fix Version/s | 11.9 [ 29945 ] | |
Fix Version/s | 11.8 [ 29921 ] |
Priority | Critical [ 2 ] | Major [ 3 ] |
Labels | optimizer optimizer-easy subquery | optimizer optimizer-easy patch-pending subquery |
Fix Version/s | 12.1 [ 29992 ] | |
Fix Version/s | 12.0 [ 29945 ] |