Page History
...
Status name | Value in DB | Description |
QUEUE_STATUS_UNTRUSTED_IP QUEUE_STATUS_UNTRUSTED | 0 5 | Message must not be routed as it is not trusted. This may occur if the IP address which sent the message of the notifications' sender doesn't match a registered LDN Service entry's the provided "IP Range", or or if the body service inbox URL in the origin section of the message doesn't match with a any registered LDN Service entry's Inbox URL, etc. |
QUEUE_STATUS_QUEUED | 1 | Message is waiting in the queue to be evaluated processed by the Extractor |
QUEUE_STATUS_PROCESSING | 2 | Message is currently being evaluated processed by the Extractor |
QUEUE_STATUS_PROCESSED | 3 | Message has been already evaluated successfully processed by the Extractor |
QUEUE_STATUS_FAILED | 4 | Message has been evaluated but its routing has failed |
If valued as queued the LDN message will be processed. all validations are run successfully the LDN Notification status is set as QUEUE_STATUS_QUEUED and the notification will be processed as soon as the extractor retrieves it from the queue.
The LDN Message logical queue is managed by:
- The LDN Message Extractor is an asynchronous DSpace task that reads which retrieves the oldest manageable processable LDN message and enroute it to the LDN Router; an ldn message is manageable .
A LDN notification is processable by the Extractor only if its queue status is QUEUE_STATUS_QUEUED. the extractor instance other status will not be considered by the extractor.
The extractor process ends as soon as the LDN extracted message extracted is routed and processed or failed. For each tentative the attempts counter of the message is increased by 1 and the timeout is increased by X minutes, where X= the value of the configuration property ldn.processor.queue.msg.timeout | defaulted to 60. Cron configuration at property ldn.queue.extractor.cron(either with success of failure).
- The LDN Message Timeout Checker The LDN Message Timeout Checker is an asynchronous DSpace task that looks for timed-out messages with attempts less than Y, where Y= the value of the configuration property ldn.processor.max.attempts. Cron configuration at property ldn.queue.timeout.checker.cron
Each notification if not successfully processed is retrieved in the next execution of the Checker and attempts are kept up to date (increased by 1 and the timeout is increased by X minutes), where X= the value of the configuration property ldn.processor.queue.msg.timeout | defaulted to 60.
Please consider that this means Please consider that this means that the corresponding QAEvent is not automatically created as soon as the LDN Message is received. LDN Message (accepted by the inbox controller and stored into ldn_message table) => Extractor (started runtime as a batch) => Routing => Processor => Action that creates the QA - see class org.dspace.app.ldn.action.LDNCorrectionAction
...
The QA Event related to the LDN Notification will be created only once the notification is successfully processed by the extractor (LDN queue status set to QUEUE_STATUS_PROCESSED).
Notify status boxes
Considering these possible scenarios here at: COAR Notify Protocol: Example Scenarios
...