[SERVER-24182] Add collation-related information to explain output Created: 17/May/16 Updated: 19/Jul/16 Resolved: 05/Jul/16 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Querying |
| Affects Version/s: | None |
| Fix Version/s: | 3.3.10 |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | David Storch | Assignee: | Tess Avitabile (Inactive) |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Backwards Compatibility: | Fully Compatible |
| Sprint: | Query 15 (06/03/16), Query 16 (06/24/16), Query 17 (07/15/16) |
| Participants: |
| Comments |
| Comment by Githook User [ 05/Jul/16 ] |
|
Author: {u'username': u'tessavitabile', u'name': u'Tess Avitabile', u'email': u'tess.avitabile@mongodb.com'}Message: |
| Comment by David Storch [ 23/Jun/16 ] |
|
tess.avitabile, your second plan sounds good to me. Unless we typed a really bad bug, the collation on the plans filters should always match the collation associated with the parsed query, so I think it's fine to not report a collation on, say, the FETCH stage. |
| Comment by Tess Avitabile (Inactive) [ 23/Jun/16 ] |
|
Actually, I would like to put the query collation in "parsedQuery", and put the index collation in each stage that scans an index (IXSCAN, DISTINCT_SCAN, COUNT_SCAN). Putting the query collation into every FETCH, SORT_KEY_GENERATOR, etc feels redundant. It also is awkward for the FETCH stage to get the query collation because it only has the filter MatchExpression, which doesn't necessarily have the collation. |
| Comment by Tess Avitabile (Inactive) [ 23/Jun/16 ] |
|
david.storch, I'm thinking of adding a collation field to the explain output for the IXSCAN, FETCH, SORT_KEY_GENERATOR, PROJECTION, SORT_MERGE, DISTINCT_SCAN, and COUNT_SCAN stages, since these are all the stages that use either a collator or an index. Can you think of anywhere else you would like to see collation information in the explain output? I also thought of putting it in "parsedQuery", but we don't include sort or projection information in there. |