Ensemble HL7 Version 2 Development Guide - InterSystems ...
Ensemble HL7 Version 2 Development Guide - InterSystems ...
Ensemble HL7 Version 2 Development Guide - InterSystems ...
- No tags were found...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Elements of a Routing Production<br />
LargeGapSize<br />
• MSH:10 MessageControlId<br />
A sequence manager can check for duplicate messages and messages out of sequence,<br />
duplicate messages or messages out of sequence, or neither. This makes EnableDuplicatedMessageCheck<br />
entirely independent of PerformSequenceNumberCheckOn in that either, one, or<br />
both of these settings may be True.<br />
A number that indicates a significant gap in the sequence of messages.<br />
A late message is a message that arrives with a sequence number larger than the previously<br />
received message in the sequence, but not exactly sequential. For example, when message<br />
102 arrives after message 101, 102 is not late; it is the next message in sequence. However,<br />
when message 110 arrives after message 101, 110 is a late message.<br />
When there is a late message, and the sequence numbering gap between the preceding and<br />
subsequent messages is less than the configured LargeGapSize, this is a small gap. A gap<br />
larger than this is a large gap.<br />
• For any small gap, the sequence manager waits for MessageWaitTimeout seconds to see<br />
if messages will arrive to fill the gap. If the messages arrives within the waiting period,<br />
the sequence manager aligns them in their proper sequence. If they do not arrive and the<br />
MessageWaitTimeout expires, the sequence manager stops waiting and sends whatever<br />
it has for messages in the current sequence.<br />
• When there is a large gap, the sequence manager does not wait for any period of time.<br />
It immediately sends an alert, then sends whatever it has for messages in the current<br />
sequence.<br />
The default LargeGapSize is 100.<br />
MessageResendableTimeWindow<br />
Time window during which the sequence manager considers a duplicate message to be a<br />
duplicate. The reason for the MessageResendableTimeWindow is that sometimes a duplicate<br />
message is not a mistake. Sometimes it is the result of deliberately resending a message<br />
sequence.<br />
Suppose a message arrives and the sequence manager detects that it is a duplicate of a previously<br />
received message. In this case:<br />
• If it has been more than MessageResendableTimeWindow seconds since the sequence<br />
manager first saw this message, it interprets the new arrival as a deliberately resent copy.<br />
The sequence manager begins tracking the messages in this resent sequence independently<br />
from its tracking of the main sequence of messages.<br />
40 <strong>Ensemble</strong> <strong>HL7</strong> <strong>Version</strong> 2 <strong>Development</strong> <strong>Guide</strong>