MySQL 8.3.0
Source Code Documentation
s_mysql_bulk_data_load Struct Reference

Column metadata information. More...

#include <bulk_data_service.h>

Public Attributes

void *(* begin )(THD *thd, const TABLE *table, size_t data_size, size_t memory, size_t num_threads)
 Begin Loading bulk data to SE. More...
 
bool(* load )(THD *thd, void *ctx, const TABLE *table, const Rows_mysql &sql_rows, size_t thread, Bulk_load::Stat_callbacks &wait_cbks)
 Load a set of rows to SE table by one thread. More...
 
bool(* end )(THD *thd, void *ctx, const TABLE *table, bool error)
 End Loading bulk data to SE. More...
 
bool(* is_table_supported )(THD *thd, const TABLE *table)
 Check if a table is supported by the bulk load implementation. More...
 
size_t(* get_se_memory_size )(THD *thd, const TABLE *table)
 Get available buffer pool memory for bulk load operations. More...
 

Detailed Description

Column metadata information.

Member Data Documentation

◆ begin

void *(* s_mysql_bulk_data_load::begin) (THD *thd, const TABLE *table, size_t data_size, size_t memory, size_t num_threads)

Begin Loading bulk data to SE.

Parameters
[in,out]thdsession THD
[in]tableMySQL TABLE
[in]data_sizetotal data size to load
[in]memorySE memory to be used
[in]num_threadsNumber of concurrent threads
Returns
SE bulk load context or nullptr in case of an error.

◆ end

bool(* s_mysql_bulk_data_load::end) (THD *thd, void *ctx, const TABLE *table, bool error)

End Loading bulk data to SE.

Called at the end of bulk load execution, even if begin or load calls failed.

Parameters
[in,out]thdsession THD
[in,out]ctxSE load context
[in]tableMySQL TABLE
[in]errortrue, if exiting after error
Returns
true if successful.

◆ get_se_memory_size

size_t(* s_mysql_bulk_data_load::get_se_memory_size) (THD *thd, const TABLE *table)

Get available buffer pool memory for bulk load operations.

Parameters
[in,out]thdsession THD
[in]tableMySQL TABLE
Returns
buffer pool memory available for bulk load.

◆ is_table_supported

bool(* s_mysql_bulk_data_load::is_table_supported) (THD *thd, const TABLE *table)

Check if a table is supported by the bulk load implementation.

Parameters
[in,out]thdsession THD
[in]tableMySQL TABLE
Returns
true if table is supported.

◆ load

bool(* s_mysql_bulk_data_load::load) (THD *thd, void *ctx, const TABLE *table, const Rows_mysql &sql_rows, size_t thread, Bulk_load::Stat_callbacks &wait_cbks)

Load a set of rows to SE table by one thread.

Parameters
[in,out]thdsession THD
[in,out]ctxSE load context returned by begin()
[in]tableMySQL TABLE
[in]sql_rowsrow data to load
[in]threadcurrent thread number
[in]wait_cbkswait stat callbacks
Returns
true if successful.

The documentation for this struct was generated from the following file: