24#ifndef MATERIALIZE_PATH_PARAMETERS_H
25#define MATERIALIZE_PATH_PARAMETERS_H 1
After parsing, a Common Table Expression is accessed through a Table_ref.
Definition: table.h:4484
Definition: sql_optimizer.h:133
This class represents a query expression (one query block or several query blocks combined with UNION...
Definition: sql_lex.h:627
Object containing parameters used when creating and using temporary tables.
Definition: temp_table_param.h:97
my_off_t ha_rows
Definition: my_base.h:1141
Access paths are a query planning structure that correspond 1:1 to iterators, in that an access path ...
Definition: access_path.h:227
Definition: materialize_path_parameters.h:42
bool is_recursive_reference
Definition: materialize_path_parameters.h:49
AccessPath * subquery_path
Definition: materialize_path_parameters.h:43
int select_number
Definition: materialize_path_parameters.h:44
JOIN * join
Definition: materialize_path_parameters.h:45
bool copy_items
Definition: materialize_path_parameters.h:47
uint m_total_operands
The number of materialized blocks, i.e. set operands.
Definition: materialize_path_parameters.h:56
uint m_first_distinct
The block no is the first to be materialized with DISTINCT: for EXCEPT set operation in a materializa...
Definition: materialize_path_parameters.h:52
uint m_operand_idx
The index of this block number.
Definition: materialize_path_parameters.h:54
Temp_table_param * temp_table_param
Definition: materialize_path_parameters.h:48
bool disable_deduplication_by_hash_field
Definition: materialize_path_parameters.h:46
Definition: materialize_path_parameters.h:40
bool rematerialize
True if rematerializing on every Init() call (e.g., because we have a dependency on a value from outs...
Definition: materialize_path_parameters.h:80
DedupType deduplication_reason
Definition: materialize_path_parameters.h:111
Mem_root_array< Operand > m_operands
Definition: materialize_path_parameters.h:58
Common_table_expr * cte
If materializing a CTE, points to it (see m_cte), otherwise nullptr.
Definition: materialize_path_parameters.h:65
DedupType
The context for which deduplication is being used.
Definition: materialize_path_parameters.h:106
@ DEDUP_FOR_DISTINCT
Definition: materialize_path_parameters.h:107
@ NO_DEDUP
Definition: materialize_path_parameters.h:109
@ DEDUP_FOR_GROUP_BY
Definition: materialize_path_parameters.h:108
bool reject_multiple_rows
True if this is the top level iterator for a materialized derived table transformed from a scalar sub...
Definition: materialize_path_parameters.h:99
ha_rows limit_rows
Used for when pushing LIMIT down to MaterializeIterator; this is more efficient than having a LimitOf...
Definition: materialize_path_parameters.h:92
TABLE * table
Handle to table to materialize into.
Definition: materialize_path_parameters.h:62
int ref_slice
Definition: materialize_path_parameters.h:74
Query_expression * unit
The query expression we are materializing.
Definition: materialize_path_parameters.h:68
Mem_root_array< const AccessPath * > * invalidators
Definition: materialize_path_parameters.h:59