A patch for the install.txt file generated an exception in the List module (why don't we have a component for that?):
http://qa.drupal.org/pifr/test/117784
In case the test results get overridden, here are the details:
Test name Pass Fail Exception
CollapsedList field (ListFieldTestCase) [Field types] 11 0 1
Message Group Filename Line Function Status
PDOException: SQLSTATE[HY000]: General error: 1005 Can't create table 'drupaltestbotmysql.simpletest219154field_revision_test_list' (errno: -1): CREATE TABLE {field_revision_test_list} ( `entity_type` VARCHAR(128) NOT NULL DEFAULT '' COMMENT 'The entity type this data is attached to', `bundle` VARCHAR(128) NOT NULL DEFAULT '' COMMENT 'The field instance bundle to which this row belongs, used when deleting a field instance', `deleted` TINYINT NOT NULL DEFAULT 0 COMMENT 'A boolean indicating whether this data item has been deleted', `entity_id` INT unsigned NOT NULL COMMENT 'The entity id this data is attached to', `revision_id` INT unsigned NOT NULL COMMENT 'The entity revision id this data is attached to', `language` VARCHAR(32) NOT NULL DEFAULT '' COMMENT 'The language for this data item.', `delta` INT unsigned NOT NULL COMMENT 'The sequence number for this data item, used for multi-value fields', `test_list_value` INT NULL DEFAULT NULL, PRIMARY KEY (`entity_type`, `entity_id`, `revision_id`, `deleted`, `delta`, `language`), INDEX `entity_type` (`entity_type`), INDEX `bundle` (`bundle`), INDEX `deleted` (`deleted`), INDEX `entity_id` (`entity_id`), INDEX `revision_id` (`revision_id`), INDEX `language` (`language`), INDEX `test_list_value` (`test_list_value`) ) ENGINE = InnoDB DEFAULT CHARACTER SET utf8 COMMENT 'Revision archive storage for field 6 (test_list)'; Array ( ) in db_create_table() (line 2588 of /var/lib/drupaltestbot/sites/default/files/checkout/includes/database/database.inc). Uncaught exception database.inc 2039 PDOStatement->execute()
| Comment | File | Size | Author |
|---|---|---|---|
| #3 | mysql-crash-log.txt | 433.78 KB | damien tournoud |
Comments
Comment #1
jhodgdonJust as a note, I had no problem running the query on my test box. I wonder if the problem is the Array() after the ; at the end of the query?
Comment #2
jhodgdonI'm still not sure if that Array() is an artifact of the error reporting or part of the query that was trying to be run, but...
It looks like this failure is coming from the setUp() function in ListFieldTestCase:
The field storage module creates the table in field_sql_storage_field_storage_update_field():
All I can see by digging into the table creation code is that DatabaseSchema::createTable() calls DatabaseSchema_mysql::createTableSql(), and if for some reason the $table['description'] was an array, maybe DatabaseSchema_mysql::prepareComment() would end up messing up the end of the SQL that was generated? But the generated schema is actually doing:
$revision['description'] = "Revision archive storage for {$deleted}field {$field['id']} ({$field['field_name']})";
So that isn't it. I guess that Array() must be coming from the error display code, and there must have just been a database glitch?
Comment #3
damien tournoud commentedIt is just a MySQL fluke. It happens from time to time. Apparently we are pushing InnoDB DDL support far beyond what everyone does :)
I flushed the test client manually and put it back online.
Attached the full log of the InnoDB crash, in case anyone is interested in debugging this :)
Comment #4
jhodgdonCool. I thought it was probably worth reporting anyway... Good to know that it's just a db server crash and not a test/Drupal bug.