Bug #27529 Slave crashes on lots of updates
Submitted: 29 Mar 2007 16:26 Modified: 10 Apr 2007 12:42
Reporter: Geert Vanderkelen Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Cluster: Replication Severity:S2 (Serious)
Version:5.1 + telco OS:Linux (Linux)
Assigned to: Tomas Ulin CPU Architecture:Any
Tags: ndb, replication

[29 Mar 2007 16:26] Geert Vanderkelen
Description:
The slave crashes doing lots of updates on the master. You can see it best when you set the relay log to a small size like 1M.

How to repeat:
- Using 5.1.15_6.1.5 (reported on 5.1.15_6.1.2)
- Configuration can be pretty basic
- Setup Master/Slave Cluster, with row-based replication
- On Slave use this:

server-id = 2
log-bin = slave-log
binlog-format = row
max-relay-log-size=1M

Backtrace:

Program received signal SIGABRT, Aborted.
[Switching to Thread 1086175584 (LWP 20749)]
0x000000324322e37d in raise () from /lib64/tls/libc.so.6
(gdb) bt
#0 0x000000324322e37d in raise () from /lib64/tls/libc.so.6
#1 0x000000324322faae in abort () from /lib64/tls/libc.so.6
#2 0x0000003243227c31 in __assert_fail () from /lib64/tls/libc.so.6
#3 0x000000000063c43f in lock_tables (thd=0xdc3218, tables=0xe65978, count=Variable "count" is not available.
) at sql_base.cc:6637
#4 0x0000000000645096 in open_and_lock_tables (thd=0xdc3218, tables=0xe65978) at sql_base.cc:3215
#5 0x00000000006849f3 in mysql_delete (thd=0xdc3218, table_list=0xe65978, conds=Variable "conds" is not available.
) at sql_delete.cc:43
#6 0x0000000000619871 in mysql_execute_command (thd=0xdc3218) at sql_parse.cc:3588
#7 0x000000000061c6e5 in mysql_parse (thd=0xdc3218, inBuf=0x40bda420 "DELETE FROM mysql.ndb_binlog_index WHERE File='./ndbsup-2-relay-bin.000005'", length=Variable "length" is not available.
)
at sql_parse.cc:6162
#8 0x000000000070d521 in run_query (thd=0xdc3218, buf=0x40bda420 "DELETE FROM mysql.ndb_binlog_index WHERE File='./ndbsup-2-relay-bin.000005'", end=Variable "end" is not available.
)
at ha_ndbcluster_binlog.cc:239
#9 0x000000000070df84 in ndbcluster_binlog_func (hton=Variable "hton" is not available.
) at ha_ndbcluster_binlog.cc:506
#10 0x00000000006dcfef in binlog_func_foreach (thd=0xdc3218, bfn=0x40bdaa70) at handler.cc:2978
#11 0x00000000006dd100 in ha_binlog_index_purge_file (thd=Variable "thd" is not available.
) at handler.cc:3011
#12 0x000000000068d537 in MYSQL_BIN_LOG::purge_logs (this=0xdfa830, to_log=0xdfb7a4 "./ndbsup-2-relay-bin.000007", included=false, need_mutex=false,
need_update_threads=false, decrease_log_space=0xdfbdd0) at mysql_priv.h:536
#13 0x000000000068d894 in MYSQL_BIN_LOG::purge_first_log (this=0xdfa830, rli=0xdfa820, included=false) at log.cc:2885
#14 0x0000000000758441 in exec_relay_log_event (thd=0xdc3218, rli=0xdfa820) at slave.cc:3490
#15 0x00000000007591e1 in handle_slave_sql (arg=Variable "arg" is not available.
) at slave.cc:2367
#16 0x0000003243b060aa in start_thread () from /lib64/tls/libpthread.so.0
#17 0x00000032432c5b43 in clone () from /lib64/tls/libc.so.6
#18 0x0000000000000000 in ?? ()

Suggested fix:
Fix already available.
[29 Mar 2007 16:28] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/23339

ChangeSet@1.2451, 2007-03-29 18:42:00+02:00, tomas@whalegate.ndb.mysql.com +1 -0
  Bug #27529: Slave crashes on lots of updates
  - do not try to perge binlog when purge comes from slave, it never purges binlog anyways
[5 Apr 2007 14:01] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/23901

ChangeSet@1.2131, 2007-04-05 16:15:27+02:00, tomas@whalegate.ndb.mysql.com +1 -0
  Bug#27529 Slave crashes on lots of updates
  - do not execute ndb purge for relay logs
[10 Apr 2007 12:42] Jon Stephens
Thank you for your bug report. This issue has been committed to our source repository of that product and will be incorporated into the next release.

If necessary, you can access the source repository and build the latest available version, including the bug fix. More information about accessing the source trees is available at

    http://dev.mysql.com/doc/en/installing-source.html

Documented bugfix in 5.1.18, telco-6.1.16, and telco-6.2.1 changelogs.