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

Reply via email to