[SERVER-12234] MongoS connections that persist across an upgrade become stale and can cause subsequent operations to fail Created: 02/Jan/14 Updated: 05/May/14 Resolved: 29/Jan/14 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Sharding |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | sam.helman@10gen.com | Assignee: | Greg Studer |
| Resolution: | Duplicate | Votes: | 0 |
| Labels: | 26qa | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Attachments: |
|
||||||||||||
| Issue Links: |
|
||||||||||||
| Operating System: | ALL | ||||||||||||
| Participants: | |||||||||||||
| Description |
|
After an upgrade of a sharded cluster, the MongoS' connections to the newly-restarted MongoDs are stale. If subsequent operations are performed before the stale connections are flushed from the pool, then the operations can fail. The attached test case works because it sleeps for 5 seconds after the upgrade (allowing some stale connections to be reaped), and then retries connecting to run its count() operation. If the retry wrapper (the assert.soon()) is removed, the count() fails because the first connection it uses is still stale. |