MariaDB server is a community developed fork of MySQL server. Started by core members of the original MySQL team, MariaDB actively works with outside developers to deliver the most featureful, stable, and sanely licensed open SQL server in the industry.
Find a file
istruewing@chilla.local 671575211b Bug#23139 - myisamchk and mysqld crash when trying to access table
A corrupted compressed table could crash the server and
myisamchk.

The data file of an uncompressed table contains just the records.
There is no header in the data file.

However the data file of a compressed table has a header.
The header describes how the table was compressed. This
information is necessary to extract the records from the
compressed data file.

Part of the compressed data file header are the [de]code tables.
They are numeric representations of the Huffman trees used for
coding and decoding. A Huffman tree is a binary tree. Every
node has two childs. A child can be a leaf or a branch. Leaves
contain the decoded value. Branches point to another tree node.

Since the [de]code table is represented as an array of childs,
the branches need to point at a child within the same array.
The corruption of the compressed data file from the bug report
was a couple of branches that pointed outside their array.
This condition had not been correctly checked.

I added some checks for the pointers in the decode tables.
This type of corruption will no longer crash the server or
myisamchk.

No test case. A corrupted compressed table is required.
2006-11-28 15:46:01 +01:00
bdb Fix calls to memset() with arguments out of order. (Bug #9323) 2005-03-22 16:00:02 -08:00
BitKeeper pekka - checkout:get (4.1) 2006-07-04 13:51:35 +02:00
BUILD Merge perch.ndb.mysql.com:/home/jonas/src/mysql-4.1 2006-09-05 15:05:52 +02:00
client Merge bk-internal:/home/bk/mysql-4.1-maint 2006-08-31 21:23:25 -07:00
cmd-line-utils Makefile.am, configure.in: 2005-09-24 15:51:45 +02:00
dbug Makefile.am: 2005-07-05 23:24:48 +02:00
Docs .del-changelog-4.1.xml~8aa496ebed09d868: 2006-05-04 16:16:18 -05:00
extra Merge mysql.com:/M40/push-4.0 into mysql.com:/M41/merge-4.1 2006-01-13 17:45:01 +01:00
heap Bug#9719: DELETE with WHERE on HEAP table just deletes first row of matched 2006-08-02 13:06:59 -04:00
include Merge chilla.local:/home/mydev/mysql-4.1-bug8283 2006-10-09 19:40:16 +02:00
innobase Applied innodb-4.1-ss32 snapshot. 2006-07-26 07:47:29 +04:00
isam Merge a193-229-222-105.elisa-laajakaista.fi:/home/my/bk/mysql-4.0 2005-12-04 15:34:47 +02:00
libmysql Merge bk@192.168.21.1:mysql-4.1 2006-07-13 22:32:18 +05:00
libmysql_r Makefile.am, configure.in: 2005-09-24 15:51:45 +02:00
libmysqld Merge bk@192.168.21.1:mysql-4.1 2006-07-20 16:03:21 +05:00
man Makefile.am, configure.in: 2006-07-28 23:12:40 +02:00
merge Makefile.am: 2005-07-05 23:24:48 +02:00
myisam Bug#23139 - myisamchk and mysqld crash when trying to access table 2006-11-28 15:46:01 +01:00
myisammrg Merge mysql.com:/home/svoj/devel/bk/mysql-4.1-engines 2006-09-28 22:14:31 +05:00
mysql-test Merge chilla.local:/home/mydev/mysql-4.1-bug8283 2006-10-09 19:40:16 +02:00
mysys Merge chilla.local:/home/mydev/mysql-4.1-bug8283 2006-10-09 19:40:16 +02:00
ndb Merge perch.ndb.mysql.com:/home/jonas/src/41-work 2006-09-04 14:45:13 +02:00
netware Merge mysql.com:/Users/kent/mysql/bk/mysql-4.0 2006-07-24 10:59:51 +02:00
os2 Many files: 2005-09-29 02:08:24 +02:00
pstack Makefile.am, configure.in: 2005-09-24 15:51:45 +02:00
regex Many files: 2005-09-29 02:08:24 +02:00
scripts mysql_config.sh: 2006-09-25 00:54:46 +02:00
sql Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1-engines 2006-10-06 15:18:25 +05:00
sql-bench Makefile.am, configure.in: 2005-09-24 15:51:45 +02:00
sql-common Patch for bug#21432 is reverted 2006-09-27 17:49:16 +05:00
SSL Added missing SSL library (Should be in source distribution) 2003-11-28 12:18:13 +02:00
strings Bug#19741 segfault with cp1250 charset + like + primary key + 64bit os 2006-07-25 17:27:53 +05:00
support-files Merge mysql.com:/Users/kent/mysql/bk/bug17194/my41-bug17194 2006-08-24 14:48:22 +02:00
tests Merge zippy.cornsilk.net:/home/cmiller/work/mysql/no-strange-literals/my41-no-strange-literals 2006-08-31 11:30:14 -04:00
tools Makefile.am: 2005-07-05 23:24:48 +02:00
VC++Files Changes to make "sql/sql_locale.cc" compile + link on Windows: 2006-07-17 20:40:41 +02:00
vio BUG#9678: Client library hangs after network communication failure 2006-08-14 20:01:19 +04:00
zlib Makefile.am: 2005-12-15 02:11:21 -03:00
.bzrignore Merge mysql.com:/users/lthalmann/bkroot/mysql-4.1-rpl 2006-09-23 05:58:48 +02:00
.cvsignore Import changeset 2000-07-31 21:29:14 +02:00
acinclude.m4 Bug#18818 configure: No longer finds OpenSSL on Mac OS X 2006-05-12 11:18:06 +02:00
config.guess updated libtool/autoconf files 2006-05-25 11:36:29 -07:00
config.sub updated libtool/autoconf files 2006-05-25 11:36:29 -07:00
configure.in Merge mysql.com:/Users/kent/mysql/bk/mysql-4.0 2006-07-29 17:26:06 +02:00
COPYING - manual.texi will be replaced with a manual written in DocBook/XML. This ChangeSet removes all 2005-04-13 11:51:38 +02:00
depcomp - Applied required modifications for automake 1.5 2002-10-01 21:57:10 +02:00
install-sh install-sh: copy not move like any reasonably modern install does 2004-07-30 18:53:54 +02:00
ltconfig libtool tweaks 2004-02-17 21:46:40 +01:00
ltmain.sh updated libtool/autoconf files 2006-05-25 11:36:29 -07:00
Makefile.am Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-4.1 2005-11-04 01:15:35 +01:00
missing - Applied required modifications for automake 1.5 2002-10-01 21:57:10 +02:00
mkinstalldirs Import changeset 2000-07-31 21:29:14 +02:00
README README: 2006-04-01 04:13:33 +02:00

This is a release of MySQL, a dual-license SQL database server.
MySQL is brought to you by the MySQL team at MySQL AB.

License information can be found in these files:
- For GPL (free) distributions, see the COPYING file.
- For commercial distributions, see the MySQLEULA.txt file.


For further information about MySQL or additional documentation, see:
- The latest information about MySQL: http://www.mysql.com
- The current MySQL documentation: http://dev.mysql.com/doc

Some manual sections of special interest:

- If you are migrating from an older version of MySQL, please read the
  "Upgrading from..." section first!
- To see what MySQL can do, take a look at the features section.
- For installation instructions, see the Installation chapter.
- For future plans, see the TODO appendix.
- For the new features/bugfix history, see the News appendix.
- For the currently known bugs/misfeatures (known errors) see the problems
  appendix.
- For a list of developers and other contributors, see the Credits
  appendix.

A local copy of the MySQL Reference Manual can be found in the Docs
directory in GNU Info format.  You can also browse the manual online or
download it in any of several formats at the URL given earlier in this
file.

************************************************************

IMPORTANT:

Bug or error reports should be sent to http://bugs.mysql.com.