mariadb/extra
Marko Mäkelä 3c312d247c MDEV-35190 HASH_SEARCH duplicates effort before HASH_INSERT or HASH_DELETE
The HASH_ macros are unnecessarily obfuscating the logic,
so we had better replace them.

hash_cell_t::search(): Implement most of the HASH_DELETE logic,
for a subsequent insert or remove().

hash_cell_t::remove(): Remove an element.

hash_cell_t::find(): Implement the HASH_SEARCH logic.

xb_filter_hash_free(): Avoid any hash table lookup;
just traverse the hash bucket chains and free each element.

xb_register_filter_entry(): Search databases_hash only once.

rm_if_not_found(): Make use of find_filter_in_hashtable().

dict_sys_t::acquire_temporary_table(), dict_sys_t::find_table():
Define non-inline to avoid unnecessary code duplication.

dict_sys_t::add(dict_table_t *table), dict_table_rename_in_cache():
Look for duplicate while finding the insert position.

dict_table_change_id_in_cache(): Merged to the only caller
row_discard_tablespace().

hash_insert(): Helper function of dict_sys_t::resize().

fil_space_t::create(): Look for a duplicate (and crash if found)
when searching for the insert position.

lock_rec_discard(): Take the hash array cell as a parameter
to avoid a duplicated lookup.

lock_rec_free_all_from_discard_page(): Remove a parameter.

Reviewed by: Debarun Banerjee
2024-11-21 08:59:02 +02:00
..
aws_sdk MDEV-23539: aws key plugin - fails to build 2020-10-26 14:59:42 +11:00
mariabackup MDEV-35190 HASH_SEARCH duplicates effort before HASH_INSERT or HASH_DELETE 2024-11-21 08:59:02 +02:00
readline Merge branch '5.5' into 10.1 2019-05-11 22:19:05 +03:00
wolfssl New wolfssl v5.7.2-stable 2024-07-15 19:11:39 +02:00
charset2html.c Merge branch '5.5' into 10.1 2019-05-11 22:19:05 +03:00
CMakeLists.txt Merge branch '10.5' into 10.6 2024-05-08 20:06:00 +02:00
comp_err.c MDEV-8334: Rename utf8 to utf8mb3 2021-05-19 06:48:36 +02:00
innochecksum.cc MDEV-34830: LSN in the future is not being treated as serious corruption 2024-10-17 17:24:20 +03:00
my_print_defaults.c Merge 10.5 into 10.6 2023-12-19 18:41:42 +02:00
mysql_waitpid.c Added 'const' to arguments in get_one_option and find_typeset() 2021-02-08 12:16:29 +02:00
mysqld_safe_helper.c
perror.c MDEV-34714 perror-win test failure on localized Windows 2024-08-09 01:15:45 +02:00
replace.c Merge 10.4 into 10.5 2022-07-01 14:42:02 +03:00
resolve_stack_dump.c MDEV-22189: Change error messages inside code to have mariadb instead of 2021-05-24 11:38:13 +05:30
resolveip.c Added 'const' to arguments in get_one_option and find_typeset() 2021-02-08 12:16:29 +02:00