MySQL 8.0.40
Source Code Documentation
QEP_shared_owner Class Reference

Owner of a QEP_shared; parent of JOIN_TAB and QEP_TAB. More...

#include <sql_opt_exec_shared.h>

Inheritance diagram for QEP_shared_owner:
[legend]

Public Member Functions

 QEP_shared_owner ()
 
void share_qs (QEP_shared_owner *other)
 Instructs to share the QEP_shared with another owner. More...
 
void set_qs (QEP_shared *q)
 
JOINjoin () const
 
void set_join (JOIN *j)
 
plan_idx idx () const
 
void set_idx (plan_idx i)
 
qep_tab_map idx_map () const
 
TABLEtable () const
 
POSITIONposition () const
 
void set_position (POSITION *p)
 
Semijoin_mat_execsj_mat_exec () const
 
void set_sj_mat_exec (Semijoin_mat_exec *s)
 
plan_idx first_sj_inner () const
 
plan_idx last_sj_inner () const
 
plan_idx first_inner () const
 
plan_idx last_inner () const
 
plan_idx first_upper () const
 
void set_first_inner (plan_idx i)
 
void set_last_inner (plan_idx i)
 
void set_first_sj_inner (plan_idx i)
 
void set_last_sj_inner (plan_idx i)
 
void set_first_upper (plan_idx i)
 
Index_lookupref () const
 
uint index () const
 
void set_index (uint i)
 
enum join_type type () const
 
void set_type (enum join_type t)
 
Itemcondition () const
 
void set_condition (Item *to)
 
bool condition_is_pushed_to_sort () const
 
void mark_condition_as_pushed_to_sort ()
 
Key_mapkeys () const
 
ha_rows records () const
 
void set_records (ha_rows r)
 
AccessPathrange_scan () const
 
void set_range_scan (AccessPath *q)
 
table_map prefix_tables () const
 
table_map added_tables () const
 
Item_func_matchft_func () const
 
void set_ft_func (Item_func_match *f)
 
void set_prefix_tables (table_map prefix_tables, table_map prev_tables)
 
void add_prefix_tables (table_map tables)
 
bool is_single_inner_of_semi_join () const
 
bool is_inner_table_of_outer_join () const
 
bool is_first_inner_for_outer_join () const
 
bool is_single_inner_for_outer_join () const
 
bool has_guarded_conds () const
 
bool and_with_condition (Item *tmp_cond)
 Extend join_tab->cond by AND'ing add_cond to it. More...
 
void set_skip_records_in_range (bool skip_records_in_range)
 
bool skip_records_in_range () const
 
void qs_cleanup ()
 

Protected Attributes

QEP_sharedm_qs
 

Detailed Description

Owner of a QEP_shared; parent of JOIN_TAB and QEP_TAB.

Constructor & Destructor Documentation

◆ QEP_shared_owner()

QEP_shared_owner::QEP_shared_owner ( )
inline

Member Function Documentation

◆ add_prefix_tables()

void QEP_shared_owner::add_prefix_tables ( table_map  tables)
inline

◆ added_tables()

table_map QEP_shared_owner::added_tables ( ) const
inline

◆ condition()

Item * QEP_shared_owner::condition ( ) const
inline

◆ condition_is_pushed_to_sort()

bool QEP_shared_owner::condition_is_pushed_to_sort ( ) const
inline

◆ first_inner()

plan_idx QEP_shared_owner::first_inner ( ) const
inline

◆ first_sj_inner()

plan_idx QEP_shared_owner::first_sj_inner ( ) const
inline

◆ first_upper()

plan_idx QEP_shared_owner::first_upper ( ) const
inline

◆ ft_func()

Item_func_match * QEP_shared_owner::ft_func ( ) const
inline

◆ has_guarded_conds()

bool QEP_shared_owner::has_guarded_conds ( ) const
inline

◆ idx()

plan_idx QEP_shared_owner::idx ( ) const
inline

◆ idx_map()

qep_tab_map QEP_shared_owner::idx_map ( ) const
inline

◆ index()

uint QEP_shared_owner::index ( ) const
inline

◆ is_first_inner_for_outer_join()

bool QEP_shared_owner::is_first_inner_for_outer_join ( ) const
inline

◆ is_inner_table_of_outer_join()

bool QEP_shared_owner::is_inner_table_of_outer_join ( ) const
inline

◆ is_single_inner_for_outer_join()

bool QEP_shared_owner::is_single_inner_for_outer_join ( ) const
inline

◆ is_single_inner_of_semi_join()

bool QEP_shared_owner::is_single_inner_of_semi_join ( ) const
inline

◆ join()

JOIN * QEP_shared_owner::join ( ) const
inline

◆ keys()

Key_map & QEP_shared_owner::keys ( ) const
inline

◆ last_inner()

plan_idx QEP_shared_owner::last_inner ( ) const
inline

◆ last_sj_inner()

plan_idx QEP_shared_owner::last_sj_inner ( ) const
inline

◆ mark_condition_as_pushed_to_sort()

void QEP_shared_owner::mark_condition_as_pushed_to_sort ( )
inline

◆ position()

POSITION * QEP_shared_owner::position ( ) const
inline

◆ prefix_tables()

table_map QEP_shared_owner::prefix_tables ( ) const
inline

◆ range_scan()

AccessPath * QEP_shared_owner::range_scan ( ) const
inline

◆ records()

ha_rows QEP_shared_owner::records ( ) const
inline

◆ ref()

Index_lookup & QEP_shared_owner::ref ( void  ) const
inline

◆ set_condition()

void QEP_shared_owner::set_condition ( Item to)
inline

◆ set_first_inner()

void QEP_shared_owner::set_first_inner ( plan_idx  i)
inline

◆ set_first_sj_inner()

void QEP_shared_owner::set_first_sj_inner ( plan_idx  i)
inline

◆ set_first_upper()

void QEP_shared_owner::set_first_upper ( plan_idx  i)
inline

◆ set_ft_func()

void QEP_shared_owner::set_ft_func ( Item_func_match f)
inline

◆ set_idx()

void QEP_shared_owner::set_idx ( plan_idx  i)
inline

◆ set_index()

void QEP_shared_owner::set_index ( uint  i)
inline

◆ set_join()

void QEP_shared_owner::set_join ( JOIN j)
inline

◆ set_last_inner()

void QEP_shared_owner::set_last_inner ( plan_idx  i)
inline

◆ set_last_sj_inner()

void QEP_shared_owner::set_last_sj_inner ( plan_idx  i)
inline

◆ set_position()

void QEP_shared_owner::set_position ( POSITION p)
inline

◆ set_prefix_tables()

void QEP_shared_owner::set_prefix_tables ( table_map  prefix_tables,
table_map  prev_tables 
)
inline

◆ set_qs()

void QEP_shared_owner::set_qs ( QEP_shared q)
inline

◆ set_range_scan()

void QEP_shared_owner::set_range_scan ( AccessPath q)
inline

◆ set_records()

void QEP_shared_owner::set_records ( ha_rows  r)
inline

◆ set_sj_mat_exec()

void QEP_shared_owner::set_sj_mat_exec ( Semijoin_mat_exec s)
inline

◆ set_skip_records_in_range()

void QEP_shared_owner::set_skip_records_in_range ( bool  skip_records_in_range)
inline

◆ set_type()

void QEP_shared_owner::set_type ( enum join_type  t)
inline

◆ share_qs()

void QEP_shared_owner::share_qs ( QEP_shared_owner other)
inline

Instructs to share the QEP_shared with another owner.

◆ sj_mat_exec()

Semijoin_mat_exec * QEP_shared_owner::sj_mat_exec ( ) const
inline

◆ skip_records_in_range()

bool QEP_shared_owner::skip_records_in_range ( ) const
inline

◆ table()

TABLE * QEP_shared_owner::table ( ) const
inline

◆ type()

enum join_type QEP_shared_owner::type ( ) const
inline

Member Data Documentation

◆ m_qs

QEP_shared* QEP_shared_owner::m_qs
protected

The documentation for this class was generated from the following files: