Bug #33485 NDB fails on IA64 / icc
Submitted: 22 Dec 2007 20:05 Modified: 24 Aug 2010 7:39
Reporter: Joerg Bruehe Email Updates:
Status: Won't fix Impact on me:
None 
Category:MySQL Cluster: Cluster (NDB) storage engine Severity:S2 (Serious)
Version:mysql-6.0 OS:Linux (IA64 / ICC only)
Assigned to: Joerg Bruehe CPU Architecture:Any
Tags: 6.0.4-alpha

[22 Dec 2007 20:05] Joerg Bruehe
Description:
Build of 6.0.4-alpha

Total failure of NDB on this platform (IA64 / ICC).

Exact symptoms differ among tests, but typically they include a NDB "Cluster failure" (4009):

::::::::::::::
ndb.loaddata_autocom_ndb       [ fail ]

mysqltest: In included file "./include/loaddata_autocom.inc": At line 17: query 'truncate table t1' failed: 1005: Can't create table 'test.t1' (errno: 157)

The result from queries just before the failure was:
SET SESSION STORAGE_ENGINE = ndbcluster;
drop table if exists t1;
create table t1 (id int unsigned not null auto_increment primary key, a text, b text);
start transaction;
load data infile '../std_data_ln/loaddata2.dat' into table t1 fields terminated by ',' enclosed by '''' (a, b);
Warnings:
Warning 1261    Row 3 doesn't contain data for all columns
commit;
select count(*) from t1;
count(*)
4
truncate table t1;

More results from queries before failure can be found in /PATH/mysql-test/var/log/loaddata_autocom_ndb.log

Warnings from just before the error:
Error 1296 Got error 4009 'Cluster Failure' from NDB

::::::::::::::
ndb.ndb_alter_table2           [ fail ]

mysqltest: At line NNN: query 'drop table t1' failed: 1051: Unknown table 't1'

The result from queries just before the failure was:
< snip >
) ENGINE=ndbcluster;
BEGIN;
INSERT INTO t1 VALUES (9410,9412);
BEGIN;
INSERT INTO t1 VALUES (9411,9412);
BEGIN;
INSERT INTO t1 VALUES (9412,9412);
BEGIN;
INSERT INTO t1 VALUES (9413,9412);
BEGIN;
INSERT INTO t1 VALUES (9414,9412);
BEGIN;
INSERT INTO t1 VALUES (9415,9412);
ROLLBACK;
ROLLBACK;
ROLLBACK;
ROLLBACK;
ROLLBACK;
ROLLBACK;
drop table t1;

More results from queries before failure can be found in /PATH/mysql-test/var/log/ndb_alter_table2.log

Warnings from just before the error:
Error 1296 Got error 4009 'Cluster Failure' from NDB

::::::::::::::
ndb.ndb_alter_table            [ fail ]

mysqltest: At line NNN: query 'SELECT * FROM t1' failed: 1296: Got error 157 'Unknown error code' from NDBCLUSTER

The result from queries just before the failure was:
DROP TABLE IF EXISTS t1, t2;
drop database if exists mysqltest;
CREATE TABLE t1 (
a INT NOT NULL,
b INT NOT NULL
) ENGINE=ndbcluster;
INSERT INTO t1 VALUES (9410,9412);
ALTER TABLE t1 ADD COLUMN c int not null;
Warnings:
Error   1296    Got error 4009 'Cluster Failure' from NDB
SELECT * FROM t1;

More results from queries before failure can be found in /PATH/mysql-test/var/log/ndb_alter_table.log

Warnings from just before the error:
Error 1296 Got error 4009 'Cluster Failure' from NDB
Error 1296 Got error 157 'Unknown error code' from NDBCLUSTER

..... (similar in other tests)

ICC version used:

~> rx2620b '. ./path-for-rx2620b ; icc --version'
icc (ICC) 10.0 20070809
Copyright (C) 1985-2007 Intel Corporation.  All rights reserved.

How to repeat:
Build + test on that platform.

Suggested fix:
Of the two builds there, only RPM succeeded,
"tar.gz" failed - maybe due to a compiler upgrade with changed command line ?

To *really* be sure this is not a problem caused by an ICC upgrade,
I assign to the build team first:
I propose to run a build of some version that succeeded there,
and only if that succeeds the problem described here should be assigned to the cluster team.