Replace reset_raw() calls with RAII overloads in SBE production code

XMLWordPrintableJSON

    • Type: Improvement
    • Resolution: Fixed
    • Priority: Major - P3
    • 9.0.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Query Execution
    • Fully Compatible
    • QE 2026-05-25
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      As part of SERVER-120910, OwnedValueAccessor::reset(bool, TypeTags, Value) was renamed to reset_raw(). This ticket converts the remaining reset_raw() call sites in production code to use the RAII overloads on AssignableSlotAccessor:

      • reset(TagValueOwned) in place of reset_raw(true, tag, val)
      • reset(TagValueView) in place of reset_raw(false, tag, val)
      • reset(TagValueMaybeOwned) in place of reset_raw(owned_var, tag, val)

      Files in scope

      • src/mongo/db/exec/sbe/stages/ (hash_agg_accumulator, block_hashagg, unwind, makeobj, scan, ix_scan, search_cursor, ts_bucket_to_cell_block, hash_lookup_unwind, and headers)
      • src/mongo/db/exec/sbe/expressions/runtime_environment.cpp
      • src/mongo/db/exec/sbe/values/value_builder.h
      • src/mongo/db/query/bind_input_params.cpp

      Once all call sites are converted, reset_raw() can be removed from AssignableSlotAccessor and all its subclasses, completing the migration to RAII-based slot value assignment.

            Assignee:
            Mihai Andrei
            Reporter:
            Mihai Andrei
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: