|
| | ha_innopart (handlerton *hton, TABLE_SHARE *table_arg) |
| | Construct ha_innopart handler. More...
|
| |
| | ~ha_innopart () override=default |
| |
| handler * | clone (const char *name, MEM_ROOT *mem_root) override |
| | Clone this handler, used when needing more than one cursor to the same table. More...
|
| |
| enum_alter_inplace_result | check_if_supported_inplace_alter (TABLE *altered_table, Alter_inplace_info *ha_alter_info) override |
| | Check if InnoDB supports a particular alter table in-place. More...
|
| |
| bool | prepare_inplace_alter_table (TABLE *altered_table, Alter_inplace_info *ha_alter_info, const dd::Table *old_table_def, dd::Table *new_table_def) override |
| | Prepare in-place ALTER for table. More...
|
| |
| bool | inplace_alter_table (TABLE *altered_table, Alter_inplace_info *ha_alter_info, const dd::Table *old_table_def, dd::Table *new_table_def) override |
| | Alter the table structure in-place. More...
|
| |
| bool | commit_inplace_alter_table (TABLE *altered_table, Alter_inplace_info *ha_alter_info, bool commit, const dd::Table *old_table_def, dd::Table *new_table_def) override |
| | Commit or rollback. More...
|
| |
| bool | prepare_inplace_alter_partition (TABLE *altered_table, Alter_inplace_info *ha_alter_info, const dd::Table *old_dd_tab, dd::Table *new_dd_tab) |
| | Allows InnoDB to update internal structures with concurrent writes blocked (given that check_if_supported_inplace_alter() did not return HA_ALTER_INPLACE_NO_LOCK). More...
|
| |
| bool | inplace_alter_partition (Alter_inplace_info *ha_alter_info) |
| | Alter the table structure in-place with operations specified using HA_ALTER_FLAGS and Alter_inplace_information. More...
|
| |
| bool | commit_inplace_alter_partition (TABLE *altered_table, Alter_inplace_info *ha_alter_info, bool commit, const dd::Table *old_dd_tab, dd::Table *new_dd_tab) |
| | Prepare to commit or roll back ALTER TABLE...ALGORITHM=INPLACE. More...
|
| |
| int | optimize (THD *thd, HA_CHECK_OPT *check_opt) override |
| | Optimize table. More...
|
| |
| int | set_dd_discard_attribute (dd::Table *table_def, bool discard) |
| | Set DD discard attribute for tablespace. More...
|
| |
| int | discard_or_import_tablespace (bool discard, dd::Table *table_def) override |
| | Discards or imports an InnoDB tablespace. More...
|
| |
| int | extra (enum ha_extra_function operation) override |
| | Extra hints from MySQL. More...
|
| |
| void | print_error (int error, myf errflag) override |
| | Print error information. More...
|
| |
| bool | is_ignorable_error (int error) override |
| | Can error be ignored. More...
|
| |
| int | start_stmt (THD *thd, thr_lock_type lock_type) override |
| | Start statement. More...
|
| |
| ha_rows | records_in_range (uint inx, key_range *min_key, key_range *max_key) override |
| | Estimates the number of index records in a range. More...
|
| |
| ha_rows | estimate_rows_upper_bound () override |
| | Gives an UPPER BOUND to the number of rows in a table. More...
|
| |
| uint | alter_table_flags (uint flags) |
| |
| void | update_create_info (HA_CREATE_INFO *create_info) override |
| | Update create_info. More...
|
| |
| int | create (const char *name, TABLE *form, HA_CREATE_INFO *create_info, dd::Table *table_def) override |
| | Creates a new table to an InnoDB database. More...
|
| |
| int | delete_table (const char *name, const dd::Table *dd_table) override |
| | Drop a table. More...
|
| |
| int | rename_table (const char *from, const char *to, const dd::Table *from_table, dd::Table *to_table) override |
| | Rename a table. More...
|
| |
| int | check (THD *thd, HA_CHECK_OPT *check_opt) override |
| | Checks a partitioned table. More...
|
| |
| int | repair (THD *thd, HA_CHECK_OPT *repair_opt) override |
| | Repair a partitioned table. More...
|
| |
| void | get_auto_increment (ulonglong offset, ulonglong increment, ulonglong nb_desired_values, ulonglong *first_value, ulonglong *nb_reserved_values) override |
| | Get the current auto_increment value. More...
|
| |
| enum row_type | get_partition_row_type (const dd::Table *partition_table, uint part_id) override |
| | Get partition row type from SE. More...
|
| |
| int | cmp_ref (const uchar *ref1, const uchar *ref2) const override |
| | Compares two 'refs'. More...
|
| |
| int | read_range_first (const key_range *start_key, const key_range *end_key, bool eq_range_arg, bool sorted) override |
| | Read first row between two ranges. More...
|
| |
| void | position (const uchar *record) override |
| | Store a reference to the current row to 'ref' field of the handle. More...
|
| |
| bool | check_if_incompatible_data (HA_CREATE_INFO *info, uint table_changes) override |
| | Part of old, deprecated in-place ALTER API. More...
|
| |
| int | delete_all_rows () override |
| | Delete all rows from the table. More...
|
| |
| int | disable_indexes (uint mode) override |
| | Disable indexes. More...
|
| |
| int | enable_indexes (uint mode) override |
| | Enable indexes. More...
|
| |
| int | ft_init () override |
| | Initialize FT index scan. More...
|
| |
| FT_INFO * | ft_init_ext (uint flags, uint inx, String *key) override |
| | Initialize FT index scan. More...
|
| |
| FT_INFO * | ft_init_ext_with_hints (uint inx, String *key, Ft_hints *hints) override |
| | Initialize FT index scan. More...
|
| |
| int | ft_read (uchar *buf) override |
| | Fetch next result from the FT result set. More...
|
| |
| bool | get_foreign_dup_key (char *child_table_name, uint child_table_name_len, char *child_key_name, uint child_key_name_len) override |
| | Retrieves the names of the table and the key for which there was a duplicate entry in the case of HA_ERR_FOREIGN_DUPLICATE_KEY. More...
|
| |
| int | read_range_next () override |
| | Read next row between two endpoints. More...
|
| |
| uint32_t | calculate_key_hash_value (Field **field_array) override |
| |
| Table_flags | table_flags () const override |
| | Get the table flags to use for the statement. More...
|
| |
| void | release_auto_increment () override |
| | Do cleanup for auto increment calculation. More...
|
| |
| int | parallel_scan_init (void *&scan_ctx, size_t *num_threads, bool use_reserved_threads) override |
| | Get number of threads that would be spawned for parallel read. More...
|
| |
| int | parallel_scan (void *scan_ctx, void **thread_ctxs, Reader::Init_fn init_fn, Reader::Load_fn load_fn, Reader::End_fn end_fn) override |
| | Start parallel read of data. More...
|
| |
| void | parallel_scan_end (void *parallel_scan_ctx) override |
| | Run the parallel read of data. More...
|
| |
|
| void | get_dynamic_partition_info (ha_statistics *stat_info, ha_checksum *check_sum, uint part_id) override |
| | Implementing Partition_handler interface. More...
|
| |
| uint | alter_flags (uint flags) const override |
| | Alter flags. More...
|
| |
| Partition_handler * | get_partition_handler () override |
| |
| void | set_part_info (partition_info *part_info, bool early) override |
| | Set the partition info object to be used by the handler. More...
|
| |
| void | initialize_partitioning (partition_info *part_info, bool early) |
| |
| handler * | get_handler () override |
| | Return the table handler. More...
|
| |
| | ha_innobase (handlerton *hton, TABLE_SHARE *table_arg) |
| | Construct ha_innobase handler. More...
|
| |
| | ~ha_innobase () override=default |
| |
| row_type | get_real_row_type (const HA_CREATE_INFO *create_info) const override |
| | Get real row type for the table created based on one specified by user, CREATE TABLE options and SE capabilities. More...
|
| |
| const char * | table_type () const override |
| | Returns the table type (storage engine name). More...
|
| |
| enum ha_key_alg | get_default_index_algorithm () const override |
| | Get default key algorithm for SE. More...
|
| |
| bool | is_index_algorithm_supported (enum ha_key_alg key_alg) const override |
| | Check if SE supports specific key algorithm. More...
|
| |
| ulong | index_flags (uint idx, uint part, bool all_parts) const override |
| | Returns the operations supported for indexes. More...
|
| |
| uint | max_supported_keys () const override |
| | Returns the maximum number of keys. More...
|
| |
| uint | max_supported_key_length () const override |
| | Returns the maximum key length. More...
|
| |
| uint | max_supported_key_part_length (HA_CREATE_INFO *create_info) const override |
| |
| double | read_time (uint index, uint ranges, ha_rows rows) override |
| | Calculate the time it takes to read a set of ranges through an index This enables us to optimise reads for clustered indexes. More...
|
| |
| longlong | get_memory_buffer_size () const override |
| | Return the size of the InnoDB memory buffer. More...
|
| |
| int | index_read (uchar *buf, const uchar *key, uint key_len, ha_rkey_function find_flag) override |
| | Positions an index cursor to the index specified in the handle. More...
|
| |
| int | index_read_last (uchar *buf, const uchar *key, uint key_len) override |
| | The following functions works like index_read, but it find the last row with the current key value or prefix. More...
|
| |
| void | ft_end () |
| |
| int | info (uint) override |
| | Returns statistics information of the table to the MySQL interpreter, in various fields of the handle object. More...
|
| |
| int | analyze (THD *thd, HA_CHECK_OPT *check_opt) override |
| | Updates index cardinalities of the table, based on random dives into each index tree. More...
|
| |
| void | position (uchar *record) |
| |
| bool | get_se_private_data (dd::Table *dd_table, bool reset) override |
| | Get storage-engine private data for a data dictionary table. More...
|
| |
| int | get_extra_columns_and_keys (const HA_CREATE_INFO *, const List< Create_field > *, const KEY *, uint, dd::Table *dd_table) override |
| | Add hidden columns and indexes to an InnoDB table definition. More...
|
| |
| bool | upgrade_table (THD *thd, const char *db_name, const char *table_name, dd::Table *dd_table) override |
| | Set Engine specific data to dd::Table object for upgrade. More...
|
| |
| uint | lock_count (void) const override |
| | Returns number of THR_LOCK locks used for one instance of InnoDB table. More...
|
| |
| void | init_table_handle_for_HANDLER () override |
| | Call this when you have opened a new table handle in HANDLER, before you call index_read_map() etc. More...
|
| |
| bool | get_error_message (int error, String *buf) override |
| | See comment in handler.cc. More...
|
| |
| bool | primary_key_is_clustered () const override |
| | Determines if the primary key is clustered index. More...
|
| |
Public Member Functions inherited from handler |
| void | unbind_psi () |
| |
| void | rebind_psi () |
| |
| void | start_psi_batch_mode () |
| | Put the handler in 'batch' mode when collecting table io instrumented events. More...
|
| |
| void | end_psi_batch_mode () |
| | End a batch started with start_psi_batch_mode. More...
|
| |
| bool | end_psi_batch_mode_if_started () |
| | If a PSI batch was started, turn if off. More...
|
| |
| | handler (handlerton *ht_arg, TABLE_SHARE *share_arg) |
| |
| virtual | ~handler (void) |
| |
| virtual std::string | explain_extra () const |
| | Return extra handler specific text for EXPLAIN. More...
|
| |
| void | init () |
| | This is called after create to allow us to set up cached variables. More...
|
| |
| void | ha_set_record_buffer (Record_buffer *buffer) |
| | Set a record buffer that the storage engine can use for multi-row reads. More...
|
| |
| Record_buffer * | ha_get_record_buffer () const |
| | Get the record buffer that was set with ha_set_record_buffer(). More...
|
| |
| bool | ha_is_record_buffer_wanted (ha_rows *const max_rows) const |
| | Does this handler want to get a Record_buffer for multi-row reads via the ha_set_record_buffer() function? And if so, what is the maximum number of records to allocate space for in the buffer? More...
|
| |
| int | ha_open (TABLE *table, const char *name, int mode, int test_if_locked, const dd::Table *table_def) |
| |
| int | ha_close (void) |
| | Close handler. More...
|
| |
| int | ha_index_init (uint idx, bool sorted) |
| | Initialize use of index. More...
|
| |
| int | ha_index_end () |
| | End use of index. More...
|
| |
| int | ha_rnd_init (bool scan) |
| | Initialize table for random read or scan. More...
|
| |
| int | ha_rnd_end () |
| | End use of random access. More...
|
| |
| int | ha_rnd_next (uchar *buf) |
| | Read next row via random scan. More...
|
| |
| int | ha_rnd_pos (uchar *buf, uchar *pos) |
| | Read row via random scan from position. More...
|
| |
| int | ha_index_read_map (uchar *buf, const uchar *key, key_part_map keypart_map, enum ha_rkey_function find_flag) |
| | Read [part of] row via [part of] index. More...
|
| |
| int | ha_index_read_last_map (uchar *buf, const uchar *key, key_part_map keypart_map) |
| |
| int | ha_index_read_idx_map (uchar *buf, uint index, const uchar *key, key_part_map keypart_map, enum ha_rkey_function find_flag) |
| | Initializes an index and read it. More...
|
| |
| int | ha_index_next (uchar *buf) |
| | Reads the next row via index. More...
|
| |
| int | ha_index_prev (uchar *buf) |
| | Reads the previous row via index. More...
|
| |
| int | ha_index_first (uchar *buf) |
| | Reads the first row via index. More...
|
| |
| int | ha_index_last (uchar *buf) |
| | Reads the last row via index. More...
|
| |
| int | ha_index_next_same (uchar *buf, const uchar *key, uint keylen) |
| | Reads the next same row via index. More...
|
| |
| int | ha_reset () |
| | Check handler usage and reset state of file to after 'open'. More...
|
| |
| int | ha_index_or_rnd_end () |
| |
| Table_flags | ha_table_flags () const |
| | The cached_table_flags is set at ha_open and ha_external_lock. More...
|
| |
| int | ha_external_lock (THD *thd, int lock_type) |
| | These functions represent the public interface to users of the handler class, hence they are not virtual. More...
|
| |
| int | ha_write_row (uchar *buf) |
| |
| int | ha_update_row (const uchar *old_data, uchar *new_data) |
| | Update the current row. More...
|
| |
| int | ha_delete_row (const uchar *buf) |
| |
| void | ha_release_auto_increment () |
| |
| int | ha_check_for_upgrade (HA_CHECK_OPT *check_opt) |
| |
| int | ha_check (THD *thd, HA_CHECK_OPT *check_opt) |
| | to be actually called to get 'check()' functionality More...
|
| |
| int | ha_repair (THD *thd, HA_CHECK_OPT *check_opt) |
| | Repair table: public interface. More...
|
| |
| void | ha_start_bulk_insert (ha_rows rows) |
| | Start bulk insert. More...
|
| |
| int | ha_end_bulk_insert () |
| | End bulk insert. More...
|
| |
| int | ha_bulk_update_row (const uchar *old_data, uchar *new_data, uint *dup_key_found) |
| | Bulk update row: public interface. More...
|
| |
| int | ha_delete_all_rows () |
| | Delete all rows: public interface. More...
|
| |
| int | ha_truncate (dd::Table *table_def) |
| | Truncate table: public interface. More...
|
| |
| int | ha_optimize (THD *thd, HA_CHECK_OPT *check_opt) |
| | Optimize table: public interface. More...
|
| |
| int | ha_analyze (THD *thd, HA_CHECK_OPT *check_opt) |
| | Analyze table: public interface. More...
|
| |
| bool | ha_check_and_repair (THD *thd) |
| | Check and repair table: public interface. More...
|
| |
| int | ha_disable_indexes (uint mode) |
| | Disable indexes: public interface. More...
|
| |
| int | ha_enable_indexes (uint mode) |
| | Enable indexes: public interface. More...
|
| |
| int | ha_discard_or_import_tablespace (bool discard, dd::Table *table_def) |
| | Discard or import tablespace: public interface. More...
|
| |
| int | ha_rename_table (const char *from, const char *to, const dd::Table *from_table_def, dd::Table *to_table_def) |
| | Rename table: public interface. More...
|
| |
| int | ha_delete_table (const char *name, const dd::Table *table_def) |
| | Delete table: public interface. More...
|
| |
| void | ha_drop_table (const char *name) |
| | Drop table in the engine: public interface. More...
|
| |
| int | ha_create (const char *name, TABLE *form, HA_CREATE_INFO *info, dd::Table *table_def) |
| | Create a table in the engine: public interface. More...
|
| |
| int | ha_load_table (const TABLE &table) |
| | Loads a table into its defined secondary storage engine: public interface. More...
|
| |
| int | ha_unload_table (const char *db_name, const char *table_name, bool error_if_not_loaded) |
| | Unloads a table from its defined secondary storage engine: public interface. More...
|
| |
| bool | ha_get_se_private_data (dd::Table *dd_table, bool reset) |
| | Submit a dd::Table object representing a core DD table having hardcoded data to be filled in by the DDSE. More...
|
| |
| void | adjust_next_insert_id_after_explicit_value (ulonglong nr) |
| |
| int | update_auto_increment () |
| |
| uint | get_dup_key (int error) |
| |
| virtual void | change_table_ptr (TABLE *table_arg, TABLE_SHARE *share) |
| | Change the internal TABLE_SHARE pointer. More...
|
| |
| const TABLE_SHARE * | get_table_share () const |
| |
| virtual double | index_only_read_time (uint keynr, double records) |
| | Calculate cost of 'index only' scan for given index and number of records. More...
|
| |
| virtual Cost_estimate | table_scan_cost () |
| | Cost estimate for doing a complete table scan. More...
|
| |
| virtual Cost_estimate | index_scan_cost (uint index, double ranges, double rows) |
| | Cost estimate for reading a number of ranges from an index. More...
|
| |
| virtual Cost_estimate | read_cost (uint index, double ranges, double rows) |
| | Cost estimate for reading a set of ranges from the table using an index to access it. More...
|
| |
| virtual double | page_read_cost (uint index, double reads) |
| | Cost estimate for doing a number of non-sequentially accesses against the storage engine. More...
|
| |
| virtual double | worst_seek_times (double reads) |
| | Provide an upper cost-limit of doing a specified number of seek-and-read key lookups. More...
|
| |
| double | table_in_memory_estimate () const |
| | Return an estimate of how much of the table that is currently stored in main memory. More...
|
| |
| double | index_in_memory_estimate (uint keyno) const |
| | Return an estimate of how much of the index that is currently stored in main memory. More...
|
| |
| int | ha_sample_init (void *&scan_ctx, double sampling_percentage, int sampling_seed, enum_sampling_method sampling_method, const bool tablesample) |
| | Initialize sampling. More...
|
| |
| int | ha_sample_next (void *scan_ctx, uchar *buf) |
| | Get the next record for sampling. More...
|
| |
| int | ha_sample_end (void *scan_ctx) |
| | End sampling. More...
|
| |
| int | ha_multi_range_read_next (char **range_info) |
| |
| int | ha_read_range_first (const key_range *start_key, const key_range *end_key, bool eq_range, bool sorted) |
| |
| int | ha_read_range_next () |
| |
| bool | has_transactions () |
| |
| virtual uint | extra_rec_buf_length () const |
| |
| virtual bool | is_fatal_error (int error) |
| | Determine whether an error is fatal or not. More...
|
| |
| int | ha_records (ha_rows *num_rows) |
| | Wrapper function to call records() in storage engine. More...
|
| |
| int | ha_records (ha_rows *num_rows, uint index) |
| | Wrapper function to call records_from_index() in storage engine. More...
|
| |
| virtual void | column_bitmaps_signal () |
| | Signal that the table->read_set and table->write_set table maps changed The handler is allowed to set additional bits in the above map in this call. More...
|
| |
| uint | get_index (void) const |
| |
| virtual bool | start_bulk_update () |
| |
| virtual bool | start_bulk_delete () |
| |
| virtual int | exec_bulk_update (uint *dup_key_found) |
| | After this call all outstanding updates must be performed. More...
|
| |
| virtual void | end_bulk_update () |
| | Perform any needed clean-up, no outstanding updates are there at the moment. More...
|
| |
| virtual int | end_bulk_delete () |
| | Execute all outstanding deletes and close down the bulk delete. More...
|
| |
| void | set_end_range (const key_range *range, enum_range_scan_direction direction) |
| | Set the end position for a range scan. More...
|
| |
| int | compare_key (key_range *range) |
| | Compare if found key (in row) is over max-value. More...
|
| |
| int | compare_key_icp (const key_range *range) const |
| |
| int | compare_key_in_buffer (const uchar *buf) const |
| | Check if the key in the given buffer (which is not necessarily TABLE::record[0]) is within range. More...
|
| |
| int | ha_ft_read (uchar *buf) |
| |
| int | ha_read_first_row (uchar *buf, uint primary_key) |
| | Read first row (only) from a table. More...
|
| |
| int | ha_extra (enum ha_extra_function operation) |
| | Request storage engine to do an extra operation: enable,disable or run some functionality. More...
|
| |
| virtual int | extra_opt (enum ha_extra_function operation, ulong cache_size) |
| |
| virtual const handlerton * | hton_supporting_engine_pushdown () |
| | Get the handlerton of the storage engine if the SE is capable of pushing down some of the AccessPath functionality. More...
|
| |
| virtual bool | start_read_removal (void) |
| | Start read (before write) removal on the current table. More...
|
| |
| virtual ha_rows | end_read_removal (void) |
| | End read (before write) removal and return the number of rows really written. More...
|
| |
| void | set_next_insert_id (ulonglong id) |
| |
| void | restore_auto_increment (ulonglong prev_insert_id) |
| |
| virtual int | assign_to_keycache (THD *, HA_CHECK_OPT *) |
| |
| virtual int | preload_keys (THD *, HA_CHECK_OPT *) |
| |
| virtual int | indexes_are_disabled (void) |
| | Check if indexes are disabled. More...
|
| |
| virtual void | append_create_info (String *packet) |
| |
| uint | max_record_length () const |
| |
| uint | max_keys () const |
| |
| uint | max_key_parts () const |
| |
| uint | max_key_length () const |
| |
| uint | max_key_part_length (HA_CREATE_INFO *create_info) const |
| |
| virtual uint | max_supported_record_length () const |
| |
| virtual uint | max_supported_key_parts () const |
| |
| virtual uint | min_record_length (uint options) const |
| |
| virtual bool | low_byte_first () const |
| |
| virtual ha_checksum | checksum () const |
| |
| virtual bool | is_crashed () const |
| | Check if the table is crashed. More...
|
| |
| virtual bool | auto_repair () const |
| | Check if the table can be automatically repaired. More...
|
| |
| virtual const Item * | cond_push (const Item *cond) |
| | Push condition down to the table handler. More...
|
| |
| virtual void | cancel_pushed_idx_cond () |
| | Reset information about pushed index conditions. More...
|
| |
| virtual uint | number_of_pushed_joins () const |
| | Reports number of tables included in pushed join which this handler instance is part of. More...
|
| |
| virtual const TABLE * | member_of_pushed_join () const |
| | If this handler instance is part of a pushed join sequence returned TABLE instance being root of the pushed query? More...
|
| |
| virtual const TABLE * | parent_of_pushed_join () const |
| | If this handler instance is a child in a pushed join sequence returned TABLE instance being my parent? More...
|
| |
| virtual table_map | tables_in_pushed_join () const |
| |
| int | ha_index_read_pushed (uchar *buf, const uchar *key, key_part_map keypart_map) |
| |
| int | ha_index_next_pushed (uchar *buf) |
| |
| bool | ha_prepare_inplace_alter_table (TABLE *altered_table, Alter_inplace_info *ha_alter_info, const dd::Table *old_table_def, dd::Table *new_table_def) |
| | Public functions wrapping the actual handler call. More...
|
| |
| bool | ha_inplace_alter_table (TABLE *altered_table, Alter_inplace_info *ha_alter_info, const dd::Table *old_table_def, dd::Table *new_table_def) |
| | Public function wrapping the actual handler call. More...
|
| |
| bool | ha_commit_inplace_alter_table (TABLE *altered_table, Alter_inplace_info *ha_alter_info, bool commit, const dd::Table *old_table_def, dd::Table *new_table_def) |
| | Public function wrapping the actual handler call. More...
|
| |
| void | ha_notify_table_changed (Alter_inplace_info *ha_alter_info) |
| | Public function wrapping the actual handler call. More...
|
| |
| virtual void | use_hidden_primary_key () |
| | use_hidden_primary_key() is called in case of an update/delete when (table_flags() and HA_PRIMARY_KEY_REQUIRED_FOR_DELETE) is defined but we don't have a primary key More...
|
| |
| virtual int | bulk_update_row (const uchar *old_data, uchar *new_data, uint *dup_key_found) |
| | This method is similar to update_row, however the handler doesn't need to execute the updates at this point in time. More...
|
| |
| virtual int | truncate (dd::Table *table_def) |
| | Quickly remove all rows from a table. More...
|
| |
| virtual bool | check_and_repair (THD *thd) |
| | Check and repair the table if necessary. More...
|
| |
| virtual void | drop_table (const char *name) |
| |
| virtual bool | set_ha_share_ref (Handler_share **arg_ha_share) |
| |
| void | set_ha_table (TABLE *table_arg) |
| |
| int | get_lock_type () const |
| |
| bool | ha_upgrade_table (THD *thd, const char *dbname, const char *table_name, dd::Table *dd_table, TABLE *table_arg) |
| | Set se_private_id and se_private_data during upgrade. More...
|
| |
| void | ha_set_primary_handler (handler *primary_handler) |
| | Store a pointer to the handler of the primary table that corresponds to the secondary table in this handler. More...
|
| |
| handler * | ha_get_primary_handler () const |
| | Get a pointer to a handler for the table in the primary storage engine, if this handler is for a table in a secondary storage engine. More...
|
| |
| void | ha_mv_key_capacity (uint *num_keys, size_t *keys_length) const |
| | Return max limits for a single set of multi-valued keys. More...
|
| |
| virtual void | set_external_table_offload_error (const char *) |
| | Propagates the secondary storage engine offload failure reason for a query to the external engine when the offloaded query fails in the secondary storage engine. More...
|
| |
| virtual void | external_table_offload_error () const |
| | Identifies and throws the propagated external engine query offload or exec failure reason given by the external engine handler. More...
|
| |
| | Partition_helper (handler *main_handler) |
| |
| virtual | ~Partition_helper () |
| |
| virtual void | set_part_info_low (partition_info *part_info, bool early) |
| | Set partition info. More...
|
| |
| bool | init_partitioning (MEM_ROOT *mem_root) |
| | Initialize variables used before the table is opened. More...
|
| |
| void | ph_release_auto_increment () |
| | Release unused auto increment values. More...
|
| |
| int | ph_write_row (uchar *buf) |
| | INSERT/UPDATE/DELETE functions. More...
|
| |
| int | ph_update_row (const uchar *old_data, uchar *new_data) |
| | Update an existing row in the partitioned table. More...
|
| |
| int | ph_delete_row (const uchar *buf) |
| | Delete an existing row in the partitioned table. More...
|
| |
| int | ph_rnd_init (bool scan) |
| | MODULE full table scan. More...
|
| |
| int | ph_rnd_end () |
| | End of a table scan. More...
|
| |
| int | ph_rnd_next (uchar *buf) |
| | Read next row during full table scan (scan in random row order). More...
|
| |
| void | ph_position (const uchar *record) |
| | Save position of current row. More...
|
| |
| int | ph_index_init_setup (uint key_nr, bool sorted) |
| | MODULE index scan. More...
|
| |
| int | ph_index_first (uchar *buf) |
| | Start an index scan from leftmost record and return first record. More...
|
| |
| int | ph_index_last (uchar *buf) |
| | Start an index scan from rightmost record and return first record. More...
|
| |
| int | ph_index_next (uchar *buf) |
| | Read next record in a forward index scan. More...
|
| |
| int | ph_index_next_same (uchar *buf, uint keylen) |
| | Read next same record. More...
|
| |
| int | ph_index_prev (uchar *buf) |
| | Read next record when performing index scan backwards. More...
|
| |
| int | ph_index_read_map (uchar *buf, const uchar *key, key_part_map keypart_map, enum ha_rkey_function find_flag) |
| | Read one record in an index scan and start an index scan. More...
|
| |
| int | ph_index_read_last_map (uchar *buf, const uchar *key, key_part_map keypart_map) |
| | Read last using key. More...
|
| |
| int | ph_index_read_idx_map (uchar *buf, uint index, const uchar *key, key_part_map keypart_map, enum ha_rkey_function find_flag) |
| | Read index by key and keymap. More...
|
| |
| int | ph_read_range_first (const key_range *start_key, const key_range *end_key, bool eq_range_arg, bool sorted) |
| | Start a read of one range with start and end key. More...
|
| |
| int | ph_read_range_next () |
| | Read next record in read of a range with start and end key. More...
|
| |
| virtual void | get_dynamic_partition_info_low (ha_statistics *stat_info, ha_checksum *check_sum, uint part_id) |
| | Functions matching Partition_handler API. More...
|
| |
| void | prepare_change_partitions () |
| | Prepare for reorganizing partitions by setting up partition_info::read_partitions according to the partition_info mark-up. More...
|
| |
Public Member Functions inherited from Partition_handler |
| | Partition_handler ()=default |
| |
| virtual | ~Partition_handler ()=default |
| |
| virtual int | get_default_num_partitions (HA_CREATE_INFO *info) |
| | Get default number of partitions. More...
|
| |
| virtual void | set_auto_partitions (partition_info *part_info) |
| | Setup auto partitioning. More...
|
| |
| virtual bool | get_num_parts (const char *name, uint *num_parts) |
| | Get number of partitions for table in SE. More...
|
| |
| int | truncate_partition (dd::Table *table_def) |
| | Truncate partitions. More...
|
| |
| int | exchange_partition (uint part_id, dd::Table *part_table_def, dd::Table *swap_table_def) |
| | Exchange partition. More...
|
| |
|
| int | info_low (uint flag, bool is_analyze) override |
| | Updates and return statistics. More...
|
| |
| bool | can_reuse_mysql_template () const override |
| | Can reuse the template. More...
|
| |
|
| int | rnd_next (uchar *record) override |
| | Protected handler:: functions specific for native InnoDB partitioning. More...
|
| |
| int | rnd_pos (uchar *record, uchar *pos) override |
| | Get a row from a position. More...
|
| |
| int | records (ha_rows *num_rows) override |
| | Total number of rows in all used partitions. More...
|
| |
| int | index_next (uchar *record) override |
| | Reads the next row from a cursor, which must have previously been positioned using index_read. More...
|
| |
| int | index_next_same (uchar *record, const uchar *, uint keylen) override |
| | Reads the next row matching to the key value given as the parameter. More...
|
| |
| int | index_prev (uchar *record) override |
| | Reads the previous row from a cursor, which must have previously been positioned using index_read. More...
|
| |
| int | index_first (uchar *record) override |
| | Positions a cursor on the first record in an index and reads the corresponding row to buf. More...
|
| |
| int | index_last (uchar *record) override |
| | Positions a cursor on the last record in an index and reads the corresponding row to buf. More...
|
| |
| int | index_read_last_map (uchar *record, const uchar *key, key_part_map keypart_map) override |
| | The following functions works like index_read, but it find the last row with the current key value or prefix. More...
|
| |
| int | index_read_map (uchar *buf, const uchar *key, key_part_map keypart_map, enum ha_rkey_function find_flag) override |
| | Positions an index cursor to the index specified in the handle ('active_index'). More...
|
| |
| int | index_read_idx_map (uchar *buf, uint index, const uchar *key, key_part_map keypart_map, enum ha_rkey_function find_flag) override |
| | Positions an index cursor to the index specified in argument. More...
|
| |
| int | delete_table (const char *name, const dd::Table *table_def, enum enum_sql_command sqlcom) |
| | Drop a table. More...
|
| |
| int | srv_concurrency_enter () |
| | Enter InnoDB engine after checking max allowed threads. More...
|
| |
| void | srv_concurrency_exit () |
| | Leave Innodb, if no more tickets are left. More...
|
| |
| void | update_thd (THD *thd) |
| | Updates the user_thd field in a handle and also allocates a new InnoDB transaction handle if needed, and updates the transaction fields in the m_prebuilt struct. More...
|
| |
| int | general_fetch (uchar *buf, uint direction, uint match_mode) |
| | Reads the next or previous row from a cursor, which must have previously been positioned using index_read. More...
|
| |
| void | build_template (bool whole_row) |
| | Builds a 'template' to the m_prebuilt struct. More...
|
| |
| int | end_stmt () |
| | MySQL calls this method at the end of each statement. More...
|
| |
| template<typename Table > |
| bool | prepare_inplace_alter_table_impl (TABLE *altered_table, Alter_inplace_info *ha_alter_info, const Table *old_dd_tab, Table *new_dd_tab) |
| | Implementation of prepare_inplace_alter_table() More...
|
| |
| template<typename Table > |
| bool | inplace_alter_table_impl (TABLE *altered_table, Alter_inplace_info *ha_alter_info) |
| | Implementation of inplace_alter_table() More...
|
| |
| template<typename Table > |
| bool | commit_inplace_alter_table_impl (TABLE *altered_table, Alter_inplace_info *ha_alter_info, bool commit, Table *new_dd_tab) |
| | Implementation of commit_inplace_alter_table() More...
|
| |
| void | mv_key_capacity (uint *num_keys, size_t *keys_length) const override |
| | Return max limits for a single set of multi-valued keys. More...
|
| |
Protected Member Functions inherited from handler |
| virtual int | records_from_index (ha_rows *num_rows, uint index) |
| | Number of rows in table counted using the secondary index chosen by optimizer. More...
|
| |
| virtual int | index_read_pushed (uchar *, const uchar *, key_part_map) |
| |
| virtual int | index_next_pushed (uchar *) |
| |
| virtual void | notify_table_changed (Alter_inplace_info *ha_alter_info) |
| | Notify the storage engine that the table definition has been updated. More...
|
| |
| void | ha_statistic_increment (ulonglong System_status_var::*offset) const |
| |
| THD * | ha_thd () const |
| |
| PSI_table_share * | ha_table_share_psi (const TABLE_SHARE *share) const |
| | Acquire the instrumented table information from a table share. More...
|
| |
| Handler_share * | get_ha_share_ptr () |
| | Get an initialized ha_share. More...
|
| |
| void | set_ha_share_ptr (Handler_share *arg_ha_share) |
| | Set ha_share to be used by all instances of the same table/partition. More...
|
| |
| void | lock_shared_ha_data () |
| | Take a lock for protecting shared handler data. More...
|
| |
| void | unlock_shared_ha_data () |
| | Release lock for protecting ha_share. More...
|
| |
| bool | open_partitioning (Partition_share *part_share) |
| | Set m_part_share, Allocate internal bitmaps etc. More...
|
| |
| void | close_partitioning () |
| | Close partitioning for a table. More...
|
| |
| void | lock_auto_increment () |
| | Lock auto increment value if needed. More...
|
| |
| void | unlock_auto_increment () |
| | unlock auto increment. More...
|
| |
| void | get_auto_increment_first_field (ulonglong increment, ulonglong nb_desired_values, ulonglong *first_value, ulonglong *nb_reserved_values) |
| | Get a range of auto increment values. More...
|
| |
| int | init_record_priority_queue () |
| | Initialize the record priority queue used for sorted index scans. More...
|
| |
| void | destroy_record_priority_queue () |
| | Destroy the record priority queue used for sorted index scans. More...
|
| |
| bool | print_partition_error (int error) |
| | Print partitioning specific error. More...
|
| |
| bool | print_admin_msg (THD *thd, uint len, const char *msg_type, const char *db_name, const char *table_name, const char *op_name, const char *fmt,...) |
| | Print a message row formatted for ANALYZE/CHECK/OPTIMIZE/REPAIR TABLE. More...
|
| |
| int | check_misplaced_rows (uint read_part_id, bool repair) |
| | Check/fix misplaced rows. More...
|
| |
| bool | set_altered_partitions () |
| | Set used partitions bitmap from Alter_info. More...
|
| |
| virtual int | copy_partitions (ulonglong *const deleted) |
| | Copy partitions as part of ALTER TABLE of partitions. More...
|
| |
|
| void | clear_ins_upd_nodes () |
| | Clear used ins_nodes and upd_nodes. More...
|
| |
| void | clear_blob_heaps () |
| | Clear the blob heaps for all partitions. More...
|
| |
| int | reset () override |
| | Reset state of file to after 'open'. More...
|
| |
| int | change_active_index (uint part_id, uint keynr) |
| | Changes the active index of a handle. More...
|
| |
| int | next_partition_index () |
| | Move to next partition and set its index. More...
|
| |
| int | innobase_initialize_autoinc () |
| | Internally called for initializing auto increment value. More...
|
| |
| dict_index_t * | innobase_get_index (uint keynr) override |
| | Get the index for the current partition. More...
|
| |
| dict_index_t * | innopart_get_index (uint part_id, uint keynr) |
| | Get the index for a handle. More...
|
| |
| void | set_partition (uint part_id) |
| | Change active partition. More...
|
| |
| void | update_partition (uint part_id) |
| | Update active partition. More...
|
| |
| int | truncate_impl (const char *name, TABLE *form, dd::Table *table_def) |
| | TRUNCATE an InnoDB partitioned table. More...
|
| |
| int | initialize_auto_increment (bool no_lock) override |
| | Set the autoinc column max value. More...
|
| |
| void | save_auto_increment (ulonglong nr) override |
| | Save currently highest auto increment value. More...
|
| |
| int | init_record_priority_queue_for_parts (uint used_parts) override |
| | Setup the ordered record buffer and the priority queue. More...
|
| |
| void | destroy_record_priority_queue_for_parts () override |
| | Destroy the ordered record buffer and the priority queue. More...
|
| |
| bool | prepare_for_copy_partitions (Alter_inplace_info *ha_alter_info) |
| | Create the Altered_partitoins object. More...
|
| |
| int | write_row_in_new_part (uint new_part) override |
| | write row to new partition. More...
|
| |
| int | write_row_in_part (uint part_id, uchar *record) override |
| | Write a row in specific partition. More...
|
| |
| int | update_row_in_part (uint part_id, const uchar *old_row, uchar *new_row) override |
| | Update a row in partition. More...
|
| |
| int | delete_row_in_part (uint part_id, const uchar *record) override |
| | Deletes a row in partition. More...
|
| |
| int | index_first_in_part (uint part, uchar *record) override |
| | Return first record in index from a partition. More...
|
| |
| int | index_last_in_part (uint part, uchar *record) override |
| | Return last record in index from a partition. More...
|
| |
| int | index_prev_in_part (uint part, uchar *record) override |
| | Return previous record in index from a partition. More...
|
| |
| int | index_next_in_part (uint part, uchar *record) override |
| | Return next record in index from a partition. More...
|
| |
| int | index_next_same_in_part (uint part, uchar *record, const uchar *key, uint length) override |
| | Return next same record in index from a partition. More...
|
| |
| int | index_read_map_in_part (uint part, uchar *record, const uchar *key, key_part_map keypart_map, enum ha_rkey_function find_flag) override |
| | Start index scan and return first record from a partition. More...
|
| |
| int | index_read_last_map_in_part (uint part, uchar *record, const uchar *key, key_part_map keypart_map) override |
| | Return last matching record in index from a partition. More...
|
| |
| int | read_range_first_in_part (uint part, uchar *record, const key_range *start_key, const key_range *end_key, bool sorted) override |
| | Start index scan and return first record from a partition. More...
|
| |
| int | read_range_next_in_part (uint part, uchar *record) override |
| | Return next record in index range scan from a partition. More...
|
| |
| int | index_read_idx_map_in_part (uint part, uchar *record, uint index, const uchar *key, key_part_map keypart_map, enum ha_rkey_function find_flag) override |
| | Start index scan and return first record from a partition. More...
|
| |
| int | sample_init (void *&scan_ctx, double sampling_percentage, int sampling_seed, enum_sampling_method sampling_method, const bool tablesample) override |
| | Initialize sampling. More...
|
| |
| int | sample_next (void *scan_ctx, uchar *buf) override |
| | Get the next record for sampling. More...
|
| |
| int | sample_end (void *scan_ctx) override |
| | End sampling. More...
|
| |
| int | rnd_init_in_part (uint part_id, bool scan) override |
| | Initialize random read/scan of a specific partition. More...
|
| |
| int | rnd_next_in_part (uint part_id, uchar *buf) override |
| | Get next row during scan of a specific partition. More...
|
| |
| int | rnd_end_in_part (uint part_id, bool scan) override |
| | End random read/scan of a specific partition. More...
|
| |
| void | position_in_last_part (uchar *ref_arg, const uchar *record) override |
| | Return position for cursor in last used partition. More...
|
| |
| int | rnd_pos_by_record (uchar *record) override |
| | Read row using position using given record to find. More...
|
| |
| void | copy_cached_row (uchar *buf, const uchar *cached_row) override |
| | Copy a cached MySQL row. More...
|
| |
| int | open (const char *name, int mode, uint test_if_locked, const dd::Table *table_def) override |
| | Open an InnoDB table. More...
|
| |
| int | close () override |
| | Closes a handle to an InnoDB table. More...
|
| |
| double | scan_time () override |
| | Time estimate for full table scan. More...
|
| |
| bool | was_semi_consistent_read () override |
| | Was the last returned row semi consistent read. More...
|
| |
| void | try_semi_consistent_read (bool yes) override |
| | Try semi consistent read. More...
|
| |
| void | unlock_row () override |
| | Removes a lock on a row. More...
|
| |
| int | index_init (uint index, bool sorted) override |
| | Initializes a handle to use an index. More...
|
| |
| int | index_end () override |
| | End index cursor. More...
|
| |
| int | rnd_init (bool scan) override |
| | Initialize a table scan. More...
|
| |
| int | rnd_end () override |
| | Ends a table scan. More...
|
| |
| int | external_lock (THD *thd, int lock_type) override |
| | Lock/prepare to lock table. More...
|
| |
| THR_LOCK_DATA ** | store_lock (THD *thd, THR_LOCK_DATA **to, thr_lock_type lock_type) override |
| | Function to store lock for all partitions in native partitioned table. More...
|
| |
| int | write_row (uchar *record) override |
| | Stores a row in an InnoDB database, to the table specified in this handle. More...
|
| |
| int | update_row (const uchar *old_record, uchar *new_record) override |
| | Updates a row given as a parameter to a new value. More...
|
| |
| int | delete_row (const uchar *record) override |
| | Deletes a row given as the parameter. More...
|
| |
| int | truncate_partition_low (dd::Table *dd_table) override |
| | Delete all rows in the requested partitions. More...
|
| |
| int | exchange_partition_low (uint part_id, dd::Table *part_table, dd::Table *swap_table) override |
| | Exchange partition. More...
|
| |
| void | update_part_elem (partition_element *part_elem, dict_table_t *ib_table, bool display_tablespace) |
| | Fill in data_dir_path and tablespace name from internal data dictionary. More...
|
| |
|
| THD * | get_thd () const override |
| | Access methods to protected areas in handler to avoid adding friend class Partition_helper in class handler. More...
|
| |
| TABLE * | get_table () const override |
| |
| bool | get_eq_range () const override |
| |
| void | set_eq_range (bool eq_range_arg) override |
| |
| void | set_range_key_part (KEY_PART_INFO *key_part) override |
| |