Advisory Messages

Rendezvous software presents asynchronous advisory messages to Rendezvous programs. Advisory messages indicate errors, warnings and other information.

In contrast with status codes (which indicate success or failure within a specific Rendezvous call), asynchronous advisory messages notify programs of events that occur outside of the program’s direct flow of control—for example, the program is processing inbound messages too slowly, causing the daemon’s message queue to overflow.

Advisory Summary

Rendezvous System Advisories

Advisory Message

Class

CLIENT.FASTPRODUCER

WARN

CLIENT.ILLEGAL_PUBLISH

ERROR

CLIENT.NOMEMORY

ERROR

CLIENT.SLOWCONSUMER

ERROR

DATALOSS.MSG_TOO_LARGE

ERROR

DATALOSS

ERROR

DISPATCHER.THREAD_EXITED

INFO

HOST.STATUS

INFO

QUEUE.LIMIT_EXCEEDED

WARN

RETRANSMISSION.INBOUND.EXPECTED

INFO

RETRANSMISSION.INBOUND.REQUEST_NOT_SENT

INFO

RETRANSMISSION.OUTBOUND.SENT

INFO

RETRANSMISSION.OUTBOUND.SUPPRESSED

INFO

RVD

   RVD.RECONNECT_FAILED
   RVD.DISCONNECTED
   RVD.CONNECTED

 

ERROR
WARN
INFO

UNREACHABLE.TRANSPORT

INFO

VC.CONNECTED

INFO

VC.DISCONNECTED

ERROR, INFO

Receiving Advisory Messages

Rendezvous programs can receive advisory messages in the same way as any other messages—by listening to subject names.

For example, the subject _RV.*.SYSTEM.> matches all advisories related to communications. Programs can also listen more selectively for specific advisories, as appropriate.

Advisories related to a specific transport present on that transport. A program that creates several transports might need to listen for advisory messages on each of its transports.

Advisories not related to a specific transport present on the intra-process transport.

Advisory messages wait for dispatch in the queue that the program designates when creating the listener.

(Programs listen for advisory messages using ordinary Rendezvous listening calls, rather than certified listening calls.)

Redirecting Advisories to stderr

Rendezvous software informs programs of exceptional conditions by presenting advisory messages. Error and warning messages indicate situations that could have serious consequences. Rendezvous software protects programs from losing important messages by catching error and warning messages that would otherwise be lost.

If Rendezvous software detects an error or warning message, and the program is listening for a matching subject, then Rendezvous software queues it for the appropriate callback function within the program. However, if the program is not listening for a matching subject, Rendezvous software intercepts the error or warning message, and redirects it to stderr (or equivalent).

Informational messages are neither caught nor redirected; the only way to receive them is to listen for them explicitly.

Some platforms do not support the concept of stderr, or support it only in limited cases. When stderr is not supported, error and warning messages are lost unless the program explicitly listens for them. For example, Microsoft Windows operating systems do support stderr, but only in console-based applications; they do not support it in GUI (window-based) programs.