MySQL 9.1.0
Source Code Documentation
|
Cursor used for parallel reads. More...
Public Member Functions | |
Parallel_cursor (ddl::Context &ctx) noexcept | |
Constructor. More... | |
~Parallel_cursor () noexcept override=default | |
Destructor. More... | |
void | open () noexcept override |
Open the cursor. More... | |
dict_index_t * | index () noexcept override |
dberr_t | scan (Builders &builders) noexcept override |
Reads clustered index of the table and create temporary files containing the index entries for the indexes to be built. More... | |
virtual dberr_t | copy_row (size_t thread_id, Row &row) noexcept override |
Copy the row data, by default only the pointers are copied. More... | |
virtual bool | eof () const noexcept override |
Public Member Functions inherited from ddl::Cursor | |
Cursor (ddl::Context &ctx) noexcept | |
Constructor. More... | |
virtual | ~Cursor () noexcept |
Destructor. More... | |
virtual dberr_t | finish (dberr_t err) noexcept |
Do any post processing. More... | |
dberr_t | setup_pk_sort (size_t n_uniq) noexcept |
Setup the primary key sort data structures. More... | |
Private Types | |
using | Heaps = std::vector< mem_heap_t *, ut::allocator< mem_heap_t * > > |
Private Attributes | |
bool | m_eof {} |
If true then no more rows to scan. More... | |
Heaps | m_heaps {} |
Heap per thread. More... | |
dict_index_t * | m_index {} |
Index to iterate over. More... | |
bool | m_single_threaded_mode {} |
true if scan should be in single threaded mode. More... | |
Additional Inherited Members | |
Public Types inherited from ddl::Cursor | |
using | Post_row = std::function< dberr_t()> |
Static Public Member Functions inherited from ddl::Cursor | |
static Cursor * | create_cursor (ddl::Context &ctx) noexcept |
Create a cluster index scan cursor. More... | |
Public Attributes inherited from ddl::Cursor | |
ddl::Context & | m_ctx |
DDL context. More... | |
Scoped_heap | m_row_heap {} |
Scoped heap to use for rows. More... | |
Scoped_heap | m_tuple_heap {} |
Scoped heap to use for tuple instances. More... | |
dfield_t * | m_prev_fields {} |
Previous fields. More... | |
Cursor used for parallel reads.
|
private |
|
inlineexplicitnoexcept |
Constructor.
[in,out] | ctx | DDL context. |
|
overridedefaultnoexcept |
Destructor.
Copy the row data, by default only the pointers are copied.
[in] | thread_id | Scan thread ID. |
[in,out] | row | Row to copy. |
Implements ddl::Cursor.
|
inlineoverridevirtualnoexcept |
Implements ddl::Cursor.
|
inlineoverridevirtualnoexcept |
Implements ddl::Cursor.
|
inlineoverridevirtualnoexcept |
Open the cursor.
Implements ddl::Cursor.
Reads clustered index of the table and create temporary files containing the index entries for the indexes to be built.
[in,out] | builders | Merge buffers to use for reading. |
Implements ddl::Cursor.
|
private |
If true then no more rows to scan.
|
private |
Heap per thread.
|
private |
Index to iterate over.
|
private |
true if scan should be in single threaded mode.