Igor Babaev
c7a153453e
Fixed the bug mdev-12556.
...
When the rows produced on the current iteration are sent to the
temporary table T of the UNION type created for CTE the rows
that were not there simultaneously are sent to the temporary
table D that contains rows for the next iteration. The test
whether a row was in T checks the return code of writing into T.
If just a HEAP table is used for T then the return code is
HA_ERR_FOUND_DUPP_KEY, but if an ARIA table is used for T then
the return code is HA_ERR_FOUND_DUPP_UNIQUE.
The implementation of select_union_recursive::send_data()
erroneously checked only for the first return code. So if an Aria
table was used for T then all rows produced by the current iteration
went to D and and in most cases D grew with each iteration.
Whether T has reached stabilization is detected by
checking whether D is empty. So as a result, the iterations were
never stopped unless a limit for them was set.
Fixed by checking for both HA_ERR_FOUND_DUPP_KEY and
HA_ERR_FOUND_DUPP_UNIQUE as return codes returned by
the function writing a row into the temporary table T.
2017-04-26 10:16:03 -07:00
..
2017-02-10 06:30:42 -05:00
2016-05-04 15:23:26 +02:00
2017-03-30 12:48:42 +02:00
2016-03-31 10:11:16 +04:00
2017-03-13 15:31:12 +01:00
2017-01-23 14:13:53 +11:00
2017-01-23 14:13:53 +11:00
2016-03-31 10:11:16 +04:00
2016-03-31 10:11:16 +04:00
2016-12-21 22:40:52 +02:00
2016-03-31 10:11:16 +04:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2016-04-19 11:27:00 +02:00
2016-05-04 15:23:26 +02:00
2017-02-10 06:30:42 -05:00
2016-06-04 09:06:00 +02:00
2017-03-29 12:07:33 -07:00
2017-04-17 15:32:44 -07:00
2016-03-31 10:11:16 +04:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2016-03-31 10:11:16 +04:00
2016-05-08 23:04:41 +03:00
2016-03-31 10:11:16 +04:00
2016-06-30 11:43:02 +02:00
2016-05-20 09:46:03 +02:00
2016-10-09 01:20:17 +02:00
2016-10-05 01:11:07 +03:00
2016-12-29 13:23:49 +01:00
2016-11-02 13:44:07 +01:00
2016-03-08 16:55:17 +02:00
2017-02-11 09:45:34 +01:00
2017-04-25 19:34:39 -07:00
2017-04-26 10:16:03 -07:00
2017-02-10 06:30:42 -05:00
2016-11-21 10:33:09 +00:00
2016-04-02 00:04:47 +04:00
2017-02-10 06:30:42 -05:00
2016-09-06 12:50:02 +04:00
2016-03-31 11:04:48 +04:00
2016-03-31 10:11:16 +04:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-02-11 11:16:36 -05:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2016-09-03 09:05:56 +04:00
2017-02-10 06:30:42 -05:00
2016-06-30 16:38:05 +02:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2016-09-06 12:50:02 +04:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2016-09-06 12:50:02 +04:00
2016-09-06 12:50:02 +04:00
2016-05-26 16:45:50 +07:00
2016-06-30 16:38:05 +02:00
2017-01-06 17:09:59 +02:00
2017-01-06 17:09:59 +02:00
2016-09-23 14:19:07 +04:00
2017-02-10 17:01:45 +01:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-03-21 11:37:24 +01:00
2016-09-23 14:19:07 +04:00
2017-02-10 06:30:42 -05:00
2016-09-02 13:22:28 +03:00
2016-09-23 14:19:07 +04:00
2017-02-10 06:30:42 -05:00
2017-01-06 17:09:59 +02:00
2016-09-23 14:19:07 +04:00
2017-02-10 17:01:45 +01:00
2017-02-10 06:30:42 -05:00
2016-09-23 14:19:07 +04:00
2017-02-10 17:01:45 +01:00
2016-03-31 10:11:16 +04:00
2016-03-31 10:11:16 +04:00
2016-12-21 13:18:45 +04:00
2017-02-21 20:31:06 +01:00
2016-08-27 16:59:12 +02:00
2017-04-18 17:36:05 -07:00
2016-05-08 23:04:41 +03:00
2017-02-10 06:30:42 -05:00
2017-04-24 23:58:23 -07:00
2016-12-29 13:23:18 +01:00
2017-03-30 12:48:42 +02:00
2017-03-10 18:21:24 +01:00
2016-10-27 00:04:26 +04:00
2016-12-12 20:27:23 +01:00
2016-09-15 22:02:32 +03:00
2017-03-31 15:18:28 +04:00
2016-06-28 22:01:55 +02:00
2016-05-04 15:23:26 +02:00
2016-03-31 10:11:16 +04:00
2016-12-17 00:16:15 +01:00
2017-01-23 14:13:53 +11:00
2017-02-10 17:01:45 +01:00
2017-02-10 06:30:42 -05:00
2016-10-05 01:11:07 +03:00
2017-02-10 06:30:42 -05:00
2016-03-31 10:11:16 +04:00
2016-03-31 10:11:16 +04:00
2016-03-31 10:11:16 +04:00
2016-03-31 10:11:16 +04:00
2016-03-31 10:11:16 +04:00
2016-03-31 10:11:16 +04:00
2016-03-31 10:11:16 +04:00
2016-04-26 12:58:14 +02:00
2016-12-03 22:03:38 +01:00
2017-02-10 06:30:42 -05:00
2016-05-24 14:18:46 +04:00
2016-12-29 13:23:18 +01:00
2016-12-29 13:23:18 +01:00
2016-12-20 00:42:46 -08:00
2016-06-30 11:43:02 +02:00
2016-04-24 18:15:20 +02:00
2016-12-29 13:23:18 +01:00
2016-04-24 18:15:20 +02:00
2016-06-30 16:38:05 +02:00
2017-02-10 06:30:42 -05:00
2016-09-21 09:13:33 +04:00
2016-03-18 17:50:18 +04:00
2017-02-10 06:30:42 -05:00
2017-03-20 15:18:06 +04:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2016-09-09 08:33:08 +02:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2016-06-30 11:43:02 +02:00
2017-02-11 09:45:34 +01:00
2016-12-12 20:27:22 +01:00
2016-12-12 20:35:51 +01:00
2017-01-24 02:29:04 +04:00
2017-03-14 16:35:39 +04:00
2017-02-10 06:30:42 -05:00
2017-03-30 12:48:42 +02:00
2016-03-31 10:11:16 +04:00
2016-03-31 10:11:16 +04:00
2016-04-24 18:15:20 +02:00
2017-03-30 12:48:42 +02:00
2016-06-08 14:17:23 +03:00
2016-12-11 09:53:42 +01:00
2017-02-15 13:47:41 -08:00
2016-08-25 09:50:04 +03:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2016-09-21 10:03:16 +02:00
2017-02-10 17:01:45 +01:00
2016-03-04 02:09:37 +02:00
2016-12-29 13:23:49 +01:00
2016-12-20 17:42:08 +04:00
2016-07-25 01:57:00 +03:00
2016-12-29 13:23:49 +01:00
2016-09-15 21:56:01 +03:00
2016-07-13 14:49:05 +03:00
2016-09-21 09:13:33 +04:00
2016-03-31 10:11:16 +04:00
2017-02-10 06:30:42 -05:00
2016-03-31 10:11:16 +04:00
2016-06-14 13:55:28 +02:00
2016-12-21 13:18:45 +04:00
2017-02-10 06:30:42 -05:00
2017-01-17 20:16:09 +01:00
2017-02-10 06:30:42 -05:00
2016-09-15 15:31:28 +02:00
2017-02-13 18:12:04 +01:00
2017-02-24 09:40:53 -08:00
2017-02-10 06:30:42 -05:00
2016-11-20 00:26:40 +03:00
2017-02-10 06:30:42 -05:00
2017-01-31 23:41:10 +04:00
2016-06-30 16:38:05 +02:00
2016-03-31 10:11:16 +04:00
2016-03-31 10:11:16 +04:00
2017-02-10 06:30:42 -05:00
2017-02-11 09:45:34 +01:00
2016-06-21 14:11:02 +02:00
2016-03-31 10:11:16 +04:00
2016-12-21 13:18:45 +04:00
2016-06-10 18:39:43 -04:00
2017-01-04 03:33:39 +02:00
2017-02-10 06:30:42 -05:00
2017-03-21 11:37:24 +01:00
2017-03-07 22:28:33 +04:00
2017-03-07 22:28:33 +04:00
2017-03-07 22:28:33 +04:00
2016-04-19 11:27:00 +02:00
2017-04-01 19:32:36 +02:00
2016-11-03 16:35:15 +04:00
2016-09-10 16:04:44 +02:00
2016-03-31 10:11:16 +04:00
2016-12-29 13:23:18 +01:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2016-12-29 13:23:49 +01:00
2017-02-10 06:30:42 -05:00
2016-03-31 10:11:16 +04:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2016-06-30 11:43:02 +02:00
2016-10-05 01:11:07 +03:00
2016-10-14 01:12:04 +02:00
2017-03-21 11:37:24 +01:00
2017-03-21 11:37:24 +01:00
2017-03-21 11:37:24 +01:00
2016-11-02 13:44:07 +01:00
2016-04-27 11:08:46 +04:00
2016-03-31 10:11:16 +04:00
2016-11-03 13:37:15 +01:00
2016-09-02 13:22:28 +03:00
2016-11-03 13:37:15 +01:00
2016-08-10 19:19:05 +02:00
2016-06-18 10:46:55 +04:00
2016-06-30 16:38:05 +02:00
2016-05-20 09:46:03 +02:00
2016-10-14 01:12:04 +02:00
2017-03-30 12:48:42 +02:00
2017-02-10 06:30:42 -05:00
2016-12-29 13:23:18 +01:00
2017-03-31 19:28:58 +02:00
2017-02-14 07:46:58 +02:00
2016-03-31 10:11:16 +04:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2016-08-25 16:27:57 +02:00
2016-05-04 15:23:26 +02:00
2016-05-08 23:04:41 +03:00
2017-02-10 06:30:42 -05:00
2017-02-14 07:46:58 +02:00
2017-02-11 09:45:34 +01:00
2017-02-14 07:46:58 +02:00
2016-12-12 20:35:41 +01:00
2017-03-10 18:21:24 +01:00
2017-02-10 06:30:42 -05:00
2016-11-03 16:35:15 +04:00
2017-04-07 18:26:55 +02:00
2017-02-10 06:30:42 -05:00
2016-09-02 13:22:28 +03:00
2016-06-30 11:43:02 +02:00
2017-02-10 06:30:42 -05:00
2016-03-31 10:11:16 +04:00
2016-03-31 10:11:16 +04:00
2016-09-02 13:22:28 +03:00
2017-03-30 12:48:42 +02:00
2017-02-08 10:22:42 +01:00
2017-03-03 01:37:54 +02:00
2016-11-25 14:55:01 +05:30
2016-03-31 10:11:16 +04:00
2016-03-31 10:11:16 +04:00
2017-03-30 12:48:42 +02:00
2017-04-07 09:55:54 +02:00
2017-01-04 13:03:30 +02:00
2017-01-04 13:03:30 +02:00
2016-12-29 13:23:49 +01:00
2016-07-13 12:09:59 +02:00
2016-09-09 08:40:24 +04:00
2017-03-30 12:48:42 +02:00
2016-03-31 10:11:16 +04:00
2016-03-31 10:11:16 +04:00
2017-03-15 20:15:31 +05:30
2017-03-03 01:37:54 +02:00
2017-04-03 15:59:38 -07:00
2016-03-31 10:11:16 +04:00
2016-03-31 10:11:16 +04:00
2016-08-08 17:26:06 -04:00
2017-03-11 16:23:31 +01:00
2017-02-10 06:30:42 -05:00
2016-09-02 13:22:28 +03:00
2016-09-02 13:22:28 +03:00
2016-09-08 15:49:03 +03:00
2017-02-10 06:30:42 -05:00
2017-02-13 18:12:05 +01:00
2016-12-29 13:23:49 +01:00
2016-03-31 10:11:16 +04:00
2016-04-19 11:27:00 +02:00
2017-02-10 06:30:42 -05:00
2016-12-14 12:45:50 +05:30
2016-12-11 09:53:42 +01:00
2016-05-04 15:23:26 +02:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-01-24 17:29:51 +04:00
2016-10-05 01:11:07 +03:00
2016-03-08 16:55:17 +02:00
2016-11-21 02:32:48 +03:00
2016-03-31 10:11:16 +04:00
2017-03-31 19:28:58 +02:00
2017-02-10 06:30:42 -05:00
2016-09-28 17:59:11 +02:00
2017-02-10 06:30:42 -05:00
2016-03-31 10:11:16 +04:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2016-03-31 10:11:16 +04:00
2017-01-06 10:46:21 +01:00
2016-03-31 10:11:16 +04:00
2016-04-23 00:28:50 +04:00
2017-03-30 12:48:42 +02:00
2017-03-29 07:21:34 +04:00
2016-08-25 16:27:57 +02:00
2016-08-25 16:27:57 +02:00
2016-08-25 16:27:57 +02:00
2016-10-06 12:31:23 +02:00
2016-08-25 16:27:57 +02:00
2016-03-31 10:11:16 +04:00
2016-04-20 19:03:59 +02:00
2016-04-20 19:03:59 +02:00
2016-08-25 16:27:57 +02:00
2016-08-25 16:27:57 +02:00
2016-08-03 21:37:19 +02:00
2016-08-03 21:37:19 +02:00
2017-02-16 16:42:25 +11:00
2017-02-10 06:30:42 -05:00
2016-12-21 13:18:45 +04:00
2017-02-10 06:30:42 -05:00
2017-02-11 09:45:34 +01:00
2017-03-21 19:20:44 +01:00
2017-01-23 14:13:53 +11:00
2017-03-08 14:40:02 +02:00
2017-01-24 01:21:43 +05:30
2017-02-10 06:30:42 -05:00
2017-04-24 14:57:26 -07:00
2017-02-27 12:35:10 +01:00
2017-03-14 00:25:26 +02:00
2017-02-10 06:30:42 -05:00
2017-03-09 08:53:08 +02:00
2016-11-21 17:14:14 -05:00
2016-03-31 10:11:16 +04:00
2017-03-30 12:48:42 +02:00
2016-10-05 01:11:07 +03:00
2017-01-15 07:41:13 +01:00
2016-10-05 01:11:07 +03:00
2016-10-05 01:11:07 +03:00
2016-03-31 10:11:16 +04:00
2017-02-10 06:30:42 -05:00
2016-11-03 16:35:15 +04:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-03-30 12:48:42 +02:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2016-08-27 16:59:12 +02:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2017-02-10 06:30:42 -05:00
2016-06-30 11:43:02 +02:00
2017-02-10 17:01:45 +01:00
2017-02-11 01:14:06 +02:00
2016-09-28 22:14:27 +02:00
2016-12-12 20:27:22 +01:00
2016-03-31 10:11:16 +04:00
2017-04-07 17:56:21 +02:00
2017-03-31 19:28:58 +02:00
2016-03-31 10:11:16 +04:00
2017-02-10 06:30:42 -05:00
2016-05-08 23:04:41 +03:00
2017-02-15 14:09:27 +02:00
2017-02-15 14:09:27 +02:00
2016-09-24 15:12:34 +02:00
2016-05-08 23:04:41 +03:00
2016-09-24 15:12:34 +02:00
2017-02-14 07:46:58 +02:00
2016-09-24 15:12:34 +02:00
2016-09-24 15:12:34 +02:00
2016-09-24 15:09:39 +02:00
2016-09-24 15:12:34 +02:00
2016-05-08 23:04:41 +03:00
2016-05-08 23:04:41 +03:00
2016-05-08 23:04:41 +03:00
2016-05-08 23:04:41 +03:00
2016-09-24 15:12:34 +02:00
2016-05-08 23:04:41 +03:00
2017-03-29 08:46:00 -07:00
2017-02-10 06:30:42 -05:00
2016-06-30 11:43:02 +02:00
2017-02-10 06:30:42 -05:00