[rabbitmq-discuss] Erlang client and properties

Matthias Radestock matthias at lshift.net
Sat Nov 8 06:53:13 GMT 2008

Ben Hood wrote:
 > I'll let Matthias answer these questions as he is reviewing the
 > upcoming 0.9.1 spec.

Err, thanks. 0-9-1 doesn't actually answer most of these, though some 
did come up during the 0-10 discussions.

>> What is the format of the timestamp field, and how do I encode/decode it?

"64-bit POSIX time_t format with an accuracy of seconds", according to 
the spec. 0-10 labels this type "datetime".

>> When and by what does the timestamp get set? I searched all the client code
>> for 'timestamp' but could not find it, so when I create a new message, what
>> sets this?

Nothing in the RabbitMQ code base sets the timestamp. It is up to 
application code.

>> What is the format of the expiration? The spec does not define it.

In 0-10 the type has changed to type "datetime".

>> What is the behavior when a message has expired? Does the client
>> automatically throw it away when doing a basic.get or consume so I never see
>> it?

The 0-10 spec says

"Messages that live longer than their expiration time will be discarded 
(or dead lettered)."

RabbitMQ currently does not implement this feature, but it is on our 
todo list.

>> Does the message_id ever get set automatically to a unique value?


>> What is the purpose of the 'type' property? The spec just writes "message
>> type name"? Is this totally user-defined?

'type' is a user-defined field.


More information about the rabbitmq-discuss mailing list