[SERVER-25665] Make splitChunk and moveChunk commands interpret and check the chunkVersion field Created: 17/Aug/16  Updated: 19/Nov/16  Resolved: 02/Nov/16

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

Type: Improvement Priority: Major - P3
Reporter: Kaloian Manassiev Assignee: Kaloian Manassiev
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
is related to SERVER-25527 Send the version of the chunk being m... Closed
Backwards Compatibility: Fully Compatible
Sprint: Sharding 2016-10-10, Sharding 2016-10-31, Sharding 2016-11-21
Participants:

 Description   

This ticket is the shard-side counterpart of SERVER-25527. We should change the logic of splitChunk and moveChunk to check for the presence of the chunkVersion field as part of the request and if it is present to ensure that the chunk being changed has the matching version instead of just checking the collection version.

This is necessary in order to be able to get rid of the collection distributed lock during these operations and to make them idempotent.



 Comments   
Comment by Githook User [ 02/Nov/16 ]

Author:

{u'username': u'kaloianm', u'name': u'Kaloian Manassiev', u'email': u'kaloian.manassiev@mongodb.com'}

Message: SERVER-25665 Make splitChunk and moveChunk commands use 'chunkVersion'

This change makes the collection metadata on the shard also include the
chunk version and makes the splitChunk and moveChunk commands use it when
checking for consistency.
Branch: master
https://github.com/mongodb/mongo/commit/f0ada5e29eb5218c257897bfd1a8fb1e36e06733

Comment by Githook User [ 28/Oct/16 ]

Author:

{u'username': u'kaloianm', u'name': u'Kaloian Manassiev', u'email': u'kaloian.manassiev@mongodb.com'}

Message: SERVER-25665 Cleanup chunk metadata caching library dependencies

No functional changes. Removes unused includes and libraries and moves
cluster_write.cpp to be only part of the mongos commands since it is not
used elsewhere.
Branch: master
https://github.com/mongodb/mongo/commit/cd9e8e08276dee0d6232042a46d2b78799e33787

Comment by Githook User [ 18/Oct/16 ]

Author:

{u'username': u'kaloianm', u'name': u'Kaloian Manassiev', u'email': u'kaloian.manassiev@mongodb.com'}

Message: SERVER-25665 Persist chunk version as part of the active migration document
Branch: master
https://github.com/mongodb/mongo/commit/a0fd9c9714cdcd6be7eae05c31a578c17ed6d780

Comment by Githook User [ 10/Oct/16 ]

Author:

{u'username': u'kaloianm', u'name': u'Kaloian Manassiev', u'email': u'kaloian.manassiev@mongodb.com'}

Message: SERVER-25665 Remove cloneSplit and cloneMerge from CollectionMetadata
Branch: master
https://github.com/mongodb/mongo/commit/a43da01b5124d89dea500819cbac0e55eb76961a

Generated at Thu Feb 08 04:09:50 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.