diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2018-02-06 13:53:20 +0200 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2018-02-07 10:39:12 +0200 |
commit | 10590dd39cc1e742bbf395c3285201a6a31c5284 (patch) | |
tree | af7bddfa5cb6e9b2aebd685f10dab270b072da1f /mysys_ssl | |
parent | 5d7e9fd46cc135fcb1043eb0a8c06e98576fe70a (diff) | |
download | mariadb-git-10590dd39cc1e742bbf395c3285201a6a31c5284.tar.gz |
MDEV-15199 Referential integrity broken in ON DELETE CASCADE
MDEV-14222 Unnecessary 'cascade' memory allocation for every updated row
when there is no FOREIGN KEY
This reverts the MySQL 5.7.2 change
https://github.com/mysql/mysql-server/commit/377774689bf6a16af74182753fe950d514c2c6dd
which introduced these problems. MariaDB 10.2.2 inherited these problems
in commit 2e814d4702d71a04388386a9f591d14a35980bfe.
The FOREIGN KEY CASCADE and SET NULL operations implemented as
procedural recursion are consuming more than 8 kilobytes of stack
(9 stack frames) per iteration in a non-debug GNU/Linux AMD64 build.
This is why we need to limit the maximum recursion depth to 15 steps
instead of the 255 that it used to be in MySQL 5.7 and MariaDB 10.2.
A corresponding change was made in MySQL 5.7.21 in
https://github.com/mysql/mysql-server/commit/7b26dc98a624d5cdf79cd5eee455cb03e3bccb5a
Diffstat (limited to 'mysys_ssl')
0 files changed, 0 insertions, 0 deletions