[SERVER-6357] Add tag based sharding commands Created: 09/Jul/12  Updated: 06/Dec/22  Resolved: 08/Mar/17

Status: Closed
Project: Core Server
Component/s: Admin, Sharding
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Major - P3
Reporter: Scott Hernandez (Inactive) Assignee: [DO NOT USE] Backlog - Sharding Team
Resolution: Duplicate Votes: 3
Labels: PM497, commands, mongos, sharding
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by SERVER-6943 addTagRegion/addShardTag fail with 3 ... Closed
Duplicate
is duplicated by SERVER-10262 mongos assertion triggers "Assertion:... Closed
is duplicated by SERVER-12603 Improve handling of wrong tag ranges Closed
is duplicated by SERVER-22189 addShardTag &addTagRange not availabl... Closed
Related
related to SERVER-6349 sh.addTagRange() doesn't valid namesp... Closed
related to SERVER-6350 Do not allow completely removing tag ... Closed
related to SERVER-12141 Cannot create appropriate tag ranges ... Closed
related to SERVER-6352 Add sh.removeTagRange(ns, min, max, tag) Closed
related to SERVER-6574 Make error message better when tags a... Closed
related to SERVER-9371 addTagRange should prevent min and ma... Closed
is related to SERVER-19131 clusterManager role does not have per... Closed
is related to SERVER-22108 MongoDB does not raise an exception w... Closed
is related to SERVER-16340 Mongo shell javascript sharding admin... Closed
is related to SERVER-6999 Embedded "dot-notation" fields broken... Closed
is related to SERVER-19150 sh.addTagRange does not check for dat... Closed
Assigned Teams:
Sharding
Backwards Compatibility: Fully Compatible
Participants:

 Description   

Create commands to replace current shell development prototypes:

{ tagShard : <shard-name>, tag: [tags]/<tag> }
{ untagShard : <shard-name>, tag: [tags]/<tag> }}
{ tagChunks : <ns>, range: { min/max : {<shard-key value>} }, tag: <tag>}

The tagChunk commands should validate that the namespace is valid, that the tag exists on some shard, that the min/max value is of the correct format and defines a value in the shard-key (if a prefix is used then $Min/MaxKey can be added for the missing fields), and that there are not overlapping ranges; if any of these validations fail then the commands should return an error.

These commands are critical to support other clients than the shell, like all drivers, and is necessary for centralizing logic and behavior at the mongos codebase.

The commands should also make sure that chunk boundaries line up with the new tags ranges.



 Comments   
Comment by Scott Hernandez (Inactive) [ 23/Apr/13 ]

Looking at the naming again I think we might want to use these:

  • TagShard – {{ {TagShard:<shard>, tags:..}

    }}

  • UntagShard
  • TagChunks – {{ {TagChunks:<ns>, min/max:.., tag:...}

    }}

  • UntagChunks

The js helpers are currently addShardTag and addTagRange so this is fairly consistent with the suggested naming scheme.

Comment by auto [ 30/Jan/13 ]

Author:

{u'date': u'2013-01-25T19:46:37Z', u'email': u'epc@10gen.com', u'name': u'Ed Costello'}

Message: Add todo linking SERVER-6357
Branch: master
https://github.com/mongodb/docs/commit/06166d4ba10373df6fb71122e4ad5d6e60b36b07

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