Description:
Hi,
It seems that it is taking up to 2 seconds for the DISCOVER TABLE Event: to happen after a remote (i.e. not the mysqld to do alter) MySQLD gets [ERROR] ./libexec/mysqld: Incorrect information in file: './TABLE_ALTER/t1.frm'
2 Seconds is a life time in the grand scheme of things.
4:10:50 [ERROR] /home/ndbdev/jmiller/builds/libexec/mysqld: Incorrect informati
le: './TABLE_ALTER/t1.frm'
4:10:52 [Note] NDB Binlog: DISCOVER TABLE Event: REPL$TABLE_ALTER/t1
4:10:52 [Note] NDB Binlog: logging ./TABLE_ALTER/t1
nd 3 NdbTransaction's that have not been released
nd 2 NdbReceiver's that have not been released
4:11:07 [Note] NDB Binlog: drop table ./TABLE_ALTER/t1.
4:11:08 [Note] NDB Binlog: DISCOVER TABLE Event: REPL$TABLE_ALTER/t1
4:11:09 [Note] NDB Binlog: logging ./TABLE_ALTER/t1
4:11:09 [Note] NDB Binlog: drop table ./TABLE_ALTER/t1.
4:11:11 [Note] NDB Binlog: DISCOVER TABLE Event: REPL$TABLE_ALTER/t1
4:11:11 [Note] NDB Binlog: logging ./TABLE_ALTER/t1
4:11:22 [ERROR] /home/ndbdev/jmiller/builds/libexec/mysqld: Incorrect informati
le: './TABLE_ALTER/t1.frm'
4:11:24 [Note] NDB Binlog: DISCOVER TABLE Event: REPL$TABLE_ALTER/t1
4:11:24 [Note] NDB Binlog: logging ./TABLE_ALTER/t1
nd 3 NdbTransaction's that have not been released
nd 2 NdbReceiver's that have not been released
4:11:40 [Note] NDB Binlog: drop table ./TABLE_ALTER/t1.
4:11:41 [Note] NDB Binlog: DISCOVER TABLE Event: REPL$TABLE_ALTER/t1
4:11:41 [Note] NDB Binlog: logging ./TABLE_ALTER/t1
4:11:42 [Note] NDB Binlog: drop table ./TABLE_ALTER/t1.
4:11:43 [Note] NDB Binlog: DISCOVER TABLE Event: REPL$TABLE_ALTER/t1
4:11:43 [Note] NDB Binlog: logging ./TABLE_ALTER/t1
4:11:54 [ERROR] /home/ndbdev/jmiller/builds/libexec/mysqld: Incorrect informati
le: './TABLE_ALTER/t1.frm'
4:11:56 [Note] NDB Binlog: DISCOVER TABLE Event: REPL$TABLE_ALTER/t1
4:11:56 [Note] NDB Binlog: logging ./TABLE_ALTER/t1
nd 3 NdbTransaction's that have not been released
nd 2 NdbReceiver's that have not been released
4:12:12 [Note] NDB Binlog: drop table ./TABLE_ALTER/t1.
4:12:13 [Note] NDB Binlog: DISCOVER TABLE Event: REPL$TABLE_ALTER/t1
4:12:13 [Note] NDB Binlog: logging ./TABLE_ALTER/t1
08.err" [readonly] 14485L, 1746293C 14160,1 97%
How to repeat:
Start an update or insert program against one MySQLD. Have to program sleep 3 seconds on error. On a different MySQLD connected to same cluster, alter the table being updated/inserted to and add a column.
Suggested fix:
We should try to get this down to happening under 1 second. (ms would be best)