Improve handling of 'RecordStore::Options::storageEngineCollectionOptions'

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • Storage Execution
    • None
    • 3
    • TBD
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      RecordStore::Options::storageEngineCollectionOptions are expected to be a document with a specific format, matching CollectionOptions::storageEngine. Referencing CollectionOptions in the RecordStore header file suggests a layering violation.

      • The RecordStore layer only needs the nested configuration string
      • The format is tied to a field in CollectionOptions, which is outside the knowledge domain of the RecordStore.

      It would be cleaner to only require the configuration string in RecordStore::Options - rather than have RecordStore::Options enforce an arbitrary BSON input structure.

      Currently, the information stored in 'CollectionOptions::storageEngine' can be parsed,  but not in a way which is storage engine agnostic (SERVER-104519).

      However, we could experiment with providing additional parameters to getRecordStoreOptions() so the configuration string can be parsed without breaking layers of abstraction.

              Assignee:
              Unassigned
              Reporter:
              Haley Connelly
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated: