[SERVER-22187] PlanStage::_commonStats should be made private Created: 14/Jan/16  Updated: 20/Jan/21  Resolved: 20/Jan/21

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

Type: Improvement Priority: Major - P3
Reporter: J Rassi Assignee: Timour Katchaounov
Resolution: Won't Fix Votes: 0
Labels: neweng
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Sprint: Query 2021-01-25
Participants:

 Description   

PlanStage::_commonStats generally does not have to be accessed or modified by stage implementations, and thus should be made private.

There are a couple of existing uses that would have to be addressed before this could be made possible:

  • Stages are generally responsible for setting _commonStats.isEOF.
  • MultiPlanStage::pickBestPlan(), CachedPlanStage::pickBestPlan() and SubplanStage::pickBestPlan() are responsible for updating _commonStats.executionTimeMillis.


 Comments   
Comment by Timour Katchaounov [ 20/Jan/21 ]

Following the recommendation of the reviewers I am closing this issue as Won't fix, because of the unjustified complexity of the complete solution. As I understand it, it will be quite an effort to get in sync _commonStats.isEOF with the EOF state of each plan stage, but such a change will not fix any known user problem.

This will be done right in the new exec engine.

Generated at Thu Feb 08 03:59:39 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.