Reported by Alex McGregor (1223571630|%O ago)
Without Direct Mode, WireAPI used synchronization between the different layers to ensure that a Basic.Publish only returned to the application when the message had actually been sent to the server. Slow, and pedantic. With Direct Mode, the Basic.Publish returns immediately and WireAPI then sends off the message when it can, and batches messages if there are several to send at once. But if the client application exits before these waiting messages are sent, they will be dropped, with no warning. WireAPI should flush outgoing messages when doing amq_client_session_destroy () so that well-behaved applications can be sure all their messages are sent.
No files attached to this page.