mariadb/storage/myisam
Marko Mäkelä cffbb17480 MDEV-28933: Per-table unique FOREIGN KEY constraint names
Before MySQL 4.0.18, user-specified constraint names were ignored.
Starting with MySQL 4.0.18, the specified constraint name was
prepended with the schema name and '/'.  Now we are transforming
into a format where the constraint name is prepended with the
dict_table_t::name and the impossible UTF-8 sequence 0xff.
Generated constraint names will be ASCII decimal numbers.

On upgrade, old FOREIGN KEY constraint names will be displayed
without any schema name prefix. They will be updated to the new
format on DDL operations.

dict_foreign_t::sql_id(): Return the SQL constraint name
without any schemaname/tablename\377 or schemaname/ prefix.

row_rename_table_for_mysql(), dict_table_rename_in_cache():
Simplify the logic: Just rename constraints to the new format.

dict_table_get_foreign_id(): Replaces dict_table_get_highest_foreign_id().

innobase_get_foreign_key_info(): Let my_error() refer to erroneous
anonymous constraints as "(null)".

row_delete_constraint(): Try to drop all 3 constraint name variants.

Reviewed by: Thirunarayanan Balathandayuthapani
Tested by: Matthias Leich
2025-07-08 12:30:27 +03:00
..
ftbench mtr: use env for perl 2020-06-23 03:24:46 +02:00
mysql-test MDEV-28933: Per-table unique FOREIGN KEY constraint names 2025-07-08 12:30:27 +03:00
ChangeLog Fix remaining typos 2025-04-29 11:18:00 +10:00
CMakeLists.txt Add build on AIX 2020-12-16 08:07:04 +11:00
ft_boolean_search.c MDEV-34348: Consolidate cmp function declarations 2024-11-23 08:14:22 -07:00
ft_myisam.c Merge 10.2 into 10.3 2019-05-14 17:18:46 +03:00
ft_nlq_search.c MDEV-34348: Fix casts relating to tree_walk_action 2024-11-23 08:14:23 -07:00
ft_parser.c Merge 11.4 into 11.7 2024-12-02 17:51:17 +02:00
ft_static.c Merge branch '5.5' into 10.1 2019-05-11 22:19:05 +03:00
ft_stopwords.c MDEV-34348: Fix casts relating to tree_walk_action 2024-11-23 08:14:23 -07:00
ft_update.c Merge branch '10.6' into 10.10 2023-11-08 16:23:30 +01:00
ftdefs.h Merge 10.2 into 10.3 2019-05-14 17:18:46 +03:00
fulltext.h Merge 10.2 into 10.3 2019-05-14 17:18:46 +03:00
ha_myisam.cc Merge branch '11.8' into 12.0 2025-06-18 07:50:39 +02:00
ha_myisam.h Merge branch '11.6' into 11.7 2024-11-10 19:22:21 +01:00
mi_cache.c Merge 10.2 into 10.3 2019-05-14 17:18:46 +03:00
mi_changed.c Update FSF Address 2019-05-11 21:29:06 +03:00
mi_check.c Fix remaining typos 2025-04-29 11:18:00 +10:00
mi_checksum.c Merge branch '5.5' into 10.1 2019-05-11 22:19:05 +03:00
mi_close.c Merge 10.2 into 10.3 2020-04-22 14:45:55 +03:00
mi_create.c mhnsw: build indexes with the columns of exactly right size 2024-11-05 14:00:49 -08:00
mi_dbug.c Update FSF Address 2019-05-11 21:29:06 +03:00
mi_delete.c cleanup: key algorithm vs key flags 2024-11-05 14:00:47 -08:00
mi_delete_all.c MDEV-9101 Limit size of created disk temporary files and tables 2024-05-27 12:39:04 +02:00
mi_delete_table.c MDEV-11412 Ensure that table is truly dropped when using DROP TABLE 2020-06-14 19:39:42 +03:00
mi_dynrec.c perfschema memory related instrumentation changes 2020-03-10 19:24:22 +01:00
mi_extra.c Fixed that HA_EXTRA_FLUSH in Aria and MyISAM flushes all data to disk 2025-04-28 12:59:39 +03:00
mi_extrafunc.h Update FSF Address 2019-05-11 21:29:06 +03:00
mi_info.c make MyISAM and Aria report correct reflength to the server 2024-11-05 14:00:51 -08:00
mi_key.c cleanup: key algorithm vs key flags 2024-11-05 14:00:47 -08:00
mi_keycache.c Update FSF Address 2019-05-11 21:29:06 +03:00
mi_locking.c Merge 11.4 into 11.7 2024-12-02 17:51:17 +02:00
mi_log.c MDEV-25602 get rid of __WIN__ in favor of standard _WIN32 2021-06-06 13:21:03 +02:00
mi_open.c cleanup: key algorithm vs key flags 2024-11-05 14:00:47 -08:00
mi_packrec.c Fix typos in C comments inside storage/ 2025-03-26 16:56:50 +04:00
mi_page.c Update FSF Address 2019-05-11 21:29:06 +03:00
mi_panic.c Update FSF Address 2019-05-11 21:29:06 +03:00
mi_preload.c perfschema memory related instrumentation changes 2020-03-10 19:24:22 +01:00
mi_range.c Fix typos in C comments inside storage/ 2025-03-26 16:56:50 +04:00
mi_rename.c pos-fixes for rename 2024-11-05 14:00:50 -08:00
mi_rfirst.c Fix spelling mistakes in MyISAM code comments 2019-09-20 07:21:21 +03:00
mi_rkey.c cleanup: remove unconditional #ifdef's 2024-11-05 14:00:47 -08:00
mi_rlast.c Update FSF Address 2019-05-11 21:29:06 +03:00
mi_rnext.c cleanup: remove unconditional #ifdef's 2024-11-05 14:00:47 -08:00
mi_rnext_same.c cleanup: remove unconditional #ifdef's 2024-11-05 14:00:47 -08:00
mi_rprev.c MDEV-21794: Optimizer flag rowid_filter leads to long query 2020-05-07 12:27:17 +02:00
mi_rrnd.c Update FSF Address 2019-05-11 21:29:06 +03:00
mi_rsame.c Update FSF Address 2019-05-11 21:29:06 +03:00
mi_rsamepos.c Update FSF Address 2019-05-11 21:29:06 +03:00
mi_scan.c Fixes to make dbug traces from Windows easier to compare with Unix traces 2023-03-02 13:11:54 +02:00
mi_search.c Fix typos in C comments inside storage/ 2025-03-26 16:56:50 +04:00
mi_static.c perfschema memory related instrumentation changes 2020-03-10 19:24:22 +01:00
mi_statrec.c Fix remaining typos 2025-04-29 11:18:00 +10:00
mi_test1.c Fix typos in C comments inside storage/ 2025-03-26 16:56:50 +04:00
mi_test2.c Added page_range to records_in_range() to improve range statistics 2020-03-27 03:54:45 +02:00
mi_test3.c Fix clang -Wunused-but-set-variable 2022-09-19 13:30:52 +03:00
mi_test_all.res Merge chilla.local:/home/mydev/mysql-5.0-bug14400-monty 2006-09-19 14:33:29 +02:00
mi_test_all.sh Merge remote-tracking branch 'origin/5.5' into 10.1 2019-09-24 11:18:39 +04:00
mi_unique.c MDEV-35620 UBSAN: runtime error: applying zero offset to null pointer 2025-02-03 16:45:02 +04:00
mi_update.c cleanup: key algorithm vs key flags 2024-11-05 14:00:47 -08:00
mi_write.c Merge 11.4 into 11.7 2024-12-02 17:51:17 +02:00
myisam_ftdump.c cleanup: key algorithm vs key flags 2024-11-05 14:00:47 -08:00
myisamchk.c Fix remaining typos 2025-04-29 11:18:00 +10:00
myisamdef.h Tag myisamdef.h printers with ATTRIBUTE_FORMAT 2025-02-12 10:17:44 +01:00
myisamlog.c Merge 10.11 into 11.4 2024-12-02 11:35:34 +02:00
myisampack.c Fix remaining typos 2025-04-29 11:18:00 +10:00
NEWS Merge remote-tracking branch 'origin/10.1' into 10.2 2019-09-24 19:19:25 +04:00
rt_index.c cleanup: remove unconditional #ifdef's 2024-11-05 14:00:47 -08:00
rt_index.h cleanup: remove unconditional #ifdef's 2024-11-05 14:00:47 -08:00
rt_key.c cleanup: remove unconditional #ifdef's 2024-11-05 14:00:47 -08:00
rt_key.h cleanup: remove unconditional #ifdef's 2024-11-05 14:00:47 -08:00
rt_mbr.c cleanup: remove unconditional #ifdef's 2024-11-05 14:00:47 -08:00
rt_mbr.h cleanup: remove unconditional #ifdef's 2024-11-05 14:00:47 -08:00
rt_split.c cleanup: remove unconditional #ifdef's 2024-11-05 14:00:47 -08:00
rt_test.c cleanup: remove unconditional #ifdef's 2024-11-05 14:00:47 -08:00
sort.c Merge 11.4 into 11.7 2024-12-02 17:51:17 +02:00
sp_defs.h cleanup: remove unconditional #ifdef's 2024-11-05 14:00:47 -08:00
sp_key.c cleanup: remove unconditional #ifdef's 2024-11-05 14:00:47 -08:00
sp_test.c cleanup: key algorithm vs key flags 2024-11-05 14:00:47 -08:00
test_pack