Error Handling
Possible Errors
List based on
the RoB-in URD error handling requirements
Data-flow errors
It is not planned to implement a TTC interface on the RoB-in
prototype therefore these errors do not apply.
This is a genuine problem, since the
index table consists of fixed length slots a fragment which
takes up more pages than allowed for in the index table will
overflow its slot.
Action
If a page cannot be placed in its correct slot in the index table
the page will be released onto the free FIFO immediately and an
error will be flagged in the slot's status word.
If the offending event is selected for transmission to level2,
level3 or the monitoring process the truncated event will be
transmitted along with the appropriate status word.
The number of occurrences of this error will also be counted.
An RoI request is received for an event fragment which does not exist
in the RoB-in. This is probably because the event ID of the
fragment is corrupt either in the RoI request or in the RoB-in's
index table. This may also happen if the supervisor sends
the RoI request before the RoD has sent the fragment!
Perhaps because the RoB-in has asserted XOFF.
Questions
- Should the RoB-in do some further checks before deciding that
there is an error?
- Should the RoB-in stop fielding RoIRs while XOFF is asserted?
Action
The RoB-in will send an RoI data record with an empty event
fragment and an error flag set in the header.
A reject decision arrives for an event fragment which does not exist.
Action
The RoB-in will do nothing other than count the error.
An accept decision arrives for an event fragment which does not exist.
Action
For an accept decision things are a little more complicated as a
level 3 request may follow.
Should we create an entry in the accepted events list?
A level 3 data request is received for an event fragment which
does not exist in the RoB-in. This is probably because the event ID
of the fragment is corrupt somewhere. There is no legitimate way
for this situation to arise.
Action
The RoB-in will send a level 3 data record with an empty event
fragment and an error flag set in the header.
GJC /
gjc@hep.ucl.ac.uk