Bug #930 Restriction of merge table size when using query caching

Submitted: 25 Jul 2003 23:24 Modified: 30 Jul 2003 8:26
Reporter: Scott Muller Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: MyISAM storage engine Severity:S3 (Non-critical)
Version:4.0.12-max-log OS:Linux (Redhat 8.0)
Assigned to: Oleksandr Byelkin CPU Architecture:Any

[25 Jul 2003 23:24] Scott Muller
Description:
There appears to be a limit of 255 member tables in a merge table when you have query_cache_size > 0. If query caching is off and number of table > 255 there are no problems. If query caching is on and number of member tables <= 255 - no probs. It is when query_cache_size > 0 and the unioned tables of the merge table number >= 256 that the connection dies with a SIGNAL 11.

How to repeat:
1) Create a merge table (say 'tmerge') with 255 member tables
2) Set query_cache_size > 0 (say 1M)
3) query merge table (eg SELECT COUNT(*) FROM tmerge;):

mysql> select count(*) from tmerge;
+----------+
| count(*) |
+----------+
|  5463827 |
+----------+

4) Create tmerge with > 255 tables
5) Repeat query:

mysql> select count(*) from tmerge;
ERROR 2013: Lost connection to MySQL server during query
[29 Jul 2003 16:13] Scott Muller
I have uploaded a PHP script to generate the tables. Just enter user and password in the appropriate lines.
[29 Jul 2003 16:14] Scott Muller
Generate merge table

Attachment: mergetest.php (application/octet-stream, text), 933 bytes.

[30 Jul 2003 1:24] Lenz Grimmer
Sanja, could you take a look at this please?
[30 Jul 2003 5:03] Oleksandr Byelkin
ChangeSet 
  1.1552 03/07/30 14:59:56 bell@sanja.is.com.ua +3 -0 
  support of more then 255 tables dependence in query cache (fixed BUG#930)

Portions of this website are copyright © 2001, 2002 The PHP Group

Page generated in 0.040 sec. using MySQL 8.4.7-u6-cloud

Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the respective copyright holders.
It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.