docs
docs copied to clipboard
Clarify that follower reads are not currently a guarantee of low latency and discuss some more factors that can affect them
Jesse Seldess (jseldess) commented:
In this PR on topology patterns, @bdarnell called into questions some explicit statements we're making about follower reads, namely that follower reads are available for any read operation at least 48 seconds in the past, and that the experimental_follower_read_timestamp() function is the best way to get a follower read:
Note that this function does not guarantee that a follower read will be performed. It picks a timestamp that should usually result in a follower read, but may perform a remote leaseholder read if things are falling behind.
I'm wary of documenting this function while it's experimental; I think it might be better to have the user hard-code the amount of staleness they can tolerate in the query.
It does pick a timestamp a minute in the past, but that doesn't guarantee a follower read. If things are falling behind, the threshold for performing follower reads increases and this function is not currently aware of that (hard coding the interval would have the same problem). We do not currently provide any tools that would offer a stronger guarantee of being able to perform a follower read.
Jira Issue: DOC-288