1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-18 23:03:28 +03:00
Files
mariadb/sql
Monty 407e9b78cf MDEV-24395 Atomic DROP TRIGGER
The purpose of this task is to ensure that DROP TRIGGER is atomic.

Description of how atomic drop trigger works:

Logging of DROP TRIGGER
    Log the following information:
    db
    table name
    trigger name
    xid /* Used to check if query was already logged to binary log */
    initial length of the .TRG file
    query if there is space for it, if not log a zero length query.

Recovery operations:
- Delete if exists 'database/trigger_name.TRN~'
  - If this file existed, it means that we crashed before the trigger
    was deleted and there is nothing else to do.
- Get length of .TRG file
  - If file length is unchanged, trigger was not dropped. Nothing else to
    do.
- Log original query to binary, if it was stored in the ddl log. If it was
  not stored (long query string), log the following query to binary log:
  use `database` ; DROP TRIGGER IF EXISTS `trigger_name`
  /* generated by ddl log */;

Other things:
- Added trigger name and DDL_LOG_STATE to drop_trigger()
  Trigger name was added to make the interface more consistent and
  more general.
2021-05-19 22:54:13 +02:00
..
2020-04-08 14:51:14 +04:00
2020-10-22 17:08:49 +03:00
2020-08-03 14:44:06 +02:00
2021-04-20 12:30:09 +03:00
2021-03-12 07:02:29 +11:00
2021-05-19 22:27:48 +02:00
2021-04-21 10:21:47 +04:00
2021-05-19 22:54:13 +02:00
2021-05-19 22:54:13 +02:00
2021-05-19 22:54:12 +02:00
2021-05-19 22:54:12 +02:00
2020-08-04 17:24:15 +02:00
2020-08-03 14:44:06 +02:00
2021-05-19 22:27:48 +02:00
2021-04-22 08:25:40 +03:00
2021-05-19 22:54:12 +02:00
2021-05-19 22:27:48 +02:00
2021-05-19 22:27:48 +02:00
2020-07-15 14:51:22 +03:00
2020-08-03 13:41:29 +02:00
2021-04-20 12:30:09 +03:00
2021-05-09 23:51:18 +02:00
2021-05-19 22:54:12 +02:00
2021-04-20 12:30:09 +03:00
2021-05-19 22:27:48 +02:00
2021-05-19 22:27:48 +02:00
2021-05-19 22:27:48 +02:00
2021-05-19 22:27:48 +02:00
2020-03-31 17:42:34 +02:00
2019-10-18 09:05:27 +03:00
2020-11-03 16:24:47 +02:00
2021-05-19 22:54:12 +02:00
2021-05-19 22:54:12 +02:00
2021-05-19 22:54:12 +02:00
2020-11-13 21:54:21 +02:00
2021-03-11 20:09:34 +02:00
2021-03-11 20:09:34 +02:00
2020-11-02 15:48:47 +02:00
2021-04-21 07:25:48 +03:00
2021-05-19 22:27:48 +02:00
2021-02-11 09:26:53 +02:00
2021-05-19 22:54:12 +02:00
2021-05-19 22:54:12 +02:00
2020-05-30 11:04:27 +03:00
2021-04-21 11:45:00 +03:00
2021-05-19 22:54:12 +02:00
2020-04-27 18:19:07 +03:00
2020-08-12 14:39:53 +03:00
2021-05-19 22:27:48 +02:00
2021-05-19 22:27:48 +02:00
2021-05-19 22:27:48 +02:00
2020-03-23 10:50:14 +02:00
2020-12-02 18:29:49 +02:00
2021-05-19 22:54:12 +02:00
2021-05-18 11:13:45 +03:00
2021-04-21 09:01:01 +03:00
2020-06-03 09:45:39 +03:00
2021-04-21 09:01:01 +03:00
2020-03-16 00:10:50 +02:00
2021-05-19 06:48:36 +02:00
2021-05-19 22:27:48 +02:00
2021-05-19 22:27:48 +02:00
2021-05-19 22:27:48 +02:00
2021-05-19 22:27:27 +02:00
2021-05-19 22:27:48 +02:00
2021-05-19 22:27:48 +02:00
2021-05-19 22:27:48 +02:00
2021-01-06 10:53:00 +01:00
2021-05-19 22:54:12 +02:00
2021-05-19 22:54:12 +02:00
2021-05-19 22:27:48 +02:00
2021-05-19 22:27:48 +02:00
2021-05-19 22:27:48 +02:00
2021-05-19 22:27:48 +02:00
2021-03-27 17:37:42 +02:00
2021-04-21 10:21:46 +04:00
2021-03-19 13:09:21 +02:00
2021-05-18 11:13:45 +03:00
2021-04-21 09:01:01 +03:00
2021-05-19 22:54:12 +02:00
2020-08-04 17:24:15 +02:00
2021-04-21 09:01:01 +03:00
2021-04-20 12:30:09 +03:00
2021-02-23 09:25:57 +01:00
2021-05-19 22:54:12 +02:00
2021-05-19 22:54:12 +02:00
2021-05-19 22:54:12 +02:00
2021-05-19 22:27:53 +02:00
2020-08-13 18:18:25 +03:00
2020-07-31 18:09:08 +03:00
2021-05-19 22:54:13 +02:00
2021-05-19 22:54:13 +02:00
2021-05-19 22:27:48 +02:00
2021-05-19 22:27:48 +02:00
2021-05-19 22:27:48 +02:00
2021-04-21 09:01:01 +03:00
2020-10-22 13:27:18 +03:00
2021-05-19 22:54:12 +02:00
2021-05-19 22:27:48 +02:00
2020-11-03 14:49:17 +02:00
2020-04-03 13:01:21 +04:00
2020-04-03 13:01:21 +04:00
2021-04-21 09:01:01 +03:00
2020-12-02 18:29:49 +02:00
2021-05-19 22:27:48 +02:00
2020-06-14 10:13:53 +03:00
2020-06-14 10:13:53 +03:00
2020-08-04 07:55:16 +03:00
2020-11-11 07:37:05 +02:00
2021-01-08 08:44:18 +02:00
2021-03-19 13:09:21 +02:00
2021-05-19 22:27:48 +02:00
2021-05-04 07:37:38 +03:00
2020-08-26 11:30:20 +03:00
2021-05-03 14:34:48 +03:00
2020-08-26 12:02:07 +03:00
2020-08-26 11:30:20 +03:00
2021-04-21 11:45:00 +03:00
2021-04-08 10:11:36 +03:00
2020-03-28 21:20:29 +02:00
2020-01-29 15:06:06 +02:00
2020-12-02 18:29:49 +02:00