Skip to content

OAI Server: "earliestDateStamp" in the repository broken in 5.12.1; causing problems with serving incremental harvests #9309

@landreev

Description

@landreev

This was an insane thing for me to have missed. 😢
In the new XOAI implementation (gdcc/xoai-5.0.0-RC1), validation was added for the "from=" parameter, rejecting the request if the date supplied is before what the OAI Repository thinks is the "earliest date stamp" in it. *) But the RepositoryConfiguration is still initialized with the default value of

.withEarliestDate(DateProvider.now())

and it's never reset in the Dataverse code. And "now" in this context means the time the OAI service was initialized.
Which in turn means that the server is going to reject any incremental request from a client that hasn't successfully harvested since the last time this Dataverse application was restarted (!).
Straightforward to fix; and we may want to consider applying the fix as a patch to our (Harvard) prod. before 5.13 is released.

*) Is this validation really necessary? I'm accepting full responsibility for missing this; and I'm all for fixing it - if nothing else, we want to advertise the correct date in the Identify verb. But I'm not sure I understand the point of rejecting requests on account of this; and I'm not seeing this spelled out in the OAI spec. May not be looking in the right place, etc.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions