Uploaded image for project: 'Documentation'
  1. Documentation
  2. DOCS-15065

Rewrite "Perform Long-Running Queries" page to show intended use

      This page:

      https://docs.mongodb.com/manual/tutorial/long-running-queries/

      ... shows how we internally implement the driver-server protocol for snapshot reads using the "atClusterTime" parameter. That parameter shouldn't be documented. Instead, we should show users the session-based driver API for using snapshot reads. Here's a good example for Python:

      https://pymongo.readthedocs.io/en/stable/api/pymongo/client_session.html

      Snapshot reads are extremely similar to causal consistency. For causal, we don't document the internal parameter "afterClusterTime". Instead, we show examples with drivers:

      https://docs.mongodb.com/manual/core/read-isolation-consistency-recency/#examples

      We should do the same for snapshot reads: don't document "atClusterTime", show drivers examples instead. We can collect drivers examples using a ticket like DRIVERS-547.

      Also, I'd replace the term "snapshot time" with "read timestamp" on that page. E.g.,

      When MongoDB performs long-running queries using the default read concern of "local", the read timestamp is subject to change. The read timestamp may move forward as the query runs, and the query may return inconsistent results.

            Assignee:
            jeffrey.allen@mongodb.com Jeffrey Allen
            Reporter:
            jesse@mongodb.com A. Jesse Jiryu Davis
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved:
              2 years, 5 weeks, 4 days ago