[SERVER-56835] Link the `flushRouterConfig` command on MongoD Created: 11/May/21  Updated: 06/Dec/22  Resolved: 13/May/21

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

Type: Task Priority: Major - P3
Reporter: Sergi Mateo Bellido Assignee: [DO NOT USE] Backlog - Sharding EMEA
Resolution: Duplicate Votes: 0
Labels: PM-1965-Cleanup, sharding-wfbf-day
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates SERVER-9043 Link `flushRouterConfig` on the confi... Closed
Assigned Teams:
Sharding EMEA
Sprint: Sharding EMEA 2021-05-31
Participants:

 Description   

The goal of this ticket is to introduce a new command to clear some of the in-memory sharding objects, similar to flushRouterConfig but for shards.

We discussed about clearing the routing information and the filtering metadata.



 Comments   
Comment by Kaloian Manassiev [ 13/May/21 ]

Closing as duplicate of SERVER-9043. The flow described in the first comment explains how the CSS can be triggered to refresh.

Comment by Jordi Serra Torrens [ 12/May/21 ]

I believe flushRouterConfig is already linked on MongoD

Comment by Sergi Mateo Bellido [ 12/May/21 ]

I think it should be enough, yeah.

Comment by Kaloian Manassiev [ 11/May/21 ]

Based on our in-person discussion, I understand this is the motivation for this command:

  • We need means to reset the routing information on a shard (CatalogCache) in case we have a bug in some operations which use the shards as routers (e.g., some aggregations like $merge/$lookup or resharding): For this one I propose that we just start linking flushRouterConfig on MongoD as well.
  • We need some means to cause the filtering information to be resynced: For this one we have _flushRoutingTableCacheUpdates, which goes through onShardVersionMismatch, so in the end it still calls into the CatalogCache.

Based on this I am thinking that we could just start linking flushRouterConfig on MongoD. The combination of calling flushRouterConfig + _flushRoutingTableCacheUpdates gives the desired effect on the filtering info.

sergi.mateo-bellido, what do you think?

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