mariadb/mysql-test/suite/binlog
Dave Gosselin 5001300bd4 MDEV-30469 Support ORDER BY and LIMIT for multi-table DELETE, index hints for single-table DELETE
We now allow multitable queries with order by and limit, such as:
  delete t1.*, t2.* from t1, t2 order by t1.id desc limit 3;
To predict what rows will be deleted, run the equivalent select:
  select t1.*, t2.* from t1, t2 order by t1.id desc limit 3;
Additionally, index hints are now supported with single table delete statements:
  delete from t2 use index(xid) order by (id) limit 2;

This approach changes the multi_delete SELECT result interceptor to use a temporary
table to collect row ids pertaining to the rows that will be deleted, rather than
directly deleting rows from the target table(s).  Row ids are collected during
send_data, then read during send_eof to delete target rows.  In the event that the
temporary table created in memory is not big enough for all matching rows, it is
converted to an aria table.

Other changes:
  - Deleting from a sequence now affects zero rows instead of emitting an error

Limitations:
  - The federated connector does not create implicit row ids, so we to use a key
  when conditionally deleting.  See the change in federated_maybe_16324629.test
2025-02-05 10:12:27 -05:00
..
include MDEV-35350: Backport search_pattern_in_file.inc SEARCH_WAIT to 10.5 2024-11-12 05:54:50 -07:00
r MDEV-30469 Support ORDER BY and LIMIT for multi-table DELETE, index hints for single-table DELETE 2025-02-05 10:12:27 -05:00
std_data MDEV-30128 remove support for 5.1- replication events 2023-02-05 22:02:30 +01:00
t MDEV-15751 CURRENT_TIMESTAMP should return a TIMESTAMP [WITH TIME ZONE?] 2024-10-19 22:48:23 +02:00
combinations WL#4350 Options in my.cnf style config file should not start with -- 2008-09-05 15:31:09 +02:00
disabled.def MDEV-30940: Revert "binlog.innodb_rc_insert_before_delete is disabled with MDEV-30490" 2023-01-30 21:28:21 +01:00
my.cnf MDEV-31404 Implement binlog_space_limit 2024-02-14 15:02:21 +01:00