diff options
author | Venkata Sidagam <venkata.sidagam@oracle.com> | 2012-10-31 18:32:53 +0530 |
---|---|---|
committer | Venkata Sidagam <venkata.sidagam@oracle.com> | 2012-10-31 18:32:53 +0530 |
commit | 48cbd14165a2d3d4d5c33fd7a4c9ad198dee5dd3 (patch) | |
tree | 55f817bcf3a56b2e1f90b7ce44bcca23144c5da2 /libmysql | |
parent | 23dc49cd3bdf1f86639a29dafb800c8e11113b25 (diff) | |
download | mariadb-git-48cbd14165a2d3d4d5c33fd7a4c9ad198dee5dd3.tar.gz |
BUG#13556441: CHECK AND REPAIR TABLE SHOULD BE MORE ROBUST [4]
Problem description:
mysql server crashes when we run repair table on currupted table.
Analysis:
The problem with this bug seem to be key_reflength out of bounds
(186 according to debugger). We read this value from meta-data
segment of .MYI file while doing mi_open().
If you look into _mi_kpointer() you can see that the upper limit
for key_reflength is 7.
Solution:
In mi_open() there is a line like:
if (share->base.keystart > 65535 || share->base.rec_reflength > 8)
we should verify key_reflength here as well.
Diffstat (limited to 'libmysql')
0 files changed, 0 insertions, 0 deletions