mariadb/mysql-test/suite/funcs_1/r
Dmitry Shulga ecb7c9b692 MDEV-10164: Add support for TRIGGERS that fire on multiple events
Added capability to create a trigger associated with several trigger
events. For this goal, the syntax of the CREATE TRIGGER statement
was extended to support the syntax structure { event [ OR ... ] }
for the `trigger_event` clause. Since one trigger will be able to
handle several events it should be provided a way to determine what
kind of event is handled on execution of a trigger. For this goal
support of the clauses INSERTING, UPDATING , DELETING was added by
this patch. These clauses can be used inside a trigger body to detect
what kind of trigger action is currently processed using the following
boilerplate:
  IF INSERTING THEN ...
  ELSIF UPDATING THEN ...
  ELSIF DELETING THEN ...
In case one of the clauses INSERTING, UPDATING, DELETING specified in
a trigger's body not matched with a trigger event type, the error
ER_INCOMPATIBLE_EVENT_FLAG is emitted.

After this patch be pushed, one Trigger object will be associated with
several trigger events. It means that the array
  Table_triggers_list::triggers
can contain several pointers to the same Trigger object in array members
corresponding to different events. Moreover, support of several trigger
events for the same trigger requires that the data members `next` and
`action_order` of the Trigger class be converted to arrays to store
relating information per trigger event base.

Ability to specify the same trigger for different event types results in
necessity to handle invalid cases on execution of the multi-event
trigger, when the OLD or NEW qualifiers doesn't match a current event
type against that the trigger is run. The clause OLD should produces
the NULL value for INSERT event, whereas the clause NEW should produce
the NULL value for DELETE event.
2025-04-19 18:36:03 +07:00
..
charset_collation.result Merge 11.4 into 11.7 2025-01-09 09:41:38 +02:00
innodb_bitdata.result
innodb_cursors.result
innodb_func_view.result MDEV-34189 Unexpected error on WHERE inet6col 2025-01-29 09:08:19 +04:00
innodb_storedproc_02.result MDEV-20604: Duplicate key value is silently truncated to 64 characters in print_keydup_error 2020-04-01 11:34:32 +02:00
innodb_storedproc_03.result
innodb_storedproc_06.result MDEV-28548: ER_TABLEACCESS_DENIED_ERROR is missing information about DB 2022-09-30 08:48:57 +02:00
innodb_storedproc_07.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
innodb_storedproc_08.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
innodb_storedproc_10.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
innodb_trig_03.result MDEV-29167 new db-level SHOW CREATE ROUTINE privilege 2023-10-17 21:52:39 +02:00
innodb_trig_03e.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
innodb_trig_08.result MDEV-5215 prerequisite: remove test and test_* database hacks in the test suite 2022-11-01 16:33:00 +01:00
innodb_trig_09.result MDEV-26635 ROW_NUMBER is not 0 for errors not caused because of rows 2021-10-26 17:29:40 +02:00
innodb_trig_0102.result MDEV-26635 ROW_NUMBER is not 0 for errors not caused because of rows 2021-10-26 17:29:40 +02:00
innodb_trig_0407.result MDEV-5215 prerequisite: remove test and test_* database hacks in the test suite 2022-11-01 16:33:00 +01:00
innodb_trig_1011ext.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
innodb_trig_frkey.result
innodb_views.result MariaDB 11.4.4 release 2024-11-08 07:17:00 +01:00
is_basics_mixed.result MDEV-5215 prerequisite: remove test and test_* database hacks in the test suite 2022-11-01 16:33:00 +01:00
is_character_sets.result Merge 10.9 into 10.10 2022-09-21 10:59:56 +03:00
is_check_constraints.result MDEV-34716 Allow arbitrary options in CREATE SERVER 2024-10-15 10:50:22 +11:00
is_cml_innodb.result MDEV-25829 Change default Unicode collation to uca1400_ai_ci 2024-05-24 15:50:05 +04:00
is_cml_memory.result MDEV-25829 Change default Unicode collation to uca1400_ai_ci 2024-05-24 15:50:05 +04:00
is_cml_myisam.result MDEV-25829 Change default Unicode collation to uca1400_ai_ci 2024-05-24 15:50:05 +04:00
is_coll_char_set_appl.result Merge 10.9 into 10.10 2022-09-21 10:59:56 +03:00
is_collations.result MDEV-20912 Add support for utf8mb4_0900_* collations in MariaDB Server 2024-12-28 10:23:49 +02:00
is_column_privileges.result Merge branch '11.2' into 11.4 2024-10-30 15:11:17 +01:00
is_column_privileges_is_mysql_test.result MDEV-5215 prerequisite: remove test and test_* database hacks in the test suite 2022-11-01 16:33:00 +01:00
is_columns.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
is_columns_innodb.result MDEV-35245 SHOW CREATE TABLE produces unusable statement for vector fields with constant default value 2024-11-05 14:00:52 -08:00
is_columns_is.result MDEV-10164: Add support for TRIGGERS that fire on multiple events 2025-04-19 18:36:03 +07:00
is_columns_is_embedded.result MDEV-10164: Add support for TRIGGERS that fire on multiple events 2025-04-19 18:36:03 +07:00
is_columns_memory.result MDEV-35245 SHOW CREATE TABLE produces unusable statement for vector fields with constant default value 2024-11-05 14:00:52 -08:00
is_columns_myisam.result MDEV-35245 SHOW CREATE TABLE produces unusable statement for vector fields with constant default value 2024-11-05 14:00:52 -08:00
is_columns_myisam_embedded.result MDEV-35245 SHOW CREATE TABLE produces unusable statement for vector fields with constant default value 2024-11-05 14:00:52 -08:00
is_columns_mysql.result Merge 10.11 into 11.4 2025-01-09 07:58:08 +02:00
is_columns_mysql_embedded.result Merge 10.11 into 11.4 2025-01-09 07:58:08 +02:00
is_engines.result Merge 10.5 into 10.6 2022-09-20 16:53:20 +03:00
is_engines_archive.result MDEV-16342 SHOW ENGINES: MyISAM description is useless 2018-06-11 09:57:54 +02:00
is_engines_blackhole.result
is_engines_csv.result MDEV-16342 SHOW ENGINES: MyISAM description is useless 2018-06-11 09:57:54 +02:00
is_engines_federated.result Fix various spelling errors still found in code 2021-03-22 18:10:39 +11:00
is_engines_innodb.result
is_engines_memory.result
is_engines_merge.result
is_engines_myisam.result MDEV-16342 SHOW ENGINES: MyISAM description is useless 2018-06-11 09:57:54 +02:00
is_events.result Merge 10.9 into 10.10 2022-09-21 10:59:56 +03:00
is_key_column_usage.result Merge 10.5 into 10.6 2022-09-20 16:53:20 +03:00
is_key_column_usage_embedded.result Merge 10.5 into 10.6 2022-09-20 16:53:20 +03:00
is_routines.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
is_routines_embedded.result Merge branch '11.4' into 11.7 2025-02-06 16:46:36 +01:00
is_schema_privileges.result MDEV-5215 prerequisite: remove test and test_* database hacks in the test suite 2022-11-01 16:33:00 +01:00
is_schema_privileges_is_mysql_test.result MDEV-5215 prerequisite: remove test and test_* database hacks in the test suite 2022-11-01 16:33:00 +01:00
is_schemata.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
is_schemata_embedded.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
is_schemata_is_mysql_test.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
is_statistics.result make INFORMATION_SCHEMA.STATISTICS.COMMENT not nullable 2024-11-05 14:00:46 -08:00
is_statistics_is.result MDEV-7317: Make an index ignorable to the optimizer 2021-03-04 22:50:00 +05:30
is_statistics_mysql.result MDEV-7317: Make an index ignorable to the optimizer 2021-03-04 22:50:00 +05:30
is_statistics_mysql_embedded.result MDEV-7317: Make an index ignorable to the optimizer 2021-03-04 22:50:00 +05:30
is_table_constraints.result MDEV-34716 Allow arbitrary options in CREATE SERVER 2024-10-15 10:50:22 +11:00
is_table_constraints_is.result
is_table_constraints_mysql.result MDEV-34716 Allow arbitrary options in CREATE SERVER 2024-10-15 10:50:22 +11:00
is_table_constraints_mysql_embedded.result MDEV-15696 Implement SHOW CREATE SERVER 2024-10-15 10:50:23 +11:00
is_table_privileges.result Merge 10.5 into 10.6 2022-09-20 16:53:20 +03:00
is_tables.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
is_tables_embedded.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
is_tables_innodb.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
is_tables_is.result MDEV-33856: Alternative Replication Lag Representation via Received/Executed Master Binlog Event Timestamps 2024-07-25 08:57:27 -06:00
is_tables_is_embedded.result MDEV-32218 PASSWORD_EXPIRATION_TIME column 2024-05-27 16:43:58 +02:00
is_tables_memory.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
is_tables_myisam.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
is_tables_myisam_embedded.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
is_tables_mysql.result MDEV-34716 Allow arbitrary options in CREATE SERVER 2024-10-15 10:50:22 +11:00
is_tables_mysql_embedded.result MDEV-15696 Implement SHOW CREATE SERVER 2024-10-15 10:50:23 +11:00
is_triggers.result MDEV-10164: Add support for TRIGGERS that fire on multiple events 2025-04-19 18:36:03 +07:00
is_triggers_embedded.result MDEV-10164: Add support for TRIGGERS that fire on multiple events 2025-04-19 18:36:03 +07:00
is_user_privileges.result MDEV-5215 prerequisite: remove test and test_* database hacks in the test suite 2022-11-01 16:33:00 +01:00
is_views.result MDEV-5215 prerequisite: remove test and test_* database hacks in the test suite 2022-11-01 16:33:00 +01:00
is_views_embedded.result MDEV-5215 prerequisite: remove test and test_* database hacks in the test suite 2022-11-01 16:33:00 +01:00
memory_bitdata.result
memory_cursors.result
memory_func_view.result MDEV-34189 Unexpected error on WHERE inet6col 2025-01-29 09:08:19 +04:00
memory_storedproc_02.result MDEV-20604: Duplicate key value is silently truncated to 64 characters in print_keydup_error 2020-04-01 11:34:32 +02:00
memory_storedproc_03.result
memory_storedproc_06.result MDEV-28548: ER_TABLEACCESS_DENIED_ERROR is missing information about DB 2022-09-30 08:48:57 +02:00
memory_storedproc_07.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
memory_storedproc_08.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
memory_storedproc_10.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
memory_trig_03.result MDEV-29167 new db-level SHOW CREATE ROUTINE privilege 2023-10-17 21:52:39 +02:00
memory_trig_03e.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
memory_trig_08.result MDEV-5215 prerequisite: remove test and test_* database hacks in the test suite 2022-11-01 16:33:00 +01:00
memory_trig_09.result MDEV-26635 ROW_NUMBER is not 0 for errors not caused because of rows 2021-10-26 17:29:40 +02:00
memory_trig_0102.result MDEV-26635 ROW_NUMBER is not 0 for errors not caused because of rows 2021-10-26 17:29:40 +02:00
memory_trig_0407.result MDEV-5215 prerequisite: remove test and test_* database hacks in the test suite 2022-11-01 16:33:00 +01:00
memory_trig_1011ext.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
memory_views.result MariaDB 11.4.4 release 2024-11-08 07:17:00 +01:00
myisam_bitdata.result
myisam_cursors.result
myisam_func_view.result MDEV-34189 Unexpected error on WHERE inet6col 2025-01-29 09:08:19 +04:00
myisam_storedproc_02.result MDEV-20604: Duplicate key value is silently truncated to 64 characters in print_keydup_error 2020-04-01 11:34:32 +02:00
myisam_storedproc_03.result
myisam_storedproc_06.result MDEV-28548: ER_TABLEACCESS_DENIED_ERROR is missing information about DB 2022-09-30 08:48:57 +02:00
myisam_storedproc_07.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
myisam_storedproc_08.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
myisam_storedproc_10.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
myisam_trig_03.result MDEV-29167 new db-level SHOW CREATE ROUTINE privilege 2023-10-17 21:52:39 +02:00
myisam_trig_03e.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
myisam_trig_08.result MDEV-5215 prerequisite: remove test and test_* database hacks in the test suite 2022-11-01 16:33:00 +01:00
myisam_trig_09.result MDEV-26635 ROW_NUMBER is not 0 for errors not caused because of rows 2021-10-26 17:29:40 +02:00
myisam_trig_0102.result MDEV-26635 ROW_NUMBER is not 0 for errors not caused because of rows 2021-10-26 17:29:40 +02:00
myisam_trig_0407.result MDEV-5215 prerequisite: remove test and test_* database hacks in the test suite 2022-11-01 16:33:00 +01:00
myisam_trig_1011ext.result MDEV-19123 Change default charset from latin1 to utf8mb4 2024-07-11 10:21:07 +04:00
myisam_views-big.result MariaDB 11.4.4 release 2024-11-08 07:17:00 +01:00
processlist_priv_no_prot.result MDEV-9101 Limit size of created disk temporary files and tables 2024-05-27 12:39:04 +02:00
processlist_priv_ps.result MDEV-9101 Limit size of created disk temporary files and tables 2024-05-27 12:39:04 +02:00
processlist_val_no_prot.result MDEV-9101 Limit size of created disk temporary files and tables 2024-05-27 12:39:04 +02:00
processlist_val_ps.result MDEV-9101 Limit size of created disk temporary files and tables 2024-05-27 12:39:04 +02:00
row_count_func.result cleanup: select ... into tests 2025-02-11 20:31:25 +01:00
storedproc.result MariaDB 11.4.4 release 2024-11-08 07:17:00 +01:00