[SERVER-50766] [SBE] Identify cases where it's safe to use LeafArrayTraversalMode::kArrayElementsOnly Created: 03/Sep/20  Updated: 29/Oct/23  Resolved: 19/Mar/21

Status: Closed
Project: Core Server
Component/s: Querying
Affects Version/s: None
Fix Version/s: 4.9.0

Type: Improvement Priority: Major - P3
Reporter: Drew Paroski Assignee: Nikita Lapkov (Inactive)
Resolution: Fixed Votes: 0
Labels: qexec-team
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by SERVER-51470 [SBE] Decide if we should rewrite gen... Closed
Backwards Compatibility: Fully Compatible
Sprint: Query Execution 2021-03-22
Participants:

 Description   

The diff for SERVER-49819 changed "sbe_stage_builder_filter.cpp" so that most operators call generateTraverse() with the mode = LeafArrayTraversalMode::kArrayAndItsElements, which generates a slightly more complex SBE plan tree that will apply the specified predicate to both an array's elements and the array itself.

The goal of this task is to see if there are cases where we can safely call generateTraverse() with mode = LeafArrayTraversalMode::kArrayElementsOnly instead (which would generate a slightly simpler SBE plan tree).



 Comments   
Comment by Githook User [ 19/Mar/21 ]

Author:

{'name': 'Nikita Lapkov', 'email': 'nikita.lapkov@mongodb.com', 'username': 'laplab'}

Message: SERVER-50766 Use kArrayElementsOnly path traversal mode where possible
Branch: master
https://github.com/mongodb/mongo/commit/76d86a901685b7de79cb28df7c52ba91b43d5b75

Comment by Nikita Lapkov (Inactive) [ 10/Mar/21 ]

During the work on SERVER-51470, we have decided that it would be better to conduct this investigation now.

Generated at Thu Feb 08 05:23:31 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.