| Bug #40479 | deleting rows from disk-based cluster after altering table crashes data node | ||
|---|---|---|---|
| Submitted: | 3 Nov 2008 16:26 | Modified: | 3 Nov 2008 20:09 |
| Reporter: | Monty Taylor | Email Updates: | |
| Status: | Verified | Impact on me: | |
| Category: | MySQL Cluster: Disk Data | Severity: | S2 (Serious) |
| Version: | mysql-5.1-telco-6.3 | OS: | Linux |
| Assigned to: | CPU Architecture: | Any | |
| Tags: | 6.3.16, mysql-5.1-telco-6.3 | ||
[3 Nov 2008 20:09]
Jonathan Miller
I will attach a script to reproduce this. I have not taken the time to break it down any from the attached script. Time: Friday 31 October 2008 - 22:18:05 Status: Temporary error, restart node Message: System error, node killed during node restart by other node (Internal error, programming error or missing error message, please report a bug) Error: 2303 Error data: Node 2 killed this node because GCP stop was detected Error object: NDBCNTR (Line: 249) 0x00000002 Program: /data0/cr_autotest/libexec/ndbd Pid: 20321 Trace: ./ndb_2_trace.log.1 Version: mysql-5.1.29 ndb-6.3.19-RC ***EOM***
[3 Nov 2008 20:13]
Jonathan Miller
Reproduction shell scipt
Attachment: test_paggo.sh (application/x-shellscript, text), 778 bytes.

Description: When trying out disk-based data, a tablespace was added, then a table was altered to use it. Then rows were deleted. This resulted in a data node crashing. It is repeatable every time. How to repeat: CREATE TABLE `paggolog` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `priority` varchar(15) NOT NULL DEFAULT '', `category` varchar(255) NOT NULL DEFAULT '', `thread` varchar(100) NOT NULL DEFAULT '', `message` varchar(1000) NOT NULL, `layout` varchar(255) DEFAULT NULL, `timestamp` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `paggologtype` smallint(1) NOT NULL, `secondstimestamp` varchar(23) DEFAULT NULL, `mti` char(4) DEFAULT NULL, `transactionflag` char(1) DEFAULT NULL, `checked` date DEFAULT NULL, PRIMARY KEY (`id`), KEY `paggolog_timestamp_idx` (`timestamp`), KEY `paggolog_mti_idx` (`mti`), KEY `paggolog_checked_idx` (`checked`) ) ENGINE=ndbcluster DEFAULT CHARSET=latin1 *** Insert rows here **** mysql> select count(*) from paggolog; +----------+ | count(*) | +----------+ | 816118 | +----------+ 1 row in set (0,02 sec) mysql> CREATE LOGFILE GROUP log1 -> ADD UNDOFILE 'undo1.dat' -> ENGINE = NDBCLUSTER; Query OK, 0 rows affected (39,61 sec) mysql> CREATE TABLESPACE ts1 -> ADD DATAFILE 'file1.dat' -> USE LOGFILE GROUP log1 -> INITIAL_SIZE = 12000000000 -> ENGINE = NDBCLUSTER; Query OK, 0 rows affected (56 min 30,55 sec) mysql> mysql> mysql> ALTER TABLE paggolog TABLESPACE ts1 STORAGE DISK ENGINE NDB; mysql> delete from paggolog where id <= 90000 limit 50000; ERROR 1297 (HY000): Got temporary error 4025 'Node failure caused abort of transaction' from NDBCLUSTER *** Note: rows must be inserted before the table is altered to add the rows. Suggested fix: No clue.