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

      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: