Yuri, looks like InnoDB was trying to allocate 4 GB + 232 bytes. A major bug in the 64-bit version was fixed in 3.23.52: July 20, 2002: On 64-bit computers updating rows whichcontained the SQL NULL in some column could cause theundo log andthe ordinary log to become corrupt. Fixed in 3.23.52. However, also 32-bit users on Linux have reported somegarbage values sent to the memory allocator. Please upgrade to 3.23.52, and if the bug reappears, compilewith -g -O3, run inside gdb, and when it crashes, do gdb> bt full In 3.23.52 an out-of-memory error intentionally generates a segfault so that we can get a stack trace or a core file. Regards, Heikki
Copied message: .............. I am running version 3.23.51-log (built with -O3) on FreeBSD-5.0-CURRENT on Alpha. InnoDB is on raw disk. After a week of uptime it restarted by itself and the message below was logged. Looks like it was trying to allocate 4GB+0x1E bytes. Machine has 2GB of physical memory + 1GB swap. Database is small: around 1MB. And mysql memory usage was reasonable (150M). 100M was allocated for key_buffer. Could it be related to 64-bits pointer size on this architecture? Any ideas what could have caused the problem? Yuri. my.cnf: <snip> set-variable = innodb_mirrored_log_groups=1 set-variable = innodb_log_files_in_group=3 set-variable = innodb_log_file_size=5M set-variable = innodb_log_buffer_size=8M innodb_flush_log_at_trx_commit=1 innodb_log_archive=0 set-variable = innodb_buffer_pool_size=16M set-variable = innodb_additional_mem_pool_size=2M set-variable = innodb_file_io_threads=4 set-variable = innodb_lock_wait_timeout=50 <snip> -----errorlog------------------------------------------------------------ /usr/local/libexec/mysqld: ready for connections <week passed> 020831 11:57:41 InnoDB: Out of memory in additional memory pool. InnoDB: InnoDB will start allocating memory from the OS. InnoDB: You may get better performance if you configure a bigger InnoDB: value in the MySQL my.cnf file for InnoDB: innodb_additional_mem_pool_size. InnoDB: Fatal error: cannot allocate 4294967528 bytes of InnoDB: memory with malloc! Total allocated memory InnoDB: by InnoDB 33699660 bytes. Operating system errno: 12 InnoDB: Cannot continue operation! InnoDB: Check if you should increase the swap file or InnoDB: ulimits of your operating system. InnoDB: On FreeBSD check you have compiled the OS with InnoDB: a big enough maximum process size. 020831 11:57:41 mysqld restarted 020831 11:57:43 InnoDB: Database was not shut down normally. InnoDB: Starting recovery from log files... InnoDB: Starting log scan based on checkpoint at InnoDB: log sequence number 0 2705349 InnoDB: Doing recovery: scanned up to log sequence number 0 2705349 InnoDB: Last MySQL binlog file position 0 535499, file name ./s2-bin.101 020831 11:57:43 InnoDB: Flushing modified pages from the buffer pool... 020831 11:57:43 InnoDB: Started --------------------------------------------------------------------- Before posting, please check: http://www.mysql.com/manual.php (the manual) http://lists.mysql.com/ (the list archive) To request this thread, e-mail <[EMAIL PROTECTED]> To unsubscribe, e-mail <[EMAIL PROTECTED]> Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php