-
Type:
Improvement
-
Resolution: Unresolved
-
Priority:
Minor - P4
-
None
-
Affects Version/s: None
-
Component/s: None
-
Query Optimization
-
None
-
None
-
None
-
None
-
None
-
None
-
None
Currently there are 2 states that mean 'no projection' should be done on the sample. It is controlled by the TopLevelSampleFields member _fieldNames
One case is when it is boost::none - detected by needsAllFields(), and the other case is when it is an empty StringSet - detected by fields.fieldNames().empty(). The latter returns false on the needsAllFields(), which is confusing.
We can consolidate these in needsAllFields() function and simplify the code in the call sites.