[SERVER-27475] mongos should request an update only of the collection not found Created: 20/Dec/16  Updated: 20/Mar/17  Resolved: 20/Mar/17

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

Type: Improvement Priority: Major - P3
Reporter: Nathan Myers Assignee: Kaloian Manassiev
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by SERVER-27474 Eliminate "dropped" collections from ... Closed
Duplicate
duplicates SERVER-27681 Better concurrency control on shard m... Closed
Related
is related to SERVER-27393 Balancer taking 100% CPU due to large... Closed
Participants:

 Description   

In releases <= 3.4.x, when mongos gets an error from a shard reporting that a collection requested does not exist on the shard, it retrieves the entire list of collections from the config server. It depends on having collections that have been dropped marked as such, so that it can remove corresponding entries, and chunks, from its cache. As a consequence, "dropped" collections accumulate in the collections list, and are never cleaned up.

In 3.6, mongos should ask the config server only about the collection that had the failure. Mongos and the balancer still need to filter out entries marked as dropped, because they will still see them, until 3.8; and the 3.6 config server still needs to mark dropped collections in its collections list, so it can serve them to 3.4 mongos.

Entries for dropped collections can be scrubbed from the collections list in 3.8, because the 3.6 mongos will not be looking for them. See SERVER-27474.



 Comments   
Comment by Kaloian Manassiev [ 20/Mar/17 ]

With the switch to use the CatalogCache to do metadata refresh, this is no longer a problem.

Comment by Nathan Myers [ 20/Dec/16 ]

see SERVER-27393 for problem fixed in 3.4.x caused by retaining records of dropped collections.

Generated at Thu Feb 08 04:15:16 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.