Introduce the RoutingContext API

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Fixed
    • Priority: Major - P3
    • 8.2.0-rc0
    • Affects Version/s: None
    • Component/s: Catalog
    • None
    • Query Optimization
    • Fully Compatible
    • 200
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None

      The RoutingContext API will be the interface through which query code obtains cached routing tables. It is part of the RouterRole API and should handle:

      • Providing a mapping between each requested NamespaceString and its associated routing table
      • Ensuring that the mapping is immutable. The CatalogCache should only be accessed once for the routing tables during creation, and never again throughout a routing operation.
      • Acquiring the appropriate routing table depending on the read concern. The latest routing table is sufficient in most cases, but if the read concern is snapshot with atClusterTime is set, the routing tables should reflect their atClusterTime state.

      For now, the RoutingContext will just take in the required namespaces and read concern as input. It will later be integrated with the RouterAcquisitionSnapshot.

            Assignee:
            Lynne Wang
            Reporter:
            Lynne Wang
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: