1
0
mirror of https://github.com/MariaDB/server.git synced 2025-11-21 06:21:35 +03:00
Files
mariadb/mysql-test/t
unknown 2aeb4170a0 Fix LP BUG#715027
Analysis:
Before calling:
  write_record= (select->skip_record(thd) > 0);
the function find_all_keys needs to restore the original read/write
sets of the table that is sorted if the condition select->cond
contains a subquery.

This didn't happen in this test case because the flag "with_subselect"
was not set properly for select->cond.

The reason for the flag not being set properly, was that this condition
was rewritten by add_cond_and_fix() inside make_join_select() by:

      /* Add conditions added by add_not_null_conds(). */
      if (tab->select_cond)
        add_cond_and_fix(thd, &tmp, tab->select_cond);

However, the function add_cond_and_fix() called the shortcut method
Item::quick_fix_field() that didn't update the "with_subselect"
property.

Solution:
Call the complete Item::fix_fields() to update all Item properties,
including "with_subselect".
2011-02-14 00:11:46 +02:00
..
2009-08-20 14:30:59 +02:00
2010-02-25 23:13:11 +04:00
2010-09-12 18:40:01 +02:00
2010-06-10 11:11:52 +02:00
2009-10-28 09:52:34 +02:00
2009-10-28 09:52:34 +02:00
2009-10-28 09:52:34 +02:00
2010-09-12 18:40:01 +02:00
2010-03-09 16:09:32 +01:00
2009-12-22 15:33:21 +03:00
2009-10-28 09:52:34 +02:00
2010-05-26 21:55:40 +03:00
2010-11-25 00:57:34 +02:00
2009-09-29 17:38:40 +02:00
2010-01-15 17:27:55 +02:00
2009-10-28 09:52:34 +02:00
2010-11-25 00:57:34 +02:00
2009-09-08 00:50:10 +04:00
2010-11-25 00:57:34 +02:00
2009-09-08 00:50:10 +04:00
2010-11-01 09:47:57 +03:00
2010-11-25 00:57:34 +02:00
2010-10-19 15:58:35 +02:00
2010-11-25 00:57:34 +02:00
2010-11-25 00:57:34 +02:00
2011-01-18 00:53:41 +02:00
2009-10-28 09:52:34 +02:00
2010-12-27 14:22:05 -08:00
2010-12-09 21:55:14 -08:00
2010-12-27 14:22:05 -08:00
2009-09-08 00:50:10 +04:00
2010-01-15 16:58:25 +01:00
2010-10-19 15:58:35 +02:00
2011-01-05 15:03:30 -08:00
2010-10-27 16:31:22 -07:00
2010-10-27 16:31:22 -07:00
2010-12-10 23:23:34 -08:00
2010-10-30 06:07:45 -07:00
2010-08-30 16:25:23 +03:00
2010-09-06 02:15:34 +03:00
2010-11-23 23:39:59 +02:00
2009-10-28 09:52:34 +02:00
2010-11-23 23:39:59 +02:00
2009-10-28 09:52:34 +02:00
2009-10-28 09:52:34 +02:00
2010-09-06 02:15:34 +03:00
2010-03-04 09:03:07 +01:00
2009-10-04 01:20:51 +02:00
2010-09-20 15:17:59 +02:00
2010-08-25 22:22:33 +02:00
2010-11-25 00:57:34 +02:00
2010-12-27 14:22:05 -08:00
2009-10-28 09:52:34 +02:00
2009-08-12 12:03:05 +02:00
2010-06-14 18:58:52 +02:00
2010-11-25 00:57:34 +02:00
2010-11-23 23:39:59 +02:00
2010-12-06 10:25:44 +02:00
2009-09-08 00:50:10 +04:00
2010-12-10 01:17:09 -08:00
2009-10-28 09:52:34 +02:00
2010-10-27 16:31:22 -07:00
2010-01-15 10:51:39 +02:00
2009-10-28 09:52:34 +02:00
2009-11-27 18:10:28 +02:00
2010-04-08 14:10:05 +02:00
2010-03-21 21:58:19 +01:00
2010-10-27 16:31:22 -07:00
2011-01-11 14:04:08 +02:00
2011-01-11 14:04:08 +02:00
2011-02-14 00:11:46 +02:00
2010-12-03 15:37:54 +02:00
2011-02-03 17:00:28 +02:00
2010-11-25 00:34:50 +02:00
2011-02-03 17:00:28 +02:00
2010-10-27 16:31:22 -07:00
2011-02-03 17:00:28 +02:00
2011-02-03 17:00:28 +02:00
2010-05-26 21:55:40 +03:00
2010-06-10 11:11:52 +02:00
2010-09-20 15:17:59 +02:00
2010-08-13 14:18:46 +03:00
2010-05-26 21:55:40 +03:00
2010-10-27 16:31:22 -07:00