#152: BibSched: support for quarantined records
-------------------------+--------------------------------------------------
Reporter: simko | Owner: kaderno
Type: enhancement | Status: new
Priority: major | Milestone: v1.1
Component: BibSched | Version:
Keywords: |
-------------------------+--------------------------------------------------
Say we have bibupload tasks 1, 2, ... k waiting in the queue, and say
that the bibupload task 2 concerns records R1, R2, ..., Rn, and say
that it fails on record Ri. Then ideally we should not stop the
processing queue for all subsequent bibupload tasks greater than 2,
but we should mark the internal queue state to say that records Ri..Rn
may be vulnerable, and we should process bibupload jobs 3...k anyway,
and in case a job touches other records than Ri...Rn, say records
Rw...Rz, then this job should be allowed, otherwise the job should be
held waiting for manual resolve.
The queue checking described above is similar to the freshness check
that BibEdit does, so parts of the checks may be shared. But beware of
complications, because a record is not recognized solely by its record
ID (001), but also by external sysno (970), internal OAI ID (024),
external OAI ID (035), some of them with provenance checking.
So, this task may require a new bibsched state, and may get complex.
The primary use case is to ease problematic situations like the task
queue being stopped in the middle of the night for the ATLAS
publications because there was an error in a Photo record upload.
P.S. Another option to ease this use case situation would be to make
bibsched/bibupload/bibedit work more in diff-like manner. But we might
have incoming bibupload replace jobs due to webuploads anyway, so such
a queue checking would be indeed good to have.
--
Ticket URL: <http://invenio-software.org/ticket/152>
Invenio <http://invenio-software.org>