EPrints Technical Mailing List Archive

See the EPrints wiki for instructions on how to join this mailing list and related information.

Message: #05402


< Previous (by date) | Next (by date) > | < Previous (in thread) | Next (in thread) > | Messages - Most Recent First | Threads - Most Recent First

[EP-tech] Re: Update ePrints 3.3.10 -> .15: table name changes surprise the system


Am 20.01.2016 um 15:33 schrieb Jiadi Yao:
Hi Florian,

Try running:

bin/epadmin update heidok

It should create the necessary tables for your repository.

regards,
Jiadi


Better late than never: Thanks very much. Everything is fine now, although however I am surprised that one's to call this command as well for changes that you have not done yourself in repository-specific configurationn.

Kind regards
Florian


On 19/01/2016 12:20, Florian Heß wrote:
Hello,

thanks much for keeping E-Print up-to-date with the time! :-)

We recently tried an update from our version 3.3.10 to .15 ...

...
% bin/epadmin upgrade heidok
Stopping indexer ...
Please restart the indexer
3.3.4
...

Apparently there were no changes to the database structure, since that
schema version was already used in the old release. But subject
hierarchy cannot be traversed, it seems tables have been renamed from
subject_ordervalues_* to subject_sortvalues_*, which has not been taken
into account in the upgrade run. I must be wrong with that assumption
though, your test suite would certainly have yielded according errors. :-)

So, how can I solve this?

The errors are like this:
DBD::mysql::st execute failed: Table 'db.subject_name_sortvalue' doesn't
exist at perl_lib/EPrints/Database.pm line 3211.
SQL ERROR (execute): SELECT `subjectid`,`pos`,`name_sortvalue` FROM
`subject_name_sortvalue` WHERE `subjectid` IN ('divisions')
SQL ERROR (execute): Table 'db.subject_name_sortvalue' doesn't exist
DBD::mysql::st fetchrow_array failed: fetch() without execute() at
perl_lib/EPrints/Database.pm line 2674.
DBD::mysql::st execute failed: Table 'db.subject_sortvalue_sortvalue'
doesn't exist at perl_lib/EPrints/Database.pm line 3211.
SQL ERROR (execute): SELECT `subjectid`,`pos`,`sortvalue_sortvalue` FROM
`subject_sortvalue_sortvalue` WHERE `subjectid` IN ('divisions')
SQL ERROR (execute): Table 'db.subject_sortvalue_sortvalue' doesn't exist
DBD::mysql::st fetchrow_array failed: fetch() without execute() at
perl_lib/EPrints/Database.pm line 2674.
DBD::mysql::st execute failed: Table 'db.subject_sortvalue_lang' doesn't
exist at perl_lib/EPrints/Database.pm line 3211.
SQL ERROR (execute): SELECT `subjectid`,`pos`,`sortvalue_lang` FROM
`subject_sortvalue_lang` WHERE `subjectid` IN ('divisions')
SQL ERROR (execute): Table 'db.subject_sortvalue_lang' doesn't exist
DBD::mysql::st fetchrow_array failed: fetch() without execute() at
perl_lib/EPrints/Database.pm line 2674.
########## Caution here, lurking "ordervalues" substrings: ###########
DBD::mysql::st execute failed: Unknown column
'subject__ordervalues_de.sortvalue_sortvalue' in 'order clause' at
perl_lib/EPrints/Database.pm line 3211.
SQL ERROR (execute): SELECT `subject`.`subjectid` FROM `subject` LEFT
JOIN `subject__ordervalues_de` ON
`subject`.`subjectid`=`subject__ordervalues_de`.`subjectid` WHERE 1=1
GROUP BY `subject`.`subjectid`,
`subject__ordervalues_de`.`sortvalue_sortvalue`,
`subject__ordervalues_de`.`name_name` ORDER BY
`subject__ordervalues_de`.`sortvalue_sortvalue` ASC,
`subject__ordervalues_de`.`name_name` ASC
SQL ERROR (execute): Unknown column
'subject__ordervalues_de.sortvalue_sortvalue' in 'order clause'
DBD::mysql::st fetch failed: fetch() without execute() at
perl_lib/EPrints/Search/Condition.pm line 588.


Regards
Florian




*** Options: http://mailman.ecs.soton.ac.uk/mailman/listinfo/eprints-tech
*** Archive: http://www.eprints.org/tech.php/
*** EPrints community wiki: http://wiki.eprints.org/
*** EPrints developers Forum: http://forum.eprints.org/



--
UB Heidelberg (Altstadt)
Plöck 107-109, 69117 HD
Abt. Informationstechnik
Tel. 06221 / 54 3550
http://www.ub.uni-heidelberg.de/