[SERVER-21593] findAndModify on v3.0 mongos and v3.2 cluster can return stale config error to the user Created: 20/Nov/15  Updated: 24/Nov/15  Resolved: 24/Nov/15

Status: Closed
Project: Core Server
Component/s: Sharding
Affects Version/s: 3.2.0-rc3
Fix Version/s: None

Type: Bug Priority: Major - P3
Reporter: Randolph Tan Assignee: Kaloian Manassiev
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Text File repro.patch    
Issue Links:
Duplicate
duplicates SERVER-21639 Command::execCommand should let shard... Closed
Related
is related to SERVER-21586 Investigate v3.0 mongos and v3.2 clus... Closed
Operating System: ALL
Steps To Reproduce:

Run find_and_modify_after_multi_write.js with v3.0 mongos on v3.2 cluster

Sprint: Sharding D (12/11/15)
Participants:

 Description   

Error: stale config in runCommand ( ns : test.user, received : 3|0||564f49c33a458b8183db9e89, wanted : 4|0||564f49c33a458b8183db9e89, recv )



 Comments   
Comment by Randolph Tan [ 23/Nov/15 ]

Attached patch file for repro

Comment by Randolph Tan [ 20/Nov/15 ]

spencer The test exists both on v3.2 and v3.0. And both handles the stale exception correctly if all binaries are of the same version.

Updated description to be more explicit

Comment by Spencer Brody (Inactive) [ 20/Nov/15 ]

renctan, is this specific to mixed-version clusters? Ie 3.0 mongos with 3.2 shards? Or can it happen with all 3.0 or all 3.2 processes?

Comment by Randolph Tan [ 20/Nov/15 ]

In a successful run of find_and_modify_after_multi_write.js in v3.0, it was throwing SendStale exception here:

https://github.com/mongodb/mongo/blob/r3.0.7/src/mongo/s/version_manager.cpp#L295

Forcing the command to be re-executed again.

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