[SERVER-20036] Add interruption points to operations that hold distributed locks for a long time Created: 19/Aug/15 Updated: 25/Jan/17 Resolved: 21/Jan/16 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Sharding |
| Affects Version/s: | None |
| Fix Version/s: | 3.2.3, 3.3.1 |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Andy Schwerin | Assignee: | Spencer Brody (Inactive) |
| Resolution: | Done | Votes: | 0 |
| Labels: | code-only, csrsupgrade | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||
| Backport Completed: | |||||||||||||
| Sprint: | Sharding 9 (09/18/15), Sharding E (01/08/16), Sharding F (01/29/16) | ||||||||||||
| Participants: | |||||||||||||
| Linked BF Score: | 0 | ||||||||||||
| Description |
|
Operations in sharding that hold distributed locks for a long time without contacting the config server, such as chunk migration, need to periodically confirm that the config servers have not been converted from SCCC to CSRS or vice versa. Such upgrades and downgrades ensure that these operations will eventually fail, but if the node does not check during the operation, it may prevent other new operations from making progress, since it blocks the local node from switching out its catalog manager implementation. |
| Comments |
| Comment by Githook User [ 21/Jan/16 ] |
|
Author: {u'username': u'stbrody', u'name': u'Spencer T Brody', u'email': u'spencer@mongodb.com'}Message: (cherry picked from commit 6139a33b400ecd23ee8536da74232f70df0f76c6) |
| Comment by Githook User [ 21/Jan/16 ] |
|
Author: {u'username': u'stbrody', u'name': u'Spencer T Brody', u'email': u'spencer@mongodb.com'}Message: |
| Comment by Githook User [ 21/Jan/16 ] |
|
Author: {u'username': u'stbrody', u'name': u'Spencer T Brody', u'email': u'spencer@mongodb.com'}Message: (cherry picked from commit 38740c56f64ba791a681885737f975eb79640a0a) |
| Comment by Githook User [ 21/Jan/16 ] |
|
Author: {u'username': u'stbrody', u'name': u'Spencer T Brody', u'email': u'spencer@mongodb.com'}Message: |
| Comment by Githook User [ 04/Sep/15 ] |
|
Author: {u'username': u'stbrody', u'name': u'Spencer T Brody', u'email': u'spencer@mongodb.com'}Message: |
| Comment by Spencer Brody (Inactive) [ 03/Sep/15 ] |
|
It doesn't look like there's any real way to interrupt the movePrimary or mapReduce commands as they take the distlock in mongos but perform most of their work on mongod |
| Comment by Githook User [ 03/Sep/15 ] |
|
Author: {u'username': u'stbrody', u'name': u'Spencer T Brody', u'email': u'spencer@mongodb.com'}Message: |
| Comment by Githook User [ 02/Sep/15 ] |
|
Author: {u'username': u'stbrody', u'name': u'Spencer T Brody', u'email': u'spencer@mongodb.com'}Message: |