mariadb/storage/heap
Vladislav Vaintroub 0eae06c430 Bug#473914: mysql_client_test fail with in debug compilaton on windows x64
Reason: inconsistent compilation, federatedx is compiled without SAFEMALLOC
flag, while anything else is compiled with SAFEMALLOC.

As a consequence, my_hash_init used inside federatedx initialization does not
provide correct caller info parameters (file, line) , so they are initialized with 
whatever is on stack. When info about allocated memory is output in
COM_DEBUG command, the server crashes trying to output string starting at
0xcccccccccccccccc.

The fix is to remove SAFEMALLOC  preprocessor flags 
from every CMakeLists.txt, except the top-level one.

Also, SAFEMALLOC is not defined by default now, instead
there is WITH_DEBUG_FULL CMake option which adds 
-DSAFEMALLOC to C and C++ flags in debug compilation. 
This option is off by  default, because 
1) Debug C runtime already has heap debugging builtin with 
 overwrite and leak detection
2)safemalloc considerably slows down the tests.


Note also  that 
- SAFEMALLOC is gone  in MySQL5.5
- On Windows, heap related overflows can also be found using free pageheap utility
(that is also part of application verifier). This is even more efficient if there are no other layers 
on top of Windows heap allocator, e.g  it is most efficient with release version.
2010-12-06 12:52:06 +01:00
..
.cvsignore
_check.c WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
_rectest.c WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
ChangeLog
CMakeLists.txt Bug#473914: mysql_client_test fail with in debug compilaton on windows x64 2010-12-06 12:52:06 +01:00
ha_heap.cc Bug#35111 - Truncate a MyISAM partitioned table does not reset 2009-07-08 17:41:34 +05:30
ha_heap.h Bug#35111 - Truncate a MyISAM partitioned table does not reset 2009-07-08 17:41:34 +05:30
heapdef.h Added support for 'internal temporary tables' in HEAP tables. 2007-07-25 01:58:12 +03:00
hp_block.c WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
hp_clear.c WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
hp_close.c Added support for 'internal temporary tables' in HEAP tables. 2007-07-25 01:58:12 +03:00
hp_create.c Added support for 'internal temporary tables' in HEAP tables. 2007-07-25 01:58:12 +03:00
hp_delete.c Merge mysql.com:/home/svoj/devel/mysql/BUG30590/mysql-5.0-engines 2007-09-13 17:12:46 +05:00
hp_extra.c Merge mysql.com:/home/kent/bk/main/mysql-5.0 2006-12-31 01:32:21 +01:00
hp_hash.c Bug#53445: Build with -Wall and fix warnings that it generates 2010-07-02 15:30:47 -03:00
hp_info.c WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
hp_open.c Added support for 'internal temporary tables' in HEAP tables. 2007-07-25 01:58:12 +03:00
hp_panic.c Merge mysql.com:/home/kent/bk/main/mysql-5.0 2006-12-31 01:32:21 +01:00
hp_rename.c Merge mysql.com:/home/kent/bk/main/mysql-5.0 2006-12-31 01:32:21 +01:00
hp_rfirst.c Merge mysql.com:/home/svoj/devel/mysql/BUG30590/mysql-5.0-engines 2007-09-13 17:12:46 +05:00
hp_rkey.c WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
hp_rlast.c WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
hp_rnext.c Merge mysql.com:/home/svoj/devel/mysql/BUG30590/mysql-5.0-engines 2007-09-13 17:12:46 +05:00
hp_rprev.c WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
hp_rrnd.c WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
hp_rsame.c WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
hp_scan.c WL#3817: Simplify string / memory area types and make things more consistent (first part) 2007-05-10 12:59:39 +03:00
hp_static.c Merge mysql.com:/home/kent/bk/main/mysql-5.0 2006-12-31 01:32:21 +01:00
hp_test1.c Fixed a lot of compiler warnings and errors detected by Forte C++ on Solaris 2007-08-13 16:11:25 +03:00
hp_test2.c Bug#53445: Build with -Wall and fix warnings that it generates 2010-07-02 15:30:47 -03:00
hp_update.c Fix for server bug experienced in Maria (wrong "Truncated incorrect <var_name> 2008-02-18 23:29:39 +01:00
hp_write.c Merge with MySQL 5.1, with following additions: 2009-11-16 21:49:51 +01:00
make-ccc
Makefile.am Fixed compiler and gmake warnings 2010-11-29 11:27:52 +02:00
plug.in MWL#74: Shared libmysqld.so library. 2010-11-17 13:24:20 +01:00