[rabbitmq-discuss] timestamp basic property looses milliseconds?

Marek Majkowski majek04 at gmail.com
Thu Feb 23 11:15:11 GMT 2012


On Thu, Feb 23, 2012 at 11:12, Marek Majkowski <majek04 at gmail.com> wrote:
> On Wed, Feb 22, 2012 at 20:04, Ken Baltrinic
> <kbaltrinic at bericotechnologies.com> wrote:
>> We are attempting to use the amqp basic property "timestamp" via the
>> RabbitMQ java client (see code below) to record the point in time when
>> the message gets sent.  However, we are finding that when a message is
>> pulled from the bus, the timestamp property of the retrieve message
>> has had its milliseconds component dropped.  We are using rabbitmq
>> 2.7.1 with erlang R15B.  Is this a bug or by design? Other than using
>> our own headers, is there a better way to do this?  We would love it
>> if Rabbit itself would provide this timestamp as it would eliminate
>> issues with client clocks not being in sync.
>
> AMQP spec says:
>
>> 4.2.5.4 Timestamps
>> Time stamps are held in the 64-bit POSIX time_t format with an
>> accuracy of one second. By using 64 bits we avoid future wraparound
>> issues associated with 31-bit and 32-bit time_t values.
>
> So, as far as you're using the built-in timestamp field, it will be
> rounded to a second. Sorry.

Of course nothing is topping you from sending a custom header
with an arbitrary data type (float, string or long long). That way
you could send the timestamp data in any format you wish.

Marek


More information about the rabbitmq-discuss mailing list