Hi,

I'm trying to load a large table with 7 million records, 50 columns and
27 indexes into an innodb table. Works fine for MyISAM. Compressed size
of the data file is about 280MB (830MB uncompressed) and 1.5 GB for the
index file. Platform is RedHat Linux 6.2 with kernel 2.2.16-3 and MySQL
is 3.23.37 compiled with egcs-2.91.66 for i686 from the standard MySQL
source RPM. The machine is a dual CPU Pentium machine with 512 MB RAM
and 2 IDE drives (30GB and 40GB).

For the InnoDB tables I have 6 data files with 1GB on 2 disks and 3 log
files a 50MB. I've also tried it with 5 log files a 1.5GB.

>From /etc/my.cnf:

    #
    # Innobase options
    #
    innodb_data_file_path =
    
vol1/ibdata/ibdata00:1024M;vol2/ibdata/ibdata01:1024M;vol1/ibdata/ibdata02:1024M;vol2/ibdata/ibdata03:1024M;vol1/ibdata/ibdata04:1024M;vol2/ibdata/ibdata05:1024M
    innodb_data_home_dir = /
    set-variable = innodb_mirrored_log_groups=1
    innodb_log_group_home_dir = /vol2/iblogs
    set-variable = innodb_log_files_in_group=3
    set-variable = innodb_log_file_size=50M
    set-variable = innodb_log_buffer_size=8M
    innodb_flush_log_at_trx_commit=1
    innodb_log_arch_dir = /vol2/iblogs
    innodb_log_archive=0
    set-variable = innodb_buffer_pool_size=400M
    set-variable = innodb_additional_mem_pool_size=20M
    set-variable = innodb_file_io_threads=4
    set-variable = innodb_lock_wait_timeout=50


Tried to load it with LOAD DATA INFILE from a FIFO and to convert it
from a MyISAM table with ALTER TABLE foo TYPE=innodb;. Both produced the
same result.

After some time MySQL dies and then the rollback begins.

This is what I see in the .err file:


    Innobase: Assertion failure in thread 3076 in file ibuf0ibuf.c line
    2264
    Innobase: we intentionally generate a memory trap.
    Innobase: Send a bug report to [EMAIL PROTECTED]
    mysqld got signal 11;
    The manual section 'Debugging a MySQL server' tells you how to use a
    stack trace and/or the core file to produce a readable backtrace
    that may
    help in finding out why mysqld died.
    Attempting backtrace. You can use the following information to find
    out
    where mysqld died.  If you see no messages after this, something
    went
    terribly wrong...
    Cannot determine thread, ebp=0xbf3ff070, backtrace may not be
    correct.
    Stack range sanity check OK, backtrace follows:
    0x823244a
    0x81700fb
    0x8170a1e
    0x81a5989
    0x81c13a8
    0x8160006
    0x8230856
    0x825736a
    New value of ebp failed sanity check, terminating backtrace!
    Ibuf insert fails; page free 26, dtuple size 28
    Bitmap bits 3


Is there a way of turning the transactional logging off during the load
of a table? I know that I'm out on my own then but this table is loaded
only every once in a while.

Am I running out of space on the log/or data files?

Is there a way of turning the innobase logging up?

Any help is highly appreciated.

-- 
Frank Schröder  <[EMAIL PROTECTED]>

    AirFlash Engineering Europe
          www.airflash.com
            AirFlash Inc.

Reply via email to