rabbitmq-website
rabbitmq-website copied to clipboard
Clarify documentation of the timestamp offset for streams
Hey Guys,
We are using streams in RabbitMQ. It was very confusing when we try to attach to a stream at midnight. It turns out we actually attach to a nearest chunk that was earlier. I propose that you make these changes to documentation:
https://www.rabbitmq.com/streams.html
Where it reads: Timestamp - a timestamp value specifying the point in time to attach to the log at. It will clamp to the closest offset, if the timestamp is out of range for the stream it will clamp either the start or end of the log respectively. With AMQP 0.9.1, the timestamp used is POSIX time with an accuracy of one second, that is the number of seconds since 00:00:00 UTC, 1970-01-01. Be aware consumers can receive messages published a bit before the specified timestamp.
Replace with:
Timestamp - a timestamp value specifying the point in time to attach to the log at. It will clamp to the closest offset, if the timestamp is out of range for the stream it will clamp either the start or end of the log respectively. The chunk size is dynamic and based on the message ingress rate. Be aware consumers can receive messages published a bit before the specified timestamp. Applications consuming RabbitMq streams should apply filter to ingest messages of interest. With AMQP 0.9.1, the timestamp used is POSIX time with an accuracy of one second, that is the number of seconds since 00:00:00 UTC, 1970-01-01. Note: Timestamp where client attaches to the stream queue is not message time timestamp
I feel this should clear the confusion once for all. (I mean until next time implementation changes ;) )