Bug #53819 assert in my_seek, concurrent workload
Submitted: 19 May 2010 17:42 Modified: 19 May 2010 17:42
Reporter: Matthias Leich Email Updates:
Status: Analyzing Impact on me:
None 
Category:MySQL Server: Partitions Severity:S3 (Non-critical)
Version:mysql-next-mr-wl3561 OS:Any
Assigned to: Assigned Account CPU Architecture:Any
Tags: RQG

[19 May 2010 17:42] Matthias Leich
Description:
The assert happens in my_seek.c line 57:
  /*
      Make sure we are using a valid file descriptor!
  */
  DBUG_ASSERT(fd != -1); <------------

RQG test with 10 concurrent sessions.

Result on mysql-next-mr-wl3561 revno: 3135 2010-04-28
-----------------------------------------------------
# 2010-05-14T22:25:11 #6  0x00007feb0461af09 in __assert_fail () from /lib/libc.so.6
# 2010-05-14T22:25:11 #7  0x0000000000b53d6f in my_seek (fd=-1, pos=0, whence=2, MyFlags=0)
# 2010-05-14T22:25:11     at my_seek.c:57
# 2010-05-14T22:25:11 #8  0x0000000000b5519a in init_io_cache (info=0x7feaf4979a90, file=-1,
# 2010-05-14T22:25:11     cachesize=262108, type=READ_CACHE, seek_offset=0, use_async_io=1 '\001',
# 2010-05-14T22:25:11     cache_myflags=16) at mf_iocache.c:209
# 2010-05-14T22:25:11 #9  0x0000000000a86f23 in mi_repair (param=0x7feaf49797b0,
# 2010-05-14T22:25:11     info=0x7feae805b338, name=0x7feaf4979500 "./testdb_N/t1_part1_N#P#p2",
# 2010-05-14T22:25:11     rep_quick=0) at mi_check.c:1557
# 2010-05-14T22:25:11 #10 0x0000000000a6d2fe in ha_myisam::repair (this=0x7feae80a18f8,
# 2010-05-14T22:25:11     thd=0x7feaf001e458, param=@0x7feaf49797b0, do_optimize=false)
# 2010-05-14T22:25:11     at ha_myisam.cc:1057
# 2010-05-14T22:25:11 #11 0x0000000000a6dbb3 in ha_myisam::repair (this=0x7feae80a18f8,
# 2010-05-14T22:25:11     thd=0x7feaf001e458, check_opt=0x7feaf00209c8) at ha_myisam.cc:932
# 2010-05-14T22:25:11 #12 0x00000000008199dd in handler::ha_repair (this=0x7feae80a18f8,
# 2010-05-14T22:25:11     thd=0x7feaf001e458, check_opt=0x7feaf00209c8) at handler.cc:3166
# 2010-05-14T22:25:11 #13 0x000000000082b0dc in handle_opt_part (thd=0x7feaf001e458,
# 2010-05-14T22:25:11     check_opt=0x7feaf00209c8, file=0x7feae80a18f8, flag=4)
# 2010-05-14T22:25:11     at ha_partition.cc:1011
# 2010-05-14T22:25:11 #14 0x000000000082b466 in ha_partition::handle_opt_partitions (
# 2010-05-14T22:25:11     this=0x7feae80b6288, thd=0x7feaf001e458, check_opt=0x7feaf00209c8, flag=4)
# 2010-05-14T22:25:11     at ha_partition.cc:1166
# 2010-05-14T22:25:11 #15 0x000000000082b678 in ha_partition::repair (this=0x7feae80b6288,
# 2010-05-14T22:25:11     thd=0x7feaf001e458, check_opt=0x7feaf00209c8) at ha_partition.cc:941
# 2010-05-14T22:25:11 #16 0x00000000008199dd in handler::ha_repair (this=0x7feae80b6288,
# 2010-05-14T22:25:11     thd=0x7feaf001e458, check_opt=0x7feaf00209c8) at handler.cc:3166
# 2010-05-14T22:25:11 #17 0x0000000000849381 in mysql_admin_table (thd=0x7feaf001e458,
# 2010-05-14T22:25:11     tables=0x3496438, check_opt=0x7feaf00209c8,
# 2010-05-14T22:25:11     operator_name=0xd230ed "repair", lock_type=TL_WRITE,
# 2010-05-14T22:25:11     open_for_modify=false, no_warnings_for_error=false, extra_open_options=32,
# 2010-05-14T22:25:11     prepare_func=0x838924 <prepare_for_repair>,
# 2010-05-14T22:25:11     operator_func=0x8199a2 <handler::ha_repair(THD*, st_ha_check_opt*)>,
# 2010-05-14T22:25:11     view_operator_func=0) at sql_table.cc:4890
# 2010-05-14T22:25:11 #18 0x000000000084a7a1 in mysql_repair_table (thd=0x7feaf001e458,
# 2010-05-14T22:25:11     tables=0x3496438, check_opt=0x7feaf00209c8) at sql_table.cc:5163
# 2010-05-14T22:25:11 #19 0x00000000006d370a in mysql_execute_command (thd=0x7feaf001e458)
# 2010-05-14T22:25:11     at sql_parse.cc:2980
# 2010-05-14T22:25:11 #20 0x00000000006d929b in mysql_parse (thd=0x7feaf001e458,
# 2010-05-14T22:25:11     inBuf=0x3496328 "REPAIR  TABLE testdb_N . t1_part1_N", length=35,
# 2010-05-14T22:25:11     found_semicolon=0x7feaf49849f8) at sql_parse.cc:5865
# 2010-05-14T22:25:11 #21 0x00000000006d9e77 in dispatch_command (command=COM_QUERY,
# 2010-05-14T22:25:11     thd=0x7feaf001e458, packet=0x7feaf000d529 "", packet_length=38)
# 2010-05-14T22:25:11     at sql_parse.cc:1088
# 2010-05-14T22:25:11 #22 0x00000000006db3a1 in do_command (thd=0x7feaf001e458) at sql_parse.cc:774
# 2010-05-14T22:25:11 #23 0x00000000006c8f00 in do_handle_one_connection (thd_arg=0x7feaf001e458)
# 2010-05-14T22:25:11     at sql_connect.cc:1188
# 2010-05-14T22:25:11 #24 0x00000000006c8fc5 in handle_one_connection (arg=0x7feaf001e458)
# 2010-05-14T22:25:11     at sql_connect.cc:1127
# 2010-05-14T22:25:11 #25 0x00007feb052433ba in start_thread () from /lib/libpthread.so.0
# 2010-05-14T22:25:11 #26 0x00007feb046d4fcd in clone () from /lib/libc.so.6
# 2010-05-14T22:25:11 #27 0x0000000000000000 in ?? ()
....
stack_bottom = 0x7feaf49850d0 thread_stack 0x40000
/data0/mleich/mysql-next-mr-wl3561/sql/mysqld(my_print_stacktrace+0x32)[0xb7b8fe]
/data0/mleich/mysql-next-mr-wl3561/sql/mysqld(handle_segfault+0x2a6)[0x6be185]
/lib/libpthread.so.0[0x7feb0524b080]
/lib/libc.so.6(gsignal+0x35)[0x7feb04621fb5]
/lib/libc.so.6(abort+0x183)[0x7feb04623bc3]
/lib/libc.so.6(__assert_fail+0xe9)[0x7feb0461af09]
/data0/mleich/mysql-next-mr-wl3561/sql/mysqld(my_seek+0xa3)[0xb53d6f]
/data0/mleich/mysql-next-mr-wl3561/sql/mysqld(init_io_cache+0x23b)[0xb5519a]
/data0/mleich/mysql-next-mr-wl3561/sql/mysqld(mi_repair+0x27b)[0xa86f23]
/data0/mleich/mysql-next-mr-wl3561/sql/mysqld(_ZN9ha_myisam6repairEP3THDR17st_mi_check_paramb+0x5be)[0xa6d2fe]
/data0/mleich/mysql-next-mr-wl3561/sql/mysqld(_ZN9ha_myisam6repairEP3THDP15st_ha_check_opt+0x1db)[0xa6dbb3]
/data0/mleich/mysql-next-mr-wl3561/sql/mysqld(_ZN7handler9ha_repairEP3THDP15st_ha_check_opt+0x3b)[0x8199dd]
/data0/mleich/mysql-next-mr-wl3561/sql/mysqld[0x82b0dc]
/data0/mleich/mysql-next-mr-wl3561/sql/mysqld(_ZN12ha_partition21handle_opt_partitionsEP3THDP15st_ha_check_optj+0x2fa)[0x82b466]
/data0/mleich/mysql-next-mr-wl3561/sql/mysqld(_ZN12ha_partition6repairEP3THDP15st_ha_check_opt+0x50)[0x82b678]
/data0/mleich/mysql-next-mr-wl3561/sql/mysqld(_ZN7handler9ha_repairEP3THDP15st_ha_check_opt+0x3b)[0x8199dd]
/data0/mleich/mysql-next-mr-wl3561/sql/mysqld[0x849381]
/data0/mleich/mysql-next-mr-wl3561/sql/mysqld(_Z18mysql_repair_tableP3THDP10TABLE_LISTP15st_ha_check_opt+0xb1)[0x84a7a1]
/data0/mleich/mysql-next-mr-wl3561/sql/mysqld(_Z21mysql_execute_commandP3THD+0x25da)[0x6d370a]
/data0/mleich/mysql-next-mr-wl3561/sql/mysqld(_Z11mysql_parseP3THDPKcjPS2_+0x265)[0x6d929b]
/data0/mleich/mysql-next-mr-wl3561/sql/mysqld(_Z16dispatch_command19enum_server_commandP3THDPcj+0xa40)[0x6d9e77]
/data0/mleich/mysql-next-mr-wl3561/sql/mysqld(_Z10do_commandP3THD+0x22b)[0x6db3a1]
/data0/mleich/mysql-next-mr-wl3561/sql/mysqld(_Z24do_handle_one_connectionP3THD+0x137)[0x6c8f00]
/data0/mleich/mysql-next-mr-wl3561/sql/mysqld(handle_one_connection+0x2d)[0x6c8fc5]
/lib/libpthread.so.0[0x7feb052433ba]
/lib/libc.so.6(clone+0x6d)[0x7feb046d4fcd]

It is rather likely that mysql-next-mr shows the same bug.

How to repeat:
I will upload the RQG grammars which were used.
[19 May 2010 17:51] Matthias Leich
grammars + config + protocol

Attachment: 53819.tgz (application/x-compressed-tar, text), 46.59 KiB.

[19 May 2010 17:54] Matthias Leich
One note:
  WL3561 adds the functionality for transactional locking.
  The RQG grammar used within this test does not generate
  transactional locks.
[6 Oct 2010 13:02] Matthias Leich
I hit the same problem today
mysql-5.5-runtime
revno: 3152 2010-10-04
[27 Dec 2022 1:25] FERRER COUNT
Buy counterfeit money

Ferrer Count is leading & trusted production of banknotes. We use cutting-edge technology to produce notes that look exactly like real notes. As a result, we can assume that the notes we create contain all of the security features found in real notes.

These notes can be used anywhere and also in authorized banks . The reason you can't use it in any banks is that we can't guarantee that it won't be detected because banks have  UV-Light detection, used in spotting fake money. In addition, you can put  our notes to use in places like; GAME HALLS, SHOPPING MALLS, PETROL SHOPS, GAME AND ATTRACTION PARKS, ELECTRONIC SHOPS etc.

BANKNOTES:
Our banknotes are printed on paper made of 79 percent cotton and 21 percent cellulose, which is very different from regular paper. On the front of the banknote, a number of picture elements can be touched to identify them thanks to a unique printing process. A comparison of genuine and counterfeit security features is provided in the guidelines for detecting currency.

FEATURES: 
We ensure that our bills are completely undetected and safe to use in any of the following locations: ATMS, MONEY CHANGERS, STORES, and banks because our notes are percent Undetected.

PREMIUM MEMBERSHIP:
COD is accepted for our Premium Members

WHAT MAKES US DIFFERENT?
our notes are authentic and believe it, you can't find any different from the real notes, we do not distribute our notes to incapables hands

NOTE:

WE DONT SEND OUR SAMPLE AS PICTURE TO AVOID BEEN USED BY AN UNAUTHORIZED PERSON.
WE CAN ALSO SEND YOUR PURCHASE/BANKNOTE THROUGH OUR AUTHORIZED BANK

Contact us via email at drcassidyferrercount@gmail.com
WhatsApp: +639272917359
Tel: +639272917359;