Description:
if i don't create tablespace on ndbcluster, all is ok.
when i created a TABLESPACE, and restart the ndb data node, the bug will be occur.
the same steps, on linux(centos) is ok, on windows(win10 pro and win server 2008) can reproduce the bug.
on ndb_mgm's error message:
Node 1: Forced node shutdown completed. Occured during startphase 1. Caused by error 2353: 'Insufficent nodes for system restart(Restart error). Temporary error, restart node'.
on data node, error log message:
Time: Wednesday 8 August 2018 - 11:39:12
Status: Permanent error, external action needed
Message: Invalid parameter for file (Configuration error)
Error: 2812
Error data: TSMAN: File system close failed. OS errno: 6
Error object: TSMAN (Line: 3908) 0x00000002
Program: ndbmtd
Pid: 6648 thr: 1
Version: mysql-5.7.23 ndb-7.6.7
Trace file name: ndb_1_trace.log.1_t1
Trace file path: D:\\mysql-cluster\\node_dir\\ndb_node1\ndb_1_trace.log.1 [t1..t4]
***EOM***
follow content is the config info.
config.ini
=========================
[NDB_MGMD DEFAULT]
ArbitrationRank=1
HeartbeatIntervalMgmdMgmd=1500
Portnumber=1186
[NDB_MGMD]
NodeId=49
HostName=localhost
DataDir=D:\\mysql-cluster\\node_dir\\manage_node49
Portnumber=1186
[TCP DEFAULT]
SendBufferMemory=4M
ReceiveBufferMemory=4M
[NDBD DEFAULT]
NoOfReplicas=2
DataMemory=500M
[NDBD]
NodeId=1
HostName=localhost
DataDir=D:\\mysql-cluster\\node_dir\\ndb_node1
NodeGroup=0
[NDBD]
NodeId=2
HostName=localhost
DataDir=E:\\node_dir\\ndb_node2
NodeGroup=0
[MYSQLD DEFAULT]
AutoReconnect=false
BatchByteSize=16K
BatchSize=256
MaxScanBatchSize=256K
[MYSQLD]
NodeId=53
HostName=localhost
[MYSQLD]
NodeId=54
HostName=localhost
[API]
NodeId=231
HostName=localhost
[API]
NodeId=232
HostName=localhost
[API]
NodeId=233
HostName=localhost
my.cnf
======================
[mysqld]
log-error=mysqld.53.err
datadir="D:\\mysql-cluster\\node_dir\\mysql_node53\\data"
tmpdir="D:\\mysql-cluster\\node_dir\\mysql_node53\\tmp"
basedir="D:\\mysql-cluster"
secure-file-priv="c:\\"
max_allowed_packet=64M
port=3306
ndbcluster=on
ndb-nodeid=53
ndb-connectstring=localhost:1186,
How to repeat:
1. let the mysql cluster can run normal.
2. create a disk data table on ndbcluster
CREATE LOGFILE GROUP loggroup1 ADD UNDOFILE 'loggroup11' INITIAL_SIZE 32M ENGINE NDBCLUSTER;
CREATE TABLESPACE tbspace1 ADD DATAFILE 'tbspace11' USE LOGFILE GROUP loggroup1 INITIAL_SIZE 64M ENGINE NDBCLUSTER;
CREATE TABLE `alarmsummary` (
`AlarmReportID` BIGINT(20) UNSIGNED NOT NULL,
`VehId` INT(11) NOT NULL,
UNIQUE KEY `arid` (`AlarmReportID`)
) ENGINE=NDBCLUSTER TABLESPACE=tbspace1 DEFAULT CHARSET=utf8mb4;
3. excute command "shutdown" on ndb_mgm, stop mysql node.
4. start ndb_mgmd.
5. start ndbmtd, the bug will occur.