Uploaded image for project: 'Drivers'
  1. Drivers
  2. DRIVERS-3064

Investigate Changes in SPM-4022: Interface for time-series bucket access through user namespace

    • Type: Icon: Task Task
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Component/s: CRUD
    • None
    • Needed
    • Hide

      Before this project, it was possible to access timeseries data in the compressed format (buckets) by directly performing read/write on the bucket collection (<db>.system.buckets.<coll>).

      This is not possible anymore. In fact, the bucket collection does not exist anymore. Instead, to access timeseries data in the compressed format (buckets) the CRUD operations must target the main timeseries user namespace and pass the "rawData: true" parameter.

      E.g.:
      db.runCommand(

      {find: 'coll', rawData: true}

      )

      Show
      Before this project, it was possible to access timeseries data in the compressed format (buckets) by directly performing read/write on the bucket collection (<db>.system.buckets.<coll>). This is not possible anymore. In fact, the bucket collection does not exist anymore. Instead, to access timeseries data in the compressed format (buckets) the CRUD operations must target the main timeseries user namespace and pass the "rawData: true" parameter. E.g.: db.runCommand( {find: 'coll', rawData: true} )

      Original Downstream Change Summary

      Before this project, it was possible to access timeseries data in the compressed format (buckets) by directly performing read/write on the bucket collection (<db>.system.buckets.<coll>).

      This is not possible anymore. In fact, the bucket collection does not exist anymore. Instead, to access timeseries data in the compressed format (buckets) the CRUD operations must target the main timeseries user namespace and pass the "rawData: true" parameter.

      E.g.:
      db.runCommand(

      Unknown macro: {find}

      )

      Description of Linked Ticket

      Epic Summary

      Summary

      Implement "raw access" mode for CRUD commands, which bypasses any logical translation steps. For standard collections, this will be a noop. For time-series collections, it allows operations to function on the bucket-level data while accessing the primary namespace (not system.buckets). This will allow tooling such as mongodump to access the correct data format without knowing the collection type.

      Motivation

      This small project will be a preparatory step for SPM-3830 (Eliminate Dual-Namespaces for Time Series Collections) to ease the transition to using a single namespace for time-series collections.

      Documentation

      Product Description
      Scope
      Technical Design
      Docs Update

            Assignee:
            Unassigned Unassigned
            Reporter:
            tom.selander@mongodb.com Tom Selander
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: