[SERVER-9909] Balancer round aborted with idle sharded collection Created: 12/Jun/13  Updated: 11/Jul/16  Resolved: 13/Jun/13

Status: Closed
Project: Core Server
Component/s: Sharding
Affects Version/s: 2.5.0
Fix Version/s: 2.4.5, 2.5.1

Type: Bug Priority: Major - P3
Reporter: Greg Studer Assignee: Greg Studer
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
Operating System: ALL
Participants:

 Description   

In order to guarantee fair balancing, the balancer tries to move one-chunk-per-collection-per-round. However, if when the balancer tries to load information on a newly-sharded collection it doesn't know about, an exception is thrown that aborts the round (Balancer::_moveChunks() calls getChunkManager(), which throws).

Solution is to use getChunkManagerIfExists(), which does not throw, and pass in reload=true to make the Balancer load the ChunkManager even if the collection is idle.



 Comments   
Comment by auto [ 19/Jun/13 ]

Author:

{u'username': u'gregstuder', u'name': u'Greg Studer', u'email': u'greg@10gen.com'}

Message: SERVER-9909 balancer reload idle sharded coll data, and don't abort round

Conflicts:

src/mongo/s/grid.cpp
Branch: v2.4
https://github.com/mongodb/mongo/commit/42980b6c626bcf130cc72bc441285fd8bb0f17f3

Comment by auto [ 13/Jun/13 ]

Author:

{u'username': u'gregstuder', u'name': u'Greg Studer', u'email': u'greg@10gen.com'}

Message: SERVER-9909 balancer reload idle sharded coll data, and don't abort round
Branch: master
https://github.com/mongodb/mongo/commit/01e4e857be20365b72867458b1a7f48fd8b1c689

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