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.
  • MariaDB\ 71.8%
  • C++ 16.4%
  • C 10.4%
  • Shell 0.5%
  • Perl 0.4%
  • Other 0.3%
Find a file
unknown 35945019ea BUG#21206: memory corruption when too many cursors are opened at once
Too many cursors (more than 1024) could lead to memory corruption.
This affects both, stored routines and C API cursors, and the
threshold is per-server, not per-connection.  Similarly, the
corruption could happen when the server was under heavy load
(executing more than 1024 simultaneous complex queries), and this is
the reason why this bug is fixed in 4.1, which doesn't support
cursors.

The corruption was caused by a bug in the temporary tables code, when
an attempt to create a table could lead to a write beyond allocated
space.  Note, that only internal tables were affected (the tables
created internally by the server to resolve the query), not tables
created with CREATE TEMPORARY TABLE.  Another pre-condition for the
bug is TRUE value of --temp-pool startup option, which, however, is a
default.

The cause of a bug was that random memory was overwritten in
bitmap_set_next() due to out-of-bound memory access.


mysys/my_bitmap.c:
  Local 'bitmap_size' is measured in bytes, no need to multiply it by 8.
sql/sql_select.cc:
  Clear the temp_pool_slot bit only if we have set it previously.
2006-07-26 16:23:07 +04: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 Makefile.am: 2006-06-17 15:37:23 +02:00
client Merge igreenhoe@bk-internal.mysql.com:/home/bk/mysql-4.1-maint 2006-07-13 00:33:49 -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 Don't read ~/.my.cnf in mysqldump.test 2006-06-30 04:10:27 +03:00
include Merge bk@192.168.21.1:mysql-4.1 2006-07-13 22:32:18 +05:00
innobase Applied innodb-4.1-ss31 snapshot. 2006-06-06 23:05:10 +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 - Removed obsolete and outdated man page files from the man 2005-10-27 14:51:58 +02:00
merge Makefile.am: 2005-07-05 23:24:48 +02:00
myisam Merge chilla.local:/home/mydev/mysql-4.1-bug19835 2006-07-08 19:27:16 +02:00
myisammrg Added more tests for new UPDATE ... ORDER BY ... LIMIT optimization 2005-10-25 02:27:40 +03:00
mysql-test Bug#21218 Test "mysqlbinlog" fails to execute another program on Windows 2006-07-24 18:12:57 +02:00
mysys BUG#21206: memory corruption when too many cursors are opened at once 2006-07-26 16:23:07 +04:00
ndb Merge orca.ndb.mysql.com:/space_old/pekka/ndb/version/my41 2006-07-15 21:54:47 +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 Bug#19298 mysqld_safe still uses obsolete --skip-locking parameter 2006-06-27 18:07:23 -04:00
sql BUG#21206: memory corruption when too many cursors are opened at once 2006-07-26 16:23:07 +04:00
sql-bench Makefile.am, configure.in: 2005-09-24 15:51:45 +02:00
sql-common Merge bk@192.168.21.1:mysql-4.1 2006-07-13 22:32:18 +05:00
SSL Added missing SSL library (Should be in source distribution) 2003-11-28 12:18:13 +02:00
strings strings/strtod.c : Ensure the definition of "EOVERFLOW" is available. 2006-07-17 19:38:46 +02:00
support-files mysql.spec.sh: 2006-07-19 02:46:48 +02:00
tests Merge bk@192.168.21.1:mysql-4.1 2006-07-20 16:03:21 +05: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 Fix for bug#14221 SSL support breaks going from OpenSSL 0.9.7i to 0.9.8a 2005-11-29 12:15:48 +04:00
zlib Makefile.am: 2005-12-15 02:11:21 -03:00
.bzrignore WL#2928 Date Translation NRE 2006-07-04 17:40:40 +05: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 Increment the version number to 4.1.22, as 4.1.21 is cloned. 2006-07-14 17:55:34 +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.