mariadb/storage/spider
Yuchen Pei 20c2b01b7a
MDEV-36307 MDEV-35452 Do not create spider group by handler when dealing with derived tables or view and at least one select item is constant
If one of the selected field is a MIN or MAX and it has been optimized
into a constant, it is not added to the temp table used by a group by
handler (GBH). The GBH therefore cannot store results to this missing
field.

On the other hand, when SELECTing from a view or a derived table,
TMP_TABLE_ALL_COLUMNS is set. If the query has no group by or order
by, an Item_temptable_field is created for this MIN/MAX field and
added to the JOIN. Since the GBH could not store results to the
corresponding field in the temp table, the value of this
Item_temptable_field remains NULL. And the NULL value is passed to the
record, then the temp row, and finally output as the (wrong) result.

To fix this, we opt to not creating a spider GBH when a view or
derived table is involved.

This fixes spider/bugfix.mdev_26345 for --view-protocol

Also fixed a comment:

TABLE_LIST::belong_to_derived is NULL if the table belongs to a
derived table that has non-MERGE type.
2025-04-02 15:45:23 +11:00
..
mysql-test/spider MDEV-36307 MDEV-35452 Do not create spider group by handler when dealing with derived tables or view and at least one select item is constant 2025-04-02 15:45:23 +11:00
CMakeLists.txt MDEV-26912 Spider: Remove dead code related to Oracle OCI 2024-10-15 14:30:40 +11:00
configure.in MDEV-4438 - Spider storage engine 2013-06-27 15:18:48 +04:00
ha_spider.cc MDEV-34849 Spider: do not change the first byte of a connection key 2025-01-22 11:20:06 +11:00
ha_spider.h MDEV-28526 Spider: remove conn_kind member variables 2025-01-22 11:20:06 +11:00
spd_conn.cc MDEV-34849 Clean up spider_check_trx_and_get_conn() 2025-01-22 11:20:07 +11:00
spd_conn.h MDEV-28526 Spider: remove conn_kind member variables 2025-01-22 11:20:06 +11:00
spd_copy_tables.cc MDEV-28526 Spider: remove conn_kind member variables 2025-01-22 11:20:06 +11:00
spd_copy_tables.h Merge branch '5.5' into 10.1 2019-05-11 22:19:05 +03:00
spd_db_conn.cc MDEV-35874 Spider: add missing skips when fetching results 2025-02-26 15:45:17 +11:00
spd_db_conn.h MDEV-28526 Spider: remove conn_kind member variables 2025-01-22 11:20:06 +11:00
spd_db_include.cc MDEV-26178 spider: delete spd_environ.h 2024-09-10 11:15:18 +10:00
spd_db_include.h MDEV-28526 Spider: remove conn_kind member variables 2025-01-22 11:20:06 +11:00
spd_db_mysql.cc MDEV-28526 Spider: remove conn_kind member variables 2025-01-22 11:20:06 +11:00
spd_db_mysql.h MDEV-26345 Spider GBH should execute original queries on the data node 2024-10-15 15:36:12 +11:00
spd_direct_sql.cc MDEV-35807 Case-insensitive wrappers in spider 2025-02-26 15:46:05 +11:00
spd_direct_sql.h Merge branch '5.5' into 10.1 2019-05-11 22:19:05 +03:00
spd_err.h MDEV-33490 MENT-1504 Fix some english strings in spider. 2024-06-04 12:25:08 +10:00
spd_group_by_handler.cc MDEV-36307 MDEV-35452 Do not create spider group by handler when dealing with derived tables or view and at least one select item is constant 2025-04-02 15:45:23 +11:00
spd_group_by_handler.h MDEV-26345 Spider GBH should execute original queries on the data node 2024-10-15 15:36:12 +11:00
spd_i_s.cc MDEV-26178 spider: delete spd_environ.h 2024-09-10 11:15:18 +10:00
spd_include.h MDEV-34849 Clean up spider_check_trx_and_get_conn() 2025-01-22 11:20:07 +11:00
spd_init_query.h MDEV-33538 make auxiliary spider plugins init depend on actual spider 2024-05-03 14:47:54 +10:00
spd_malloc.cc MDEV-26178 spider: delete spd_environ.h 2024-09-10 11:15:18 +10:00
spd_malloc.h MDEV-20179 Server hangs on shutdown during installation of Spider (#1368) 2019-07-30 06:16:48 +09:00
spd_param.cc MDEV-35064 Reduce the default spider connect retry counts to 2 2024-11-27 10:25:14 +11:00
spd_param.h MDEV-27643 Spider: remove #ifdef HA_CAN_BULK_ACCESS 2024-09-10 11:19:19 +10:00
spd_ping_table.cc MDEV-28526 Spider: remove conn_kind member variables 2025-01-22 11:20:06 +11:00
spd_ping_table.h Merge 10.2 into 10.3 2019-05-14 17:18:46 +03:00
spd_sys_table.cc MDEV-34716 spider: some trivial cleanups and documentation 2024-10-15 11:04:27 +11:00
spd_sys_table.h Merge branch '10.4' into 10.5 2024-04-16 11:04:14 +02:00
spd_table.cc MDEV-35807 Case-insensitive wrappers in spider 2025-02-26 15:46:05 +11:00
spd_table.h MDEV-34348: my_hash_get_key fixes 2024-11-23 08:14:22 -07:00
spd_trx.cc MDEV-35807 Removed an unused function spider_cmp_trx_alter_table 2025-02-26 15:46:04 +11:00
spd_trx.h MDEV-35807 Removed an unused function spider_cmp_trx_alter_table 2025-02-26 15:46:04 +11:00
spd_udf.cc MDEV-35735: UBSAN: spider udf functions mismatch with UDF defination 2025-01-12 13:40:18 +11:00
spd_udf.def MDEV-4438 - Spider storage engine 2013-06-27 15:18:48 +04:00
spd_udf.h MDEV-35735: UBSAN: spider udf functions mismatch with UDF defination 2025-01-12 13:40:18 +11:00
spider.cnf Unify config syntax in default files 2020-08-01 10:31:41 +10:00