-
Type:
Improvement
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Query Execution
-
Fully Compatible
-
QE 2026-05-25
-
None
-
None
-
None
-
None
-
None
-
None
-
None
Overview
Convert the simple date field extractor builtins in vm_builtin_datetime.cpp to use RAII value types. These are all short, uniform functions with the same stack-read pattern.
Scope of Work
- src/mongo/db/exec/sbe/vm/vm_builtin_datetime.cpp — builtinDayOfYear, builtinDayOfMonth, builtinDayOfWeek, builtinYear, builtinMonth, builtinHour, builtinMinute, builtinSecond, builtinMillisecond, builtinWeek, builtinISOWeekYear, builtinISODayOfWeek, builtinISOWeek, builtinTsSecond, builtinTsIncrement, builtinIsTimeUnit, builtinIsDayOfWeek, builtinIsTimezone (~18 functions)
Technical Notes
All these functions use auto [_, tag, val] = getFromStack(N) with no ownership transfer — convert to viewFromStack. Use SERVER-114263 as a model.
- is related to
-
SERVER-114263 Refactor sbe vm arithmetic builtins and unit tests to use TagValueView/Owned/MaybeOwned types
-
- Closed
-
- related to
-
SERVER-126039 Refactor vm_builtin_datetime.cpp date construction and block operations to use value RAII types
-
- Closed
-