[SERVER-31161] Index created through applyOps command should not inherit collection default collation Created: 19/Sep/17 Updated: 30/Oct/23 Resolved: 10/Oct/17 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Index Maintenance |
| Affects Version/s: | 3.5.13 |
| Fix Version/s: | 3.4.14, 3.6.0-rc0 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Tess Avitabile (Inactive) | Assignee: | Tess Avitabile (Inactive) |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Operating System: | ALL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Backport Requested: |
v3.4
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Steps To Reproduce: |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Sprint: | Query 2017-10-23 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Participants: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Description |
|
An index created through the applyOps command currently inherits the collection default collation. This behavior is incorrect--replicating such an oplog entry does not cause the index to inherit the collection default collation. This is important, because for indexes with the simple collation, the collation is not specified in the oplog entry, even if the collection has a non-simple default collation. Note that this bug only applies to oplog entries phrased as insertions into system.indexes, which are only generated when the featureCompatibilityVersion is 3.4. It does not apply to oplog entries of the form:
Indexes created through the applyOps command using this style of oplog entry correctly do not inherit the collection default collation. Note also that this bug does not apply to 3.4--it only exists in master. This appears to happen because in the applyOps command, direct inserts into system.indexes cause us to run createIndexes directly on the server. This behavior was introduced in this commit. |
| Comments |
| Comment by Githook User [ 12/Feb/18 ] |
|
Author: {'email': 'louis.williams@mongodb.com', 'name': 'Louis Williams', 'username': 'louiswilliams'}Message: (cherry picked from commit 49dfa0c0e938c265f987b585f3d41ae12a64f65a) |
| Comment by David Storch [ 01/Feb/18 ] |
|
louis.williams, I don't follow your comment above. Can you elaborate? |
| Comment by Louis Williams [ 31/Jan/18 ] |
|
This is necessary because of the changes made in BACKPORT-719. |
| Comment by Githook User [ 10/Oct/17 ] |
|
Author: {'email': 'tess.avitabile@mongodb.com', 'name': 'Tess Avitabile', 'username': 'tessavitabile'}Message: |