ExportXMLWordPrintableJSON

    • DB Integration & Observability
    • Fully Compatible
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Overview

      Split the extension privilege declaration types out of the aggregation-stage static-properties IDL into a shared public IDL, so that extension aggregation stages and extension commands use the same types. Add the search index management actions to the closed action enum.

      Part of SPM-4830 (Support Commands in the Extensions API).

      Scope of Work

      • New shared public IDL (src/mongo/db/extension/public/extension_privilege.idl) containing the resource pattern, the closed action enum, the action entry, and the required-privilege struct, moved out of extension_agg_stage_static_properties.idl.
      • Append createSearchIndexes, updateSearchIndex, and dropSearchIndex to the action enum (append-only), and map each to its server ActionType.

      Acceptance Criteria

      • Existing agg-stage privilege declarations behave exactly as before.
      • The new actions map to the correct {{ActionType}}s.

      Example Test Cases

      • Unit tests for each action mapping.
      • An agg-stage declaration without a resource pattern is still rejected.
      • Existing extension agg-stage auth tests are unchanged.

      Technical Notes

      • resourcePattern stays required, so declarations remain parseable by older servers.
      • The IDL is a BSON contract, not a vtable, so it is independent of the API versioning work (SERVER-135392).

      Depends on: none

            Assignee:
            Daniel Segel
            Reporter:
            Daniel Segel
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: