OAI-PMH parallel publications shouldn`t fail

Steps to reproduce

If you've enables OAI-PMH autorepublish functionality and update an series with more than 5 events, some events will not be published due to an database error.

The OAI-PMH database table have an last-updated column. The timestamp is defined as unique with an granularity of 1 second. This happens during series update: each event of the series will be updated and this will trigger an OAI-PMH autorepublish. For sure you will run in a situation, where two events should be written to the database at the same time (at least at the same second). The second operation will fail with an DatabaseException. But wait, there is an workaround for this case. We wait 1 second and retry the database operation up to 5 times.

I would`t create an ticket, if that workaround is working well. I've seen a lot of log messages, where the 5th. operation also fail.

Fixed and reviewed


Waldemar Smirnow


Waldemar Smirnow


Data Loss/Corruption