MySQL 8.0.39
Source Code Documentation
|
Cursor for reading the data. More...
#include <ddl0impl-cursor.h>
Public Types | |
using | Post_row = std::function< dberr_t()> |
Public Member Functions | |
Cursor (ddl::Context &ctx) noexcept | |
Constructor. More... | |
virtual | ~Cursor () noexcept |
Destructor. More... | |
virtual void | open () noexcept=0 |
Open the cursor. More... | |
virtual dberr_t | finish (dberr_t err) noexcept |
Do any post processing. More... | |
virtual dict_index_t * | index () noexcept=0 |
virtual dberr_t | copy_row (size_t thread_id, Row &row) noexcept=0 |
Copy the row data, by default only the pointers are copied. More... | |
dberr_t | setup_pk_sort (size_t n_uniq) noexcept |
Setup the primary key sort data structures. More... | |
virtual dberr_t | scan (Builders &builders) noexcept=0 |
Reads clustered index of the table and create temporary file(s) containing the index entries for the indexes to be built. More... | |
virtual bool | eof () const noexcept=0 |
Static Public Member Functions | |
static Cursor * | create_cursor (ddl::Context &ctx) noexcept |
Create a cluster index scan cursor. More... | |
Public Attributes | |
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 for reading the data.
using ddl::Cursor::Post_row = std::function<dberr_t()> |
|
inlineexplicitnoexcept |
Constructor.
[in,out] | ctx | DDL context. |
|
inlinevirtualnoexcept |
Destructor.
Copy the row data, by default only the pointers are copied.
[in] | thread_id | Scan thread ID. |
[in,out] | row | Row to copy. |
Implemented in ddl::Parallel_cursor.
|
staticnoexcept |
Create a cluster index scan cursor.
[in,out] | ctx | DDL context. |
|
pure virtualnoexcept |
Implemented in ddl::Parallel_cursor.
Do any post processing.
[in] | err | Error code. |
|
pure virtualnoexcept |
Implemented in ddl::Parallel_cursor.
|
pure virtualnoexcept |
Open the cursor.
Implemented in ddl::Parallel_cursor.
Reads clustered index of the table and create temporary file(s) containing the index entries for the indexes to be built.
[in,out] | builders | Merge buffers to use for reading. |
Implemented in ddl::Parallel_cursor.
|
inlinenoexcept |
Setup the primary key sort data structures.
[in] | n_uniq | Number of columns to make they unique key. |
ddl::Context& ddl::Cursor::m_ctx |
DDL context.
dfield_t* ddl::Cursor::m_prev_fields {} |
Previous fields.
Scoped_heap ddl::Cursor::m_row_heap {} |
Scoped heap to use for rows.
Scoped_heap ddl::Cursor::m_tuple_heap {} |
Scoped heap to use for tuple instances.