[SERVER-64571] Support executing explain on views directly against shardsvrs Created: 16/Mar/22  Updated: 06/Apr/23  Resolved: 06/Apr/23

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

Type: Task Priority: Major - P3
Reporter: Esha Maharishi (Inactive) Assignee: Backlog - Query Execution
Resolution: Won't Fix Votes: 0
Labels: phase3, read-only-views, replace-atlas-proxy-w-mongoq, serverless-routing
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
depends on SERVER-64866 Split and merge at tenant boundaries ... Open
depends on SERVER-64869 Test that replica set can be converte... Closed
Initiative
Related
Assigned Teams:
Query Execution
Participants:
Linked BF Score: 178

 Description   

Currently, shardsvrs return CommandOnShardedViewNotSupportedOnMongod for explain on a view (they expect mongos to resolve the view and re-execute the explain against the underlying collection). Note shardsvrs already support regular (non-explain) commands directly against views.

This is required to upgrade Serverless's architecture to support sharding.



 Comments   
Comment by Janna Golden [ 06/Apr/23 ]

This work will not be needed in light of the invisible sharding initiative's goal of making all clusters sharded by default in 8.0, with an embedded router. Serverless will no longer need to upgrade to an interim architecture where the client needs to talk directly to a shardsvr without a router process.

Comment by Kyle Suarez [ 25/Mar/22 ]

Thanks Esha, I added some dependency links to this ticket and the parent project. Since we don't need to schedule this immediately, I'm moving it back to the Open state on the backlog.

Comment by Esha Maharishi (Inactive) [ 24/Mar/22 ]

kyle.suarez sounds good. Two of the other tracks end with SERVER-64866 (which notably depends on PM-2290 "Make dedicated config servers optional for sharded clusters") and SERVER-64869, which have their dependencies linked.

Ultimately the timeline for this and SERVER-64572 depend on when we'll upgrade the mongod layer to shardsvrs in production, which also depends on Cloud's development timelines and whether we want to wait to do the upgrade until we're ready to switch Atlas Proxy with mongoq. It sounds good to keep this on the backlog for now.

Comment by Kyle Suarez [ 23/Mar/22 ]

esha.maharishi, for now I am keeping it in the "Phase 3" epic, along with SERVER-64572. If we decide we need this work for 7.0, we can escalate the PM's priority.

Could you let me know which of the other tracks of development are involved (PM tickets)? I'd like to keep the dependency tracking up-to-date in JIRA.

Comment by Esha Maharishi (Inactive) [ 23/Mar/22 ]

steve.la, it may become a long tail right around 7.0 (around May next year), but I don't know for sure since there are several other tracks of development that need to happen in parallel. It might make sense to mark it as "may be needed around 7.0" and revisit towards the end of this year.

Comment by Steve La (Inactive) [ 22/Mar/22 ]

esha.maharishi is this needed for 7.0?

Comment by Esha Maharishi (Inactive) [ 16/Mar/22 ]

Query team, I created this ticket to correspond to the new line item in the Serverless init plan. Please feel free to place it on your backlog; I will add it as a Serverless request for an upcoming quarter.

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