diff options
author | Mattias Jonsson <mattias.jonsson@sun.com> | 2010-03-04 12:09:09 +0100 |
---|---|---|
committer | Mattias Jonsson <mattias.jonsson@sun.com> | 2010-03-04 12:09:09 +0100 |
commit | e46d120e8ef7de8660d10a96f8cfee47e8836b53 (patch) | |
tree | 192b9147cfa1de054d482806c80fa69dd6b55e62 /sql/ha_partition.cc | |
parent | ae3e094191d2d48c5468a6fd8e09a54e687cb3e8 (diff) | |
download | mariadb-git-e46d120e8ef7de8660d10a96f8cfee47e8836b53.tar.gz |
Bug#48229: group by performance issue of partitioned table
Problem was block_size on partitioned tables was not set,
resulting in keys_per_block was not correct which affects
the cost calculation for read time of indexes (including
cost for group min/max).Which resulted in a bad optimizer
decision.
Fixed by setting stats.block_size correctly.
mysql-test/r/partition_range.result:
Bug#48229: group by performance issue of partitioned table
Added result
mysql-test/t/partition_range.test:
Bug#48229: group by performance issue of partitioned table
Added test
sql/ha_partition.cc:
Bug#48229: group by performance issue of partitioned table
Added missing assignment of stats.block_size.
Diffstat (limited to 'sql/ha_partition.cc')
-rw-r--r-- | sql/ha_partition.cc | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sql/ha_partition.cc b/sql/ha_partition.cc index b854e270029..36bd90e3237 100644 --- a/sql/ha_partition.cc +++ b/sql/ha_partition.cc @@ -5053,6 +5053,7 @@ int ha_partition::info(uint flag) file= m_file[handler_instance]; file->info(HA_STATUS_CONST); + stats.block_size= file->stats.block_size; stats.create_time= file->stats.create_time; ref_length= m_ref_length; } |