InnoDB became the default engine for MySQL since v5.5 which is installed on recent Ubuntu (and probably others).
Upgrading a repository which had MyISAM tables (the former default) may end up in the repo DB having a mix between MyISAM and InnoDB tables.
EPrints (Database/mysql.pm) should always set a default engine (on create tables) to prevent this situation from happening. Alternatively $c->{dbengine} = 'MyISAM' can be set in the local config.
The text was updated successfully, but these errors were encountered:
@drn05r I think there might be some additional checks that should be made with your script.
This thread is related: http://threader.ecs.soton.ac.uk/lists/eprints_tech/21835.html
where some tables end up without a primary key.
In this situation, as I understand it, InnoDB will create an index in the background for itself, but an application would not then be able to use it.
Defining a PK before altering the table engine it probably a good idea.
It would probably be worth linking to some information about the storage size of InnoDB vs MyISAM too - don't want someone to fill their server up trying to change the DB engine!
InnoDB became the default engine for MySQL since v5.5 which is installed on recent Ubuntu (and probably others).
Upgrading a repository which had MyISAM tables (the former default) may end up in the repo DB having a mix between MyISAM and InnoDB tables.
EPrints (Database/mysql.pm) should always set a default engine (on create tables) to prevent this situation from happening. Alternatively $c->{dbengine} = 'MyISAM' can be set in the local config.
The text was updated successfully, but these errors were encountered: