I just upgraded from Drupal 6.20 to 7, and I couldn't be more relieved at how well it went! There seem to be only minor issues. However, there's one mysterious error occurring, and I don't want to ignore this (I want to make sure this site keeps humming along -- especially before I reinstall Views and Panels!):

After upgrading all the other modules, I am still getting a notice when I run the update script (I'm doing it as dbup in Drush, btw) that taxonomy needs to be updated. When I tell it yes, it appears to complete the updates, but then when I run the update script again, it again tells me the same taxonomy updates need to be done. (I've pasted the update messages below.)

After trying this about 4 times, I gave up, and have not been able to find any other posts on drupal.org or anywhere else about this. Does anyone know how to get these updates to go through, or what the problem is?


myaccount:/mysites/drupal-7.0/sites/mydomain.com$ drush dbup
The following updates are pending:

taxonomy module : 
  7004 -   Move taxonomy vocabulary associations for nodes to fields and field instances. 
  7005 -   Migrate {taxonomy_term_node} table to field storage.   @todo: This function can possibly be made much faster by wrapping a  transaction around all the inserts. 
  7006 -   Add {taxonomy_term_data}.format column. 
  7007 -   Add index on {taxonomy_term_data}.name column to speed up taxonomy_get_term_by_name(). 
  7008 -   Change the weight columns to normal int. 
  7009 -   Change {taxonomy_term_data}.format into varchar. 
  7010 -   Change {taxonomy_index}.created to support signed int.

Do you wish to run all pending updates? (y/n): y
Finished performing updates.                                                                                                 [ok]


myaccount:/mysites/drupal-7.0/sites/mydomain.com$ drush dbup
The following updates are pending:

taxonomy module : 
  7004 -   Move taxonomy vocabulary associations for nodes to fields and field instances. 
  7005 -   Migrate {taxonomy_term_node} table to field storage.   @todo: This function can possibly be made much faster by wrapping a  transaction around all the inserts. 
  7006 -   Add {taxonomy_term_data}.format column. 
  7007 -   Add index on {taxonomy_term_data}.name column to speed up taxonomy_get_term_by_name(). 
  7008 -   Change the weight columns to normal int. 
  7009 -   Change {taxonomy_term_data}.format into varchar. 
  7010 -   Change {taxonomy_index}.created to support signed int.

Do you wish to run all pending updates? (y/n): 

Comments

NukeHavoc’s picture

Have you checked the error log? I'm not using Drush, but when I did a test run of the Drupal 6 to Drupal 7 upgrade on my site, I ran into taxonomy errors as well.
Mine started at "7007 Add index on {taxonomy_term_data}.name column to speed up taxonomy_get_term_by_name()."; that line threw an error (both as part of the update and in the logs) about the index already existing, so I ended up manually dropping the table index in MySQL and then letting Drupal recreate it.

I'm guessing in your case there's some sort of SQL error that's causing the upgrade to fail.

somatics’s picture

Thanks for the reply! Which error log do you mean?

I've checked the Recent Log Messages report in the admin interface; do you mean there? I haven't found any errors there.

The odd part about it is that the update didn't throw ANY errors at all -- it showed exactly what I put in my post: It just behaved as if the update was completed properly. That's why I have no idea how to troubleshoot next.

wahlau’s picture

Hi,

I have just upgraded a site from 6.24 to 7.12 - everything works except the taxonomy update stopped at #7007. I tried removing the 3 indexes I have in taxonomy_term_data, and the update.php still stops at #7007 with the following error:

Taxonomy module

Update #7007
Failed: DatabaseSchemaObjectExistsException: Cannot add index name to table taxonomy_term_data: index already exists. in DatabaseSchema_mysql->addIndex() (line 432 of /var/www/abc/includes/database/mysql/schema.inc).

*update*
I somehow manage to remove all index again, and now update.php completes without problem. After update I have only two indexes - name and taxonomy_tree - is that correct?

regards,
wahlau.