mariadb/storage/myisammrg
unknown 5b8cdbf4a6 Fixed bug#36006: Optimizer does table scan for SELECT COUNT(*)
for ENGINE=MRG_MYISAM (should be optimized out).

Before WL#3281 MERGE engine had the HA_NOT_EXACT_COUNT flag
unset, and it worked with COUNT optimization as desired.
After the removal of the HA_NOT_EXACT_COUNT flag neither
HA_STATS_RECORDS_IS_EXACT (opposite to former HA_NOT_EXACT_COUNT
flag) nor modern HA_HAS_RECORDS flag were not added to MERGE
table flag mask.

1. The HA_HAS_RECORDS table flag has been set.
2. The ha_myisammrg::records method has been overridden to
   calculate total number of records in underlying tables.



storage/myisammrg/myrg_records.c:
  Fixed bug#36006: Optimizer does table scan for select count(*).
  The myrg_records function has been added to calculate total number
  of records in underlying tables.
include/myisammrg.h:
  Fixed bug#36006: Optimizer does table scan for select count(*).
  The myrg_records function declaration has been added.
mysql-test/r/merge.result:
  Added test case for bug#36006.
mysql-test/t/merge.test:
  Added test case for bug#36006.
storage/myisammrg/CMakeLists.txt:
  Fixed bug#36006: Optimizer does table scan for select count(*).
  New myrg_records.c file has been added.
storage/myisammrg/Makefile.am:
  Fixed bug#36006: Optimizer does table scan for select count(*).
  New myrg_records.c file has been added.
storage/myisammrg/ha_myisammrg.cc:
  Fixed bug#36006: Optimizer does table scan for select count(*).
  The ha_myisammrg::records method has been overridden.
storage/myisammrg/ha_myisammrg.h:
  Fixed bug#36006: Optimizer does table scan for select count(*).
  1. The HA_HAS_RECORDS table flag has been set.
  2. The ha_myisammrg::records method has been overridden.
2008-04-26 02:45:58 +05:00
..
.cvsignore
CMakeLists.txt Fixed bug#36006: Optimizer does table scan for SELECT COUNT(*) 2008-04-26 02:45:58 +05:00
ha_myisammrg.cc Fixed bug#36006: Optimizer does table scan for SELECT COUNT(*) 2008-04-26 02:45:58 +05:00
ha_myisammrg.h Fixed bug#36006: Optimizer does table scan for SELECT COUNT(*) 2008-04-26 02:45:58 +05:00
make-ccc
Makefile.am Fixed bug#36006: Optimizer does table scan for SELECT COUNT(*) 2008-04-26 02:45:58 +05:00
myrg_close.c Bug#30273 - merge tables: Can't lock file (errno: 155) 2007-12-11 15:32:10 +01:00
myrg_create.c Fixed a lot of compiler warnings and errors detected by Forte C++ on Solaris 2007-08-13 16:11:25 +03:00
myrg_def.h
myrg_delete.c
myrg_extra.c Bug#26379 - Combination of FLUSH TABLE and REPAIR TABLE 2007-11-15 20:25:43 +01:00
myrg_info.c
myrg_locking.c BUG#29806 - binlog_innodb.test creates a server log 2007-07-25 19:56:17 +05:00
myrg_open.c Bug#30273 - merge tables: Can't lock file (errno: 155) 2007-12-11 15:32:10 +01:00
myrg_panic.c
myrg_queue.c
myrg_range.c
myrg_records.c Fixed bug#36006: Optimizer does table scan for SELECT COUNT(*) 2008-04-26 02:45:58 +05:00
myrg_rfirst.c
myrg_rkey.c
myrg_rlast.c
myrg_rnext.c
myrg_rnext_same.c
myrg_rprev.c
myrg_rrnd.c
myrg_rsame.c
myrg_static.c
myrg_update.c
myrg_write.c
plug.in