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.
Portions of this website are copyright © 2001, 2002 The PHP Group
Page generated in 0.051 sec. using MySQL 8.4.7-u6-cloud
Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the
respective copyright holders.
It is not reviewed in advance
by Oracle and does not necessarily represent the opinion of
Oracle or any other party.
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.