Description:
In a setup with all being 5.1.22, except the master that
is 5.1.20, there where a crash running replication tests.
The stack trace looks like
(dbx) threads
> t@1 a l@1 ?() LWP suspended in __pollsys()
t@2 a l@2 io_handler_thread() sleep on 0x1012f08e8 in __lwp_park()
t@3 a l@3 io_handler_thread() sleep on 0x1012f0970 in __lwp_park()
t@4 a l@4 io_handler_thread() sleep on 0x1012f09f8 in __lwp_park()
t@5 a l@5 io_handler_thread() sleep on 0x1012f0a80 in __lwp_park()
t@6 a l@6 srv_lock_timeout_and_monitor_thread() LWP suspended in __pollsys()
t@7 a l@7 srv_error_monitor_thread() LWP suspended in __pollsys()
t@8 a l@8 srv_master_thread() sleep on 0x100cdac68 in __lwp_park()
t@9 b l@9 signal_hand() LWP suspended in ___sigtimedwait()
t@39 b l@39 handle_one_connection() LWP suspended in _read()
o t@40 b l@40 handle_one_connection() signal SIGBUS in __lwp_kill()
t@41 b l@41 handle_one_connection() LWP suspended in _read()
t@42 b l@42 handle_one_connection() sleep on 0x100819140 in __lwp_park()
(dbx) thread t@40
t@40 (l@40) stopped in __lwp_kill at 0xffffffff7dcca124
0xffffffff7dcca124: __lwp_kill+0x0008: bcc,a,pt %icc,__lwp_kill+0x18 ! 0xffffffff7dcca134
(dbx) where
current thread: t@40
=>[1] __lwp_kill(0x0, 0xa, 0xffffffff7ddeae40, 0x1009638ac, 0xffffffff7cf02c00, 0x4), at 0xffffffff7dcca124
[2] write_core(0xa, 0xffffffffffffffff, 0x100, 0x10096b000, 0x10096b, 0x0), at 0x100365538
[3] handle_segfault(0xa, 0x150818, 0x1005da490, 0x100963880, 0x399fb48, 0x2a103), at 0x100213c9c
[4] __sighndlr(0xa, 0x0, 0xffffffff7be3ce00, 0x1002139e4, 0x0, 0x0), at 0xffffffff7dcc9030
---- called from signal handler with signal 10 (SIGBUS) ------
[5] ptr_compare_0(0xffffffff7be3d2cc, 0x1035ad980, 0x1, 0x0, 0x0, 0x1), at 0x10051c190
[6] queue_insert(0xffffffff7be3d298, 0x1035ad970, 0x1, 0x1035ad970, 0x10, 0x0), at 0x10051ccd0
[7] merge_buffers(0xffffffff7be3d460, 0x9240, 0x103565768, 0xffffffff7be3d298, 0xc, 0xffffffffffffffff), at 0x1002ee0f8
[8] merge_index(0x1, 0x1035ada90, 0x120, 0x12, 0x6, 0x18), at 0x1002ee990
[9] filesort(0x103541740, 0x3331, 0x5550, 0xffffffff7be3d5c0, 0x14, 0xc), at 0x1002ec664
[10] mysql_delete(0x103541740, 0x10362b848, 0x40, 0x103543200, 0x2710, 0x0), at 0x1002a91e8
[11] mysql_execute_command(0x103541740, 0x100400, 0x1400, 0x1400, 0x10362b848, 0x10362b848), at 0x100227b24
[12] mysql_parse(0x103541740, 0x10362b750, 0x25, 0xffffffff7be3fd28, 0x103542bf8, 0x1400), at 0x100229a40
[13] dispatch_command(0x100964000, 0x103541740, 0x25, 0x10362b750, 0x100964, 0x1420), at 0x1002206b4
[14] handle_one_connection(0x103541740, 0x1, 0x1007c7780, 0x100967120, 0xffffffff7be3ff48, 0x1420), at 0x10021ec1c
How to repeat:
Patch was applied to test cases, attached to this bug report
BASE=.....
SLAVE_DIR=$BASE/mysql-5.1.22-rc-solaris10-sparc-64bit
MASTER_DIR=$BASE/mysql-5.1.20-beta-solaris10-sparc-64bit
cd $SLAVE_DIR/mysql-test
perl ./mysql-test-run.pl --force --timer --skip-ndbcluster \
--mysqld=--binlog-format=row \
--master-binary=$MASTER_DIR/bin/mysqld --suite=rpl