Bug #46578 myisamchk error has incorrect reference to 'myisam_sort_buffer_size'
Submitted: 6 Aug 2009 3:41 Modified: 7 Jan 2013 22:47
Reporter: Roel Van de Paar Email Updates:
Status: Closed Impact on me:
Category:MySQL Server: MyISAM storage engine Severity:S2 (Serious)
Version:5.0+ OS:Any
Assigned to: CPU Architecture:Any

[6 Aug 2009 3:41] Roel Van de Paar
Example output:

shell> myisamchk -rq -t /tmp -vvv /data/table.MYI

- check record delete-chain
- recovering (with sort) MyISAM-table '/data/table.MYI'
Data records: 382000000
- Fixing index 1
myisamchk: error: myisam_sort_buffer_size is too small
MyISAM-table '/data/table.MYI' is not fixed because of errors
Try fixing it by using the --safe-recover (-o), the --force (-f) option or by not using the --quick (-q) flag

Note from Sinisa: Server has both variables, myisam_sort_buffer_size and sort_buffer_size. First one is used for the buffer that is used in "Repair by sort". Second one is used to buffer a filesort. myisamchk does NOT have myisam_sort_buffer_size. myisamchk has ONLY sort_buffer_size, which is used for "Repair by sort".

How to repeat:

Suggested fix:
[6 Aug 2009 3:42] Roel Van de Paar
Also see bug #34681
[7 Jan 2013 22:47] John Russell
Added to changelog for 5.1.67, 5.5.29, 5.6.9: 

A "buffer too small" error message from the myisamchk command
referred to the myisam_sort_buffer_size configuration option, when it
should have referred to sort_buffer_size.