Hello mysql,

  I've recently tried to do a test of mysqld with big tables (>4GB) on
  linux 2.4 mysql 3.23.30

  1) The strange thing is  even without setting up max_rows  got a
  table to grow for more than 4Gb with insert test. Is this possible ?
  (May be you use special pointers for static rows, there position is
  counted by multiplying an offset by a row size). Anyway as I
  remember I hit 4GB limit then doing the same test in 3.23.29
  GLBC used is 2.1.3 from SUSE distribution.

  2)Both times (with max_rows=1000000000 and with no maxrows) I got
  mysql to hit some limit.

drwxrw----   2 mysql    daemon       4096 Jan 11 12:51 .
drwxr-xr-x  19 mysql    daemon       4096 Jan 11 12:50 ..
-rw-rw----   1 mysql    daemon   6609670144 Jan 11 13:23 bench1.MYD
-rw-rw----   1 mysql    daemon   126694400 Jan 11 13:21 bench1.MYI
-rw-rw----   1 mysql    daemon       8622 Jan 11 12:51 bench1.frm


 mysql was showing the following status:

ruby:/spylog/db/test # mysqladmin processlist | grep -v Sleep
+----+------+-----------+------+---------+------+--------+------------------------------------------------------------------------------------------------------+
| Id | User | Host      | db   | Command | Time | State  | Info                        
|                                                                         |
+----+------+-----------+------+---------+------+--------+------------------------------------------------------------------------------------------------------+
| 2  | root | localhost | test | Query   | 224  | update | insert into bench1 values 
|(31030041,31030041,31030041,'ABCDEFGHIJ'),(31030042,31030042,31030042,'ABC |
| 6  | root | localhost |      | Query   | 0    |        | show processlist            
|                                                                         |
+----+------+-----------+------+---------+------+--------+------------------------------------------------------------------------------------------------------+

and the query was unable to be killed.

I connected to this process by GDB and looked the followings:

/spylog/db/test/11303: No such file or directory.
Attaching to program: /usr/local/mysql/libexec/mysqld, Thread 11303
0x8143211 in __libc_nanosleep ()
(gdb) bt
#0  0x8143211 in __libc_nanosleep ()
#1  0x81431ad in __sleep (seconds=60) at ../sysdeps/unix/sysv/linux/sleep.c:82
#2  0x8101ca1 in my_write (Filedes=9, Buffer=0x820bc01 ' ' <repeats 164 times>, 
Count=164, MyFlags=36) at my_write.c:55
#3  0x81090ae in my_raid_write (fd=9, 
    Buffer=0x820bbd0 "Ü\023\200ý\001\023\200ý\001\023\200ý\001ABCDEFGHIJ", ' ' 
<repeats 177 times>..., Count=213, MyFlags=36)
    at raid.cc:206
#4  0x80e94e2 in _mi_write_static_record (info=0x820c310, 
    record=0x820bbd0 "Ü\023\200ý\001\023\200ý\001\023\200ý\001ABCDEFGHIJ", ' ' 
<repeats 177 times>...) at mi_statrec.c:69
#5  0x80ef03e in mi_write (info=0x820c310, 
    record=0x820bbd0 "Ü\023\200ý\001\023\200ý\001\023\200ý\001ABCDEFGHIJ", ' ' 
<repeats 177 times>...) at mi_write.c:133
#6  0x80b87f9 in ha_myisam::write_row (this=0x820b848, 
    buf=0x820bbd0 "Ü\023\200ý\001\023\200ý\001\023\200ý\001ABCDEFGHIJ", ' ' <repeats 
177 times>...) at ha_myisam.cc:233
#7  0x809ed09 in write_record (table=0x82103a8, info=0xbf5ffa24) at sql_insert.cc:379
#8  0x809e725 in mysql_insert (thd=0x8208fb0, table_list=0x8209780, fields=@0x8209210, 
values_list=@0x8209144, duplic=DUP_ERROR, 
    lock_type=TL_WRITE_CONCURRENT_INSERT) at sql_insert.cc:231
#9  0x807c661 in mysql_execute_command () at sql_parse.cc:1323
#10 0x807e168 in mysql_parse (thd=0x8208fb0, 
    inBuf=0x6021c018 "insert into bench1 values 
(31030041,31030041,31030041,'ABCDEFGHIJ'),(31030042,31030042,31030042,'ABCDEFGHIJ'),(31030043,31030043,31030043,'ABCDEFGHIJ'),(31030044,31030044,31030044,'ABCDEFGHIJ'),(31030"...,
 length=999961) at sql_parse.cc:2017
#11 0x807aa5f in do_command (thd=0x8208fb0) at sql_parse.cc:652
#12 0x807a0e7 in handle_one_connection (arg=0x8208fb0) at sql_parse.cc:403
#13 0x811fd76 in pthread_start_thread (arg=0xbf5ffe40) at manager.c:241
(gdb) quit

well this may look like not enough space on the disk - but really
there are a lot of space free.

myisamchk afterwards shows the following:

Checking MyISAM file: bench1.MYI
Data records: 31031315   Deleted blocks:       0
myisamchk: warning: Table is marked as crashed
- check file-size
myisamchk: error: Size of indexfile is: 126697472        Should be: 637411328
myisamchk: warning: Size of datafile is: 6609670144       Should be: 6609670095
- check key delete-chain
- check record delete-chain
- check index reference
- check data record references index: 1
myisamchk: error: Can't read indexpage from filepos: 209841152




  

-- 
Best regards,
 Peter                          mailto:[EMAIL PROTECTED]



---------------------------------------------------------------------
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