DELIVERY.UNAVAILABLE

Advisory

Subject Name Syntax

_RV.ERROR.RVCM.DELIVERY.UNAVAILABLE.subject

Purpose

A listener presents this advisory when one or more messages are no longer available for retransmission.

Remarks

Consider this example situation. Message number 49 arrives at the listener out of sequence—it has not yet received messages number 46, 47 and 48. Rendezvous software automatically requests that the sender retransmit messages 4648. However, the time-out has expired for those messages, and they are no longer available in the sender’s ledger. The listening transport first presents a DELIVERY.UNAVAILABLE advisory, indicating that messages 46–48 are lost; then it queues message 49.

In this example a range of messages are unavailable. The advisory indicates this range by noting the sequence numbers of the first unavailable message (seqno_begin is 46) and the last unavailable message (seqno_end is 48). In a situation where only one message is unavailable, the fields seqno_begin and seqno_end both contain the same value.

The subject element is the subject name of the unavailable certified messages. The subject often consists of several elements, so the wildcard character ">" (rather than "*") is the correct way to match all subjects in this position.

Message Fields

Field Name

Description

subject

The subject name of the unavailable certified messages. It is identical to the subject element.

This field has datatype TIBRVMSG_STRING.

seqno_begin

The sequence number of the first unavailable message in the range.

This field has datatype TIBRVMSG_U64.

seqno_end

The sequence number of the last unavailable message in the range.

This field has datatype TIBRVMSG_U64.

sender

The name of the sender that cannot retransmit the message.

This field has datatype TIBRVMSG_STRING.

Diagnosis

This advisory indicates an error, and reports unexpected and usually undesirable behavior.

DELIVERY.UNAVAILABLE advisories can indicate either of these difficulties:

The physical network is unreliable.
The sending program is using a time-out value that is too low.