[SERVER-15593] Initial autosplit heuristics are very aggressive when config servers are down Created: 09/Oct/14 Updated: 11/Jul/16 Resolved: 29/Oct/14 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Sharding |
| Affects Version/s: | 2.7.7 |
| Fix Version/s: | 2.8.0-rc0 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Randolph Tan | Assignee: | Randolph Tan |
| Resolution: | Done | Votes: | 1 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Attachments: |
|
||||||||||||||||
| Issue Links: |
|
||||||||||||||||
| Operating System: | ALL | ||||||||||||||||
| Participants: | |||||||||||||||||
| Description |
|
The assumption is that lots of data will be inserted, and distributing chunks when the data size is small is much less expensive than later. However, on repeated failure, this may need to be reconsidered. |
| Comments |
| Comment by Githook User [ 29/Oct/14 ] |
|
Author: {u'username': u'renctan', u'name': u'Randolph Tan', u'email': u'randolph@10gen.com'}Message: |
| Comment by Randolph Tan [ 10/Oct/14 ] |
|
The problem here has to do with the prepare method in SyncClusterConnection (aka scc, connections for 3 config servers - https://github.com/mongodb/mongo/blob/r2.6.4/src/mongo/client/syncclusterconnection.cpp#L76) that gets called before every write to the config server. The scc appears to keep the connections within it so whenever it tries to call fsync on the downed config server, it will trigger the auto-reconnect logic, which has a backOff (https://github.com/mongodb/mongo/blob/r2.6.4/src/mongo/client/dbclient.cpp#L994) that gets longer and longer (twice every time) until it reaches the max of 1 second. |