1#ifndef SQL_ITERATORS_DELETE_ROWS_ITERATOR_H_ 
    2#define SQL_ITERATORS_DELETE_ROWS_ITERATOR_H_ 
   48    m_source->EndPSIBatchModeIfStarted();
 
An iterator that deletes all rows returned by its child iterator.
Definition: delete_rows_iterator.h:41
 
void StartPSIBatchMode() override
Start performance schema batch mode, if supported (otherwise ignored).
Definition: delete_rows_iterator.h:46
 
table_map m_transactional_tables
The target tables that live in transactional storage engines.
Definition: delete_rows_iterator.h:72
 
table_map m_tables_with_before_triggers
The target tables that have before delete triggers.
Definition: delete_rows_iterator.h:74
 
void UnlockRow() override
Definition: delete_rows_iterator.h:51
 
JOIN * m_join
The join producing the rows to delete.
Definition: delete_rows_iterator.h:57
 
void SetNullRowFlag(bool) override
Mark the current row buffer as containing a NULL row or not, so that if you read from it and the flag...
Definition: delete_rows_iterator.h:50
 
table_map m_hash_join_tables
All the tables that are part of a hash join.
Definition: delete_rows_iterator.h:70
 
bool DoInit() override
Definition: sql_delete.cc:1048
 
int DoRead() override
Definition: sql_delete.cc:1236
 
Mem_root_array< TABLE * > m_delayed_tables
The tables to delete from after the scan of the join result is complete.
Definition: delete_rows_iterator.h:82
 
ha_rows m_deleted_rows
The number of rows that have been deleted.
Definition: delete_rows_iterator.h:84
 
void EndPSIBatchModeIfStarted() override
Ends performance schema batch mode, if started.
Definition: delete_rows_iterator.h:47
 
table_map m_tables_to_delete_from
The tables to delete from.
Definition: delete_rows_iterator.h:59
 
bool DoImmediateDeletesAndBufferRowIds()
Perform all the immediate deletes for the current row returned by the join, and buffer row IDs for th...
Definition: sql_delete.cc:1094
 
table_map m_immediate_tables
The tables to delete from immediately while scanning the join result.
Definition: delete_rows_iterator.h:61
 
bool m_has_delayed_deletes
True if any row ID has been stored in one of the m_tempfiles.
Definition: delete_rows_iterator.h:86
 
bool DoDelayedDeletes()
Perform all the delayed deletes.
Definition: sql_delete.cc:1163
 
unique_ptr_destroy_only< RowIterator > m_source
The iterator producing the rows to delete.
Definition: delete_rows_iterator.h:55
 
DeleteRowsIterator(THD *thd, unique_ptr_destroy_only< RowIterator > source, JOIN *join, table_map tables_to_delete_from, table_map immediate_tables)
Definition: sql_delete.cc:966
 
table_map m_tables_with_after_triggers
The target tables that have after delete triggers.
Definition: delete_rows_iterator.h:76
 
bool DoDelayedDeletesFromTable(TABLE *table)
Perform all the delayed deletes for the given table.
Definition: sql_delete.cc:1177
 
Mem_root_array< unique_ptr_destroy_only< Unique > > m_tempfiles
Temporary files holding row IDs to delete after the scan of the join result is complete.
Definition: delete_rows_iterator.h:79
 
Definition: sql_optimizer.h:133
 
A typesafe replacement for DYNAMIC_ARRAY.
Definition: mem_root_array.h:432
 
A context for reading through a single table using a chosen access method: index read,...
Definition: row_iterator.h:82
 
THD * thd() const
Definition: row_iterator.h:255
 
For each client connection we create a separate thread with THD serving as a thread/connection descri...
Definition: sql_lexer_thd.h:36
 
void SetUpTablesForDelete(THD *thd, JOIN *join)
Sets various flags in the TABLE and handler objects associated with the target tables of a DELETE sta...
Definition: sql_delete.cc:1003
 
This file follows Google coding style, except for the name MEM_ROOT (which is kept for historical rea...
 
std::unique_ptr< T, Destroy_only< T > > unique_ptr_destroy_only
std::unique_ptr, but only destroying.
Definition: my_alloc.h:480
 
This file includes constants used by all storage engines.
 
my_off_t ha_rows
Definition: my_base.h:1217
 
uint64_t table_map
Definition: my_table_map.h:30
 
static PFS_engine_table_share_proxy table
Definition: pfs.cc:61
 
std::string join(const detail::range auto &rng, std::string_view delim)
join elements of a range into a string separated by a delimiter.
Definition: string.h:74
 
repeated Source source
Definition: replication_asynchronous_connection_failover.proto:42