Bug #25652 mysqldump: Error 1296: Got error 241 'Invalid schema object version'
Submitted: 16 Jan 2007 15:23 Modified: 17 Jan 2007 11:22
Reporter: Nicola Worthington Email Updates:
Status: Not a Bug Impact on me:
None 
Category:MySQL Cluster: Cluster (NDB) storage engine Severity:S2 (Serious)
Version:5.0.27-max OS:Linux (RHEL4ES 2.6.9-42.0.3.ELsmp)
Assigned to: CPU Architecture:Any

[16 Jan 2007 15:23] Nicola Worthington
Description:
Performing a mysqldump on an NDBCLUSTER table results in the error:

mysqldump: Error 1296: Got error 241 'Invalid schema object version' from ndbcluster when dumping table `uri_web_urls` at row: 1183

How to repeat:
Create the table:

mysql> show create table uri_web_urls  \G
*************************** 1. row ***************************
       Table: uri_web_urls
Create Table: CREATE TABLE `uri_web_urls` (
  `id` int(10) NOT NULL default '0',
  `value` text,
  `t` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
  KEY `t` (`t`),
  KEY `id` (`id`)
) ENGINE=ndbcluster DEFAULT CHARSET=latin1 COMMENT='uris'
1 row in set (0.00 sec)

Dump with mysqldump with the following command from the management node:

mysqldump --user=$USER --password=$PASSWORD --protocol=tcp --host=$HOST --port=3306 --complete-insert --lock-all-tables --force --skip-extended-insert --no-create-db --no-create-info urinfo --tables uri_web_urls > "/var/lib/mysql-cluster/mysqldump-ndb/urinfo/urinfo.uri_web_urls.data-only.sql

config.ini file is:

[NDB_MGMD]
Hostname = mgmt1.hostname
DataDir = /var/lib/mysql-cluster/mgmt1

[NDBD DEFAULT]
NoOfReplicas = 2
DataMemory = 2048M
IndexMemory = 128M

MaxNoOfTables = 1024
MaxNoOfOrderedIndexes = 512
MaxNoOfUniqueHashIndexes = 256
MaxNoOfAttributes = 4096

NoOfFragmentLogFiles = 32
TimeBetweenLocalCheckpoints = 18

LogLevelConnection = 15
LogLevelError = 15
LogLevelInfo = 15
LogLevelNodeRestart =15
LogLevelShutdown = 15
LogLevelStartup = 15
LogLevelStatistic = 15

[NDBD]
NodeId = 2
Hostname = ndbd2.hostname
DataDir = /var/lib/mysql-cluster/ndbd2

[NDBD]
NodeId = 3
Hostname = ndbd3.hostname
DataDir = /var/lib/mysql-cluster/ndbd3

[NDBD]
NodeId = 4
Hostname = ndbd4.hostname
DataDir = /var/lib/mysql-cluster/ndbd4

[NDBD]
NodeId = 5
Hostname = ndbd5.hostname
DataDir = /var/lib/mysql-cluster/ndbd5

[MYSQLD]
NodeId = 10
Hostname = ndbd2.hostname

[MYSQLD]
NodeId = 11
Hostname = ndbd3.hostname

[MYSQLD]
NodeId = 12
Hostname = monitoring.hostname

[MYSQLD]
NodeId = 13

[MYSQLD]
NodeId = 14

[MYSQLD]
NodeId = 15

[MYSQLD]
NodeId = 16

[MYSQLD]
NodeId = 17

[MYSQLD]
NodeId = 18

[MYSQLD]
NodeId = 19
[17 Jan 2007 11:22] Hartmut Holzgraefe
This error code is returned whenever a SQL node tries to access a table altered by another node for the first time after it was altered. A 2nd mysqldump run should work just fine. This is why alter table operation on cluster should be performed in single user mode ...