diff options
author | Eugene Kosov <claprix@yandex.ru> | 2019-07-04 21:31:35 +0300 |
---|---|---|
committer | Eugene Kosov <claprix@yandex.ru> | 2019-07-05 13:14:19 +0300 |
commit | c9aa495fb67ab4fd5c9790d4f61b7e988423619f (patch) | |
tree | 9f6aa0423075e0450ce433983c163d06023b638d /storage/tokudb | |
parent | 23c12ed5cb2a86516f4d4502779d2be312fa6e17 (diff) | |
download | mariadb-git-c9aa495fb67ab4fd5c9790d4f61b7e988423619f.tar.gz |
MDEV-19955 make argument of handler::ha_write_row() const
MDEV-19486 and one more similar bug appeared because handler::write_row() interface
welcomes to modify buffer by storage engine. But callers are not ready for that
thus bugs are possible in future.
handler::write_row():
handler::ha_write_row(): make argument const
Diffstat (limited to 'storage/tokudb')
-rw-r--r-- | storage/tokudb/ha_tokudb.cc | 6 | ||||
-rw-r--r-- | storage/tokudb/ha_tokudb.h | 6 |
2 files changed, 6 insertions, 6 deletions
diff --git a/storage/tokudb/ha_tokudb.cc b/storage/tokudb/ha_tokudb.cc index 2be8556a123..c19a75d680d 100644 --- a/storage/tokudb/ha_tokudb.cc +++ b/storage/tokudb/ha_tokudb.cc @@ -3714,7 +3714,7 @@ static bool do_unique_checks_fn(THD *thd) { #endif // defined(TOKU_INCLUDE_RFR) && TOKU_INCLUDE_RFR -int ha_tokudb::do_uniqueness_checks(uchar* record, DB_TXN* txn, THD* thd) { +int ha_tokudb::do_uniqueness_checks(const uchar* record, DB_TXN* txn, THD* thd) { int error = 0; // // first do uniqueness checks @@ -3757,7 +3757,7 @@ cleanup: return error; } -void ha_tokudb::test_row_packing(uchar* record, DBT* pk_key, DBT* pk_val) { +void ha_tokudb::test_row_packing(const uchar* record, DBT* pk_key, DBT* pk_val) { int error; DBT row, key; // @@ -3998,7 +3998,7 @@ out: // 0 on success // error otherwise // -int ha_tokudb::write_row(uchar * record) { +int ha_tokudb::write_row(const uchar * record) { TOKUDB_HANDLER_DBUG_ENTER("%p", record); DBT row, prim_key; diff --git a/storage/tokudb/ha_tokudb.h b/storage/tokudb/ha_tokudb.h index c36c93a4c74..f95143a6b4b 100644 --- a/storage/tokudb/ha_tokudb.h +++ b/storage/tokudb/ha_tokudb.h @@ -703,11 +703,11 @@ private: void trace_create_table_info(TABLE* form); int is_index_unique(bool* is_unique, DB_TXN* txn, DB* db, KEY* key_info, int lock_flags); int is_val_unique(bool* is_unique, const uchar* record, KEY* key_info, uint dict_index, DB_TXN* txn); - int do_uniqueness_checks(uchar* record, DB_TXN* txn, THD* thd); + int do_uniqueness_checks(const uchar* record, DB_TXN* txn, THD* thd); void set_main_dict_put_flags(THD* thd, bool opt_eligible, uint32_t* put_flags); int insert_row_to_main_dictionary(DBT* pk_key, DBT* pk_val, DB_TXN* txn); int insert_rows_to_dictionaries_mult(DBT* pk_key, DBT* pk_val, DB_TXN* txn, THD* thd); - void test_row_packing(uchar* record, DBT* pk_key, DBT* pk_val); + void test_row_packing(const uchar* record, DBT* pk_key, DBT* pk_val); uint32_t fill_row_mutator( uchar* buf, uint32_t* dropped_columns, @@ -785,7 +785,7 @@ public: int rename_table(const char *from, const char *to); int optimize(THD * thd, HA_CHECK_OPT * check_opt); int analyze(THD * thd, HA_CHECK_OPT * check_opt); - int write_row(uchar * buf); + int write_row(const uchar * buf); int update_row(const uchar * old_data, const uchar * new_data); int delete_row(const uchar * buf); #if MYSQL_VERSION_ID >= 100000 |