[SERVER-10262] mongos assertion triggers "Assertion: 16634:field names of bound { yearMonthDay: MinKey } do not match those of keyPattern { _id: 1.0 }" Created: 19/Jul/13 Updated: 19/Jul/13 Resolved: 19/Jul/13 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | 2.4.5 |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Chad Tindel | Assignee: | Unassigned |
| Resolution: | Duplicate | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Operating System: | ALL | ||||||||
| Participants: | |||||||||
| Description |
|
I'm playing with shard tagging. I'm pretty sure I did something incorrectly, but the shell gave no error and I don't think I should be able to make mongos trigger an assertion by misconfiguring something using shell commands. Here's the details: Assertion: 16634:field names of bound { yearMonthDay: MinKey }do not match those of keyPattern { _id: 1.0 }> sh.status() databases: { "_id" : "admin", "partitioned" : false, "primary" : "config" } { "_id" : "uhg", "partitioned" : true, "primary" : "fast1" } uhg.claims chunks: } -->> { "_id" : { "$maxKey" : 1 }} on : fast1 { "t" : 1, "i" : 0 }tag: slow { "yearMonthDay" : { "$minKey" : 1 }} -->> { "yearMonthDay" : "20110719" }tag: fast { "yearMonthDay" : "20110720" }-->> { "yearMonthDay" : { "$maxKey" : 1 }} I'm guessing the bug is "the shell should not have let me do this configuration which resulted in a later assertion triggering". Let me know if you need more info. Fri Jul 19 11:41:56.161 [Balancer] Assertion: 16634:field names of bound { yearMonthDay: MinKey }do not match those of keyPattern { _id: 1.0 }0x1002a106b 0x10027d71e 0x10027d7dd 0x1000f256e 0x10016216e 0x10015fae6 0x10027edb5 0x10027f4ea 0x10027f5b6 0x10027f676 0x1002d39e5 0x7fff8e2e67a2 0x7fff8e2d31e1 |
| Comments |
| Comment by Scott Hernandez (Inactive) [ 19/Jul/13 ] |
|
This is the current design but we are planning to address some of this, but the short of it is that validation is currently only done at runtime. see |