Skip to content

Clarify documentation of the timestamp offset for streams #1598

@Vic152

Description

@Vic152

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 ;) )

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions