mariadb/mysys
kroki/tomash@moonlight.intranet 1917a99270 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.
2006-07-27 13:59:15 +04:00
..
.cvsignore
array.c
base64.c Merge 2005-11-03 11:50:38 +01:00
ChangeLog Fix skipp -> skip once and for all. 2004-06-03 11:52:54 -05:00
charset-def.c ctype_uca.result, ctype_uca.test: 2005-12-23 14:20:00 +04:00
charset.c Merge mysql.com:/usr/home/bar/mysql-4.1 2005-10-20 11:12:34 +05:00
checksum.c
default.c Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1 2006-05-29 09:06:06 +02:00
default_modify.c many warnings (practically safe but annoying) corrected 2006-01-03 17:54:54 +01:00
errors.c fix compilation failure on sunfire280 2005-03-01 01:38:04 +03:00
hash.c Merge mysql.com:/opt/local/work/mysql-4.1-7209-new 2006-01-04 17:49:45 +03:00
list.c Merge mysql.com:/home/jimw/my/mysql-4.1-clean 2005-08-15 12:37:45 -07:00
make-ccc
make-conf.c
Makefile.am Fix for Bug#18246 "compilation error with tcp_wrapper" 2006-06-21 02:23:18 +03:00
md5.c
mf_brkhant.c
mf_cache.c
mf_dirname.c BUG#20622: Fix one-byte buffer overrun in IM directory string handling. 2006-06-23 14:50:02 +02:00
mf_fn_ext.c Fixed Bug#19479:mysqldump creates invalid dump. 2006-06-01 12:34:44 +03:00
mf_format.c Review of code pushed since last 5.0 pull: 2005-10-06 17:54:43 +03:00
mf_getdate.c Fix build using --without-server. (Bug #11680) 2005-08-23 11:25:24 -07:00
mf_iocache.c Merge mysql.com:/home/mydev/mysql-4.1-bug11527 2006-02-16 19:51:09 +01:00
mf_iocache2.c SECURITY FIX 2006-05-01 22:10:50 -04:00
mf_keycache.c Merge rurik.mysql.com:/home/igor/dev/mysql-4.1-2 2006-04-19 18:08:15 -07:00
mf_keycaches.c remove the entry from the list, before freeing 2005-01-24 18:38:46 +01:00
mf_loadpath.c
mf_pack.c Bug#5439 : mysql_server_init() crashes if ShiftJIS path is passed 2005-08-08 19:52:30 +05:00
mf_path.c
mf_qsort.c
mf_qsort2.c
mf_radix.c
mf_same.c
mf_sort.c
mf_soundex.c Fix skipp -> skip once and for all. 2004-06-03 11:52:54 -05:00
mf_strip.c
mf_tempdir.c
mf_tempfile.c merge 2005-03-03 23:07:20 +01:00
mf_unixpath.c
mf_util.c
mf_wcomp.c
mf_wfile.c Fix skipp -> skip once and for all. 2004-06-03 11:52:54 -05:00
mulalloc.c
my_access.c Merge mysql.com:/home/jimw/my/mysql-4.1-clean 2005-08-31 19:12:16 -07:00
my_aes.c
my_alarm.c
my_alloc.c A fix and a test case for Bug#6513 "Test Suite: Values inserted by using 2005-09-22 02:11:21 +04:00
my_append.c
my_bit.c
my_bitmap.c BUG#21206: memory corruption when too many cursors are opened at once 2006-07-27 13:59:15 +04:00
my_chsize.c post-review fixes 2005-05-16 01:54:02 +04:00
my_clock.c
my_compress.c
my_conio.c Small update for lock functions used in my_cgets() 2005-09-20 20:03:51 +04:00
my_copy.c Avoiding conditional jump on uninitialized variable (BUG#14904). 2005-12-27 02:01:58 +02:00
my_crc32.c First step of implementation of WL#1518 "make bundled zlib 2004-07-21 17:36:26 -07:00
my_create.c Fixes bug #13377. my_open() & my_create() functions changed to use 2005-11-14 16:01:10 +03:00
my_delete.c Fixing BUG#17719 "Delete of binlog files fails on Windows" 2006-06-28 10:21:01 +04:00
my_div.c
my_dup.c
my_error.c many warnings (practically safe but annoying) corrected 2006-01-03 17:54:54 +01:00
my_file.c
my_fopen.c Cleanup during review of new code 2005-06-21 18:18:58 +03:00
my_fstream.c Merge with 4.0 for 4.1 release 2004-10-06 19:14:33 +03:00
my_gethostbyname.c assert.h needed for my_dbug.h now is included in my_dbug.h, where it for 2004-06-10 23:58:39 +04:00
my_gethwaddr.c Review of all code pushed since last review 2004-10-20 01:28:42 +03:00
my_getopt.c Merge ua141d10.elisa.omakaista.fi:/home/my/bk/mysql-4.1 2005-10-27 23:43:20 +03:00
my_getsystime.c
my_getwd.c BUG#10687 - Merge engine fails under Windows 2005-05-23 12:31:22 -05:00
my_handler.c Merge 4.1 - 5.0 2005-10-28 02:36:19 +03:00
my_init.c Bug #18275 invalid file descriptor causes crash on windows 2006-06-05 13:37:06 -05:00
my_largepage.c Forward port of HugeTLB, InnoDB doublewrite and checksums patches to 5.0 2004-12-14 22:26:31 +03:00
my_lib.c BUG#20528 Added missing parenthesis to DBUG_PRINT statement 2006-06-23 11:21:57 -04:00
my_libwrap.c Cleanup to patch for Bug#18246, "compilation error with tcp_wrapper" 2006-06-21 18:35:19 +03:00
my_lock.c Prevent potential problems on 32-Bit machines. 2004-06-25 11:35:37 +02:00
my_lockmem.c
my_lread.c
my_lwrite.c Changed %lx -> 0x%lx (for easier comparison of debug files) 2004-08-23 13:46:51 +03:00
my_malloc.c Fix compilation failures on Windows caused by the patch for Bug#17199. 2006-06-27 14:56:24 +04:00
my_memmem.c Fix a bunch of non-Linux compile failures. 2006-05-02 09:19:54 +02:00
my_messnc.c
my_mkdir.c
my_mmap.c fixes for windows 64-bit compiler warnings 2005-06-13 12:41:15 +02:00
my_net.c
my_netware.c
my_new.cc yassl changeset 2: 2005-04-30 19:48:45 +02:00
my_once.c fixes for windows 64-bit compiler warnings 2005-06-13 12:41:15 +02:00
my_open.c Polishing: get rid of C++-style comments. 2005-11-24 18:27:14 +03:00
my_os2cond.c Reviewing new pushed code 2005-10-12 00:58:22 +03:00
my_os2dirsrch.c
my_os2dirsrch.h
my_os2dlfcn.c
my_os2dlfcn.h0
my_os2file64.c
my_os2mutex.c
my_os2thread.c pthread_handler_decl() changed to be ctags-friendly 2005-10-08 16:39:55 +02:00
my_os2tls.c
my_port.c
my_pread.c Merge with 4.0 for 4.1 release 2004-10-06 19:14:33 +03:00
my_pthread.c Fix wait_timeout (and kill) handling on Mac OS X by cleaning up how 2005-10-11 09:12:12 -07:00
my_quick.c
my_read.c Changed %lx -> 0x%lx (for easier comparison of debug files) 2004-08-23 13:46:51 +03:00
my_realloc.c Building with compile-pentium-valgrind-max (without safemalloc) defines my_free() without flags, 2005-10-13 00:24:14 +02:00
my_redel.c
my_rename.c A fix for Netware. 2005-04-05 13:15:04 +03:00
my_seek.c assert.h needed for my_dbug.h now is included in my_dbug.h, where it for 2004-06-10 23:58:39 +04:00
my_semaphore.c
my_sleep.c my_sleep.c: 2005-01-05 16:35:43 +01:00
my_static.c Fixes during review of new pushed code 2005-07-31 12:49:55 +03:00
my_static.h
my_symlink.c Fixed new bug that caused symlink test to fail 2005-01-18 03:49:39 +02:00
my_symlink2.c myisam/ft_parser.c 2005-03-06 12:31:40 +01:00
my_sync.c Fixed errors found during review 2005-04-06 19:43:35 +03:00
my_thr_init.c Fixes while reviewing new code 2005-05-06 11:39:30 +03:00
my_wincond.c
my_windac.c A fix for Bug#8226 "Cannot connect via shared memory": 2005-03-26 01:21:52 +03:00
my_winsem.c
my_winthread.c pthread_handler_decl() changed to be ctags-friendly 2005-10-08 16:39:55 +02:00
my_write.c Merge mysql.com:/home/mysql_src/mysql-4.0 2005-01-06 21:31:47 +01:00
mysys_priv.h Merge with 4.0 for 4.1 release 2004-10-06 19:14:33 +03:00
ptr_cmp.c s/ha_store_ptr/my_store_ptr/ 2004-11-07 22:39:27 +01:00
queues.c
raid.cc Merge with 4.1 2005-06-07 00:31:53 +03:00
raid2.c
rijndael.c assert.h needed for my_dbug.h now is included in my_dbug.h, where it for 2004-06-10 23:58:39 +04:00
safemalloc.c Fix compilation failures on Windows caused by the patch for Bug#17199. 2006-06-27 14:56:24 +04:00
sha1.c A fix for Bug#13944 "libmysqlclient exporting sha1_result function": 2006-01-11 17:31:52 +03:00
string.c fixes for windows 64-bit compiler warnings 2005-06-13 12:41:15 +02:00
test_charset.c
test_dir.c
test_fn.c
test_xml.c
testhash.c A fix for Bug#7209 "Client error with "Access Denied" on updates 2006-01-04 17:35:30 +03:00
thr_alarm.c locking issues, 2005-12-23 20:50:28 +01:00
thr_lock.c Bug#16986 - Deadlock condition with MyISAM tables 2006-06-26 19:14:35 +02:00
thr_mutex.c Bug#16333 Assertion failure in lock.cc in the sysbench test 2006-02-14 11:34:46 +01:00
thr_rwlock.c
tree.c BUG#18160 - Memory-/HEAP Table endless growing indexes 2006-04-19 15:13:50 +05:00
typelib.c Changed %lx -> 0x%lx (for easier comparison of debug files) 2004-08-23 13:46:51 +03:00