1
0
mirror of https://github.com/MariaDB/server.git synced 2026-10-23 18:49:29 +03:00
Files
mariadb/sql
Khaled Riyad 4d2dd0645c MDEV-37563 Crash on a FOR loop with a row comparison in the upper bound
Both bounds of a FOR loop, and all parameters of a cursor FOR loop,
are parsed before their instructions are added. add_instr() then gave
all their items to the first instruction, and in a trigger also all
NEW and OLD fields. So a row comparison used by a later instruction
was cleaned up by the wrong one, on the next CALL, after its memory
had already been freed. This crashed in Arg_comparator::cleanup().

Give each instruction only the items of its own expression, and its
own trigger fields. To find them, cut THD::free_list at the newest
item of each expression, starting with the oldest expression.
2026-10-21 18:48:12 +03:00
..
2026-05-08 08:00:01 +02:00
2026-10-15 20:25:34 +02:00
…
2026-07-23 11:12:27 +02:00
2026-07-28 13:14:38 +02:00
…
2025-09-04 18:08:39 +03:00
2024-01-19 09:07:48 +02:00
…
…
…
2024-12-02 11:35:34 +02:00
2024-11-29 12:37:46 +02:00
2024-10-30 15:11:17 +01:00
…
2026-01-28 21:52:18 +01:00
2026-10-15 20:25:34 +02:00
2026-10-15 20:25:34 +02:00
2024-12-02 11:35:34 +02:00
…
…
…
2024-01-27 12:09:54 +01:00
2024-01-27 12:09:54 +01:00
2026-10-15 20:25:34 +02:00
2026-06-15 12:50:45 +02:00
2025-09-04 18:08:39 +03:00
2026-08-30 17:39:50 +02:00
2026-10-15 20:25:34 +02:00
2024-11-29 13:43:17 +02:00
…
…
2026-10-15 20:25:34 +02:00
2026-10-13 07:49:28 +03:00
2024-12-02 11:35:34 +02:00
2024-12-05 10:11:58 +01:00
2026-08-19 08:40:05 +02:00
2026-10-15 20:25:34 +02:00
2026-08-19 08:13:54 +02:00
2026-01-28 14:22:20 +01:00
2026-10-15 20:25:34 +02:00
2026-01-28 21:52:18 +01:00
2026-01-28 14:22:20 +01:00
2026-01-28 14:22:20 +01:00
2026-10-15 20:25:34 +02:00
2026-10-15 20:25:34 +02:00
2024-12-02 11:35:34 +02:00
2026-10-15 20:25:34 +02:00
2024-11-29 13:43:17 +02:00
2024-07-08 22:40:16 +02:00
2024-06-17 12:02:03 +03:00
2025-04-26 10:53:02 +02:00
2024-05-21 19:38:51 +02:00
…
…
2025-04-26 10:53:02 +02:00
2026-10-13 07:04:14 +03:00
2026-08-19 08:40:05 +02:00
2026-10-13 07:04:14 +03:00
2026-05-08 08:00:01 +02:00
…
…
2025-09-04 18:08:39 +03:00
2026-04-01 10:49:05 +03:00
…
2024-09-18 07:38:49 +03:00
2024-12-02 11:35:34 +02:00
…
…
2026-10-21 09:30:28 +02:00
2026-10-15 20:25:34 +02:00
2024-05-21 19:38:51 +02:00
2026-01-28 21:52:18 +01:00
2026-10-13 07:04:14 +03:00
2026-08-19 08:40:05 +02:00
2026-07-28 13:14:38 +02:00
2024-12-02 11:35:34 +02:00
2026-07-28 13:14:38 +02:00
2026-05-08 08:00:01 +02:00
2026-08-19 08:40:05 +02:00
2026-05-08 08:00:01 +02:00
2024-12-02 11:35:34 +02:00
…
2025-09-04 18:08:39 +03:00
2024-07-22 15:14:50 +02:00
2026-10-15 20:25:34 +02:00
2026-05-08 08:00:01 +02:00
2026-10-13 07:49:28 +03:00
2026-07-28 13:14:38 +02:00
2026-10-13 07:04:14 +03:00
2026-10-13 07:04:14 +03:00
2026-08-19 08:40:05 +02:00
2026-08-19 08:40:05 +02:00
2026-06-15 12:50:45 +02:00
2026-06-15 10:43:23 +02:00
2024-12-02 11:35:34 +02:00
2026-08-19 08:40:05 +02:00
2026-08-19 08:40:05 +02:00
2025-10-28 17:49:51 +01:00
2025-10-28 17:49:51 +01:00
2026-10-13 07:04:14 +03:00
2024-12-02 11:35:34 +02:00
2026-08-19 08:13:54 +02:00
2025-09-04 18:08:39 +03:00
2026-10-15 20:25:34 +02:00
2025-01-14 23:45:41 +01:00
2024-06-24 13:09:47 +03:00
2025-01-30 12:01:11 +01:00
2024-11-29 13:43:17 +02:00
2026-05-08 08:00:01 +02:00
2025-09-04 18:08:39 +03:00
2026-04-01 10:49:05 +03:00
2024-12-02 11:35:34 +02:00
2026-10-15 20:25:34 +02:00
2026-10-15 20:25:34 +02:00
2026-01-28 21:52:18 +01:00
2026-01-02 11:06:05 +02:00
2026-10-15 20:25:34 +02:00
2026-10-15 20:25:34 +02:00
2026-10-15 20:25:34 +02:00
2026-07-23 11:12:27 +02:00
2026-07-23 11:12:27 +02:00
2026-10-15 20:25:34 +02:00
2025-03-03 11:07:56 +02:00
2026-03-17 18:57:42 +01:00
2026-01-28 21:52:18 +01:00
2026-08-19 08:40:05 +02:00
…
2024-08-21 09:30:54 +02:00
2025-09-04 18:08:39 +03:00
2024-06-27 10:26:09 +03:00
2026-10-15 20:25:34 +02:00
2024-10-30 15:11:17 +01:00
2024-11-29 12:37:46 +02:00
…
2026-10-13 07:04:14 +03:00
2025-09-19 12:31:14 +03:00
2025-09-04 18:08:39 +03:00
2026-05-08 08:00:01 +02:00
2024-04-15 18:54:30 +02:00
2026-10-15 20:25:34 +02:00
2026-01-28 21:52:18 +01:00
2024-07-03 12:45:30 +02:00
2026-10-15 20:25:34 +02:00
2026-08-19 08:40:05 +02:00
2026-07-23 11:12:27 +02:00
2026-08-19 08:40:05 +02:00
2025-09-04 18:08:39 +03:00
2026-05-08 08:00:01 +02:00
2026-10-20 13:58:44 +03:00
2026-08-19 08:40:05 +02:00
2026-03-17 11:30:41 +02:00
2024-03-28 10:51:36 +02:00
2025-09-16 17:01:39 +03:00
2026-10-15 20:25:34 +02:00
2026-07-28 13:14:38 +02:00
2025-01-30 12:01:11 +01:00
2025-03-27 08:01:47 +02:00
…
2024-01-18 19:22:23 +02:00
2026-10-15 20:25:34 +02:00
2026-10-15 20:25:34 +02:00
2024-12-02 11:35:34 +02:00
2024-11-23 08:14:23 -07:00
2026-08-19 08:40:05 +02:00
2026-07-28 13:14:38 +02:00
2026-07-28 13:14:38 +02:00
2026-06-15 12:50:45 +02:00
2026-10-20 13:58:44 +03:00
2026-08-19 08:40:05 +02:00
2026-08-19 08:40:05 +02:00
2026-10-15 20:25:34 +02:00
2025-09-04 18:08:39 +03:00
2024-06-24 13:09:47 +03:00
2025-07-28 19:40:10 +02:00
…
2024-02-15 13:53:21 +01:00
2024-12-02 11:35:34 +02:00
2024-12-02 11:35:34 +02:00
2026-08-19 08:40:05 +02:00
2026-10-15 20:25:34 +02:00
2025-11-28 12:56:27 +02:00
2025-11-28 12:56:27 +02:00
2024-06-27 10:26:09 +03:00
2026-10-13 07:04:14 +03:00
2026-06-21 15:32:20 +02:00
2026-08-19 08:40:05 +02:00
2024-10-03 13:24:43 +03:00
2024-09-09 13:50:38 +03:00
2026-10-15 20:25:34 +02:00
2026-07-23 11:12:27 +02:00
2026-07-23 11:12:27 +02:00
2026-08-19 08:40:05 +02:00
2026-04-01 10:49:05 +03:00
2025-07-28 19:40:10 +02:00