| Bug #26773 | Possible Memory Leak with Archive Tables | ||
|---|---|---|---|
| Submitted: | 1 Mar 2007 23:16 | Modified: | 19 Nov 2007 15:36 |
| Reporter: | Chris Coyle | ||
| Status: | Analyzing | ||
| Category: | Server: Archive | Severity: | S1 (Critical) |
| Version: | 5.0.27-max | OS: | Linux (Debian 3.1 (kernel 2.6.14.2)) |
| Assigned to: | Shane Bester | Target Version: | |
[1 Mar 2007 23:16]
Chris Coyle
[1 Mar 2007 23:26]
Chris Coyle
Whoops, forgot to inlcude that you'd have to strip out the keys/indexs.. Also, I thought maybe since archive tables are compressed it was holding them open in memory, but flush tables only decreased the memory usage by a miniscule fraction.
[1 Mar 2007 23:42]
Chris Coyle
Error Log
Attachment: mysql.err.log (application/octet-stream, text), 2.17 KiB.
[15 Mar 2007 13:40]
Shane Bester
chris, please upload a compressed file containing output from mysqldump --no-data --all-databases I tried using 20000 simple tables with int's but saw no visible memory leak. I will try complex tables next and check if it's a certain field type that makes the problem more apparent.
[17 Nov 2007 15:13]
Shane Bester
test of 10K rows for 20K tables.
Attachment: bug26773.php (application/octet-stream, text), 2.68 KiB.
[17 Nov 2007 15:17]
Shane Bester
Chris, sorry for a long silence. Yes, I now notice the gradual memory consumption, when using the decimal columns. At least I lose 100kb of memory per second on 5.1.21 with the above script. I'll test for a while long and see how it fairs, then update here again.
[17 Nov 2007 15:27]
Shane Bester
Chris, how large is your table_cache configured to be? does FLUSH TABLES reduce memory? It helped here - so I'm not sure there's a genuine leak.
[18 Nov 2007 10:44]
Shane Bester
I did some tests now with 5.0.50 and found a File handle leak. After flush tables and drop database, the mysqld process still had open the file handle to the <table>.ARZ file. Looking into this closer now.
[19 Nov 2007 15:36]
Chris Coyle
Shane, From what I recall (It's been awhile) flush tables did not free any memory back into the pool, and the table_cache was set to 30000 Thanks, - Chris
