-
Type: Improvement
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Fully Compatible
-
Query Optimization 2021-04-05, Query Optimization 2021-04-19, Query Optimization 2021-05-03, Query Optimization 2021-05-17
Semantically, the $setWindowFields stage does not guarantee an output order so users may add a $sort stage to get the order they want. Since the physical implementation for $setWindowFields happens to have a guaranteed order, we should drop (or coalesce or swap) the user $sort if its not necessary.