A download which includes two patches for Habari Client for RabbitMQ is now available. The patches are:

  1. configuration support for extra headers of NACK frames
  2. fix for failover URLs containing heart-beat parameters

Configuration of extra headers for NACK

The RabbitMQ message broker supports a special STOMP header for the NACK frame, requeue. By default, a NACKed message will be requeued. By setting the requeue header to false, the NACKed message will be discarded/dead lettered by the message broker (for more details see https://www.rabbitmq.com/stomp.html).

The patch version contains a new interface, IFrameOptionsProvider, which contains the SetNackHeaders method.

Code Example:

uses
  BTMsgInterfaces, ...
...
NackHeaders := TStringList.Create;
try
  NackHeaders.Add('requeue=false');
  (Msg as IFrameOptionsProvider).SetNackHeaders(NackHeaders);
finally
  NackHeaders.Free;
end;

Fix for failover URLs containing heart-beat parameters

A failover URL may contain heart-beat configuration (for example heart-beat=0,60000). A bug in the current version has been fixed which splits the URL in the wrong position.

Example:

failover:(stomp://host-a?connect.heart-beat=0,60000&connect.host=myvhost,stomp://host-b?connect.heart-beat=0,60000&connect.host=myvhost) 

The patched version correctly splits up the URLs into these two parts:

stomp://host-a?connect.heart-beat=0,60000&connect.host=myvhost
stomp://host-b?connect.heart-beat=0,60000&connect.host=myvhost

Download

Registered users may download the patch version at https://www.habarisoft.com/habari_rabbitmq/download/snapshot/

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s