Bug #30392 Test "nist_all" fails because identifiers changed case
Submitted: 13 Aug 2007 15:53 Modified: 29 Feb 2008 17:29
Reporter: Joerg Bruehe Email Updates:
Status: Closed Impact on me:
None 
Category:Tests: Server Severity:S3 (Non-critical)
Version:5.1.21 OS:Mac OS X (all variants)
Assigned to: Matthias Leich CPU Architecture:Any
Triage: D3 (Medium)

[13 Aug 2007 15:53] Joerg Bruehe
Description:
Tests runs during the build of 5.1.21,
occurring in all tests on all variants of OS X.

Full diff is nearly 80 kB, so this is just the start and the end:

-------------------------------------------------------
*** /PATH/mysql-test/suite/nist/r/nist_all.result
--- /PATH/mysql-test/suite/nist/r/nist_all.reject
***************
*** 1493,1499
  REFERENCES CURRENCY_TABLE,
  FOREIGN KEY (MEASURE)
  REFERENCES MEASURE_TABLE);
! ERROR HY000: Can't create table 'SUN.C_TRANSACTION' (errno: 150)

  TEST-INFO: The last statement failed, because MySQL does not
   - understand the syntax or
--- 1493,1499
  REFERENCES CURRENCY_TABLE,
  FOREIGN KEY (MEASURE)
  REFERENCES MEASURE_TABLE);
! ERROR HY000: Can't create table 'sun.c_transaction' (errno: 150)

  TEST-INFO: The last statement failed, because MySQL does not
   - understand the syntax or
***************
.....
***************
*** 15444,15450
  UPDATE HU.VSTAFF3
  SET GRADE = 15
  WHERE EMPNUM = 'E2';
! ERROR 42000: UPDATE command denied to user 'SCHANZLE'@'localhost' for table 'VSTAFF3'

  TEST-INFO: passed

--- 15438,15444
  UPDATE HU.VSTAFF3
  SET GRADE = 15
  WHERE EMPNUM = 'E2';
! ERROR 42000: UPDATE command denied to user 'SCHANZLE'@'localhost' for table 'vstaff3'

  TEST-INFO: passed

-------------------------------------------------------

How to repeat:
Run the NIST suite on OS X.

Suggested fix:
Check the design of "information schema"
for a machine with case-insignificant file system.
[12 Dec 2007 22:16] Matthias Leich
This is neither a new bug nor a regression.
The NIST tests converted to MySQL and the
corresponding expected results need a case
sensitive filesystem for storing database
and table related files and directories.

The fix disables the execution of this test when
running on a non case sensitive filesystem
(affects Windows and Mac OSX).
Pushed into
mysql-test-extra-5.0
mysql-test-extra-5.1
mysql-test-extra-6.0 Note: nist_all fails because of new bug.
It is intended to close this bug after this.

The ideal solution is to modify the NIST tests in such
a way that at least their majority can run on non case
sensitive filesystems. This exceeds a bug fix, is
something like a "new feature" and will be handled in
a separate WorkLog task.
[29 Feb 2008 17:29] Matthias Leich
The fixes are pushed to the corresponding trees.
It was a weakness within test itself and no bug
affecting customers. Therefore no documentation
is needed.
WL#4290 Create a variant of the NIST tests for
        case insensitive filesystems
was created.