mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
BUG#901399: Wrong result (extra row) with semijoin=ON, materialization=OFF, optimizer_prune_level=0
- Correctly handle plan refinement stage for LooseScan plans: run create_ref_for_key() if LooseScan plan includes a ref access, and if we don't have any fixed key components, switch to a full index scan.
This commit is contained in:
@ -296,7 +296,16 @@ typedef struct st_join_table {
|
||||
double partial_join_cardinality;
|
||||
|
||||
table_map dependent,key_dependent;
|
||||
uint use_quick,index;
|
||||
/*
|
||||
1 - use quick select
|
||||
2 - use "Range checked for each record"
|
||||
*/
|
||||
uint use_quick;
|
||||
/*
|
||||
Index to use. Note: this is valid only for 'index' access, but not range or
|
||||
ref access.
|
||||
*/
|
||||
uint index;
|
||||
uint status; ///< Save status for cache
|
||||
uint used_fields;
|
||||
ulong used_fieldlength;
|
||||
|
Reference in New Issue
Block a user