[SERVER-4220] refactor getChunkManager() and sharding code to better handle parallel queries. Created: 07/Nov/11 Updated: 11/Jul/16 Resolved: 28/Feb/12 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Sharding |
| Affects Version/s: | None |
| Fix Version/s: | 2.1.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: |
|
||||||||||||||||||||||||||||||||
| Operating System: | ALL | ||||||||||||||||||||||||||||||||
| Participants: | |||||||||||||||||||||||||||||||||
| Description |
|
This ticket has turned into a more general refactoring of the parallel cursor code, minimizing the use of getChunkManager(), but also includes the original issue: getChunkManager()'s failure mode is to throw masserts, which is incorrect as changes in sharding are not generally exception cases - this leads to very ugly logs and confusing codepaths. Also, there are various configurable levels of reloading for getChunkManager(), these should be clearer and encapsulated. |
| Comments |
| Comment by Greg Studer [ 28/Feb/12 ] |
|
This issue is essentially fixed - will open a new ticket to track more specific refactoring. |
| Comment by auto [ 29/Dec/11 ] |
|
Author: {u'login': u'gregstuder', u'name': u'gregs', u'email': u'greg@10gen.com'}Message: |
| Comment by auto [ 21/Dec/11 ] |
|
Author: {u'login': u'gregstuder', u'name': u'Greg Studer', u'email': u'greg@10gen.com'}Message: |
| Comment by auto [ 15/Dec/11 ] |
|
Author: {u'login': u'gregstuder', u'name': u'Greg Studer', u'email': u'greg@10gen.com'}Message: |
| Comment by auto [ 14/Dec/11 ] |
|
Author: {u'login': u'gregstuder', u'name': u'gregs', u'email': u'greg@10gen.com'}Message: allow commands to be run sharded via ParallelCursor |
| Comment by auto [ 14/Dec/11 ] |
|
Author: {u'login': u'gregstuder', u'name': u'Greg Studer', u'email': u'greg@10gen.com'}Message: |
| Comment by auto [ 14/Dec/11 ] |
|
Author: {u'login': u'gregstuder', u'name': u'gregs', u'email': u'greg@10gen.com'}Message: allow non-lazy cursors via sharded pcursors |
| Comment by auto [ 14/Dec/11 ] |
|
Author: {u'login': u'gregstuder', u'name': u'Greg Studer', u'email': u'greg@10gen.com'}Message: |
| Comment by auto [ 14/Dec/11 ] |
|
Author: {u'login': u'gregstuder', u'name': u'Greg Studer', u'email': u'greg@10gen.com'}Message: consistent initialization of parallel cursor across shards |
| Comment by auto [ 14/Dec/11 ] |
|
Author: {u'login': u'gregstuder', u'name': u'Greg Studer', u'email': u'greg@10gen.com'}Message: |
| Comment by auto [ 14/Dec/11 ] |
|
Author: {u'login': u'gregstuder', u'name': u'gregs', u'email': u'greg@10gen.com'}Message: add ChunkManager to ShardConnection |
| Comment by auto [ 09/Nov/11 ] |
|
Author: {u'login': u'gregstuder', u'name': u'gregs', u'email': u'greg@10gen.com'}Message: add compatibleWith api to chunkmanager |
| Comment by auto [ 09/Nov/11 ] |
|
Author: {u'login': u'gregstuder', u'name': u'gregs', u'email': u'greg@10gen.com'}Message: make ns functions usable elsewhere |