[SERVER-48328] Remove index key generation error whitelist Created: 20/May/20 Updated: 29/Oct/23 Resolved: 14/Sep/20 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 4.8.0, 4.4.13 |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Louis Williams | Assignee: | Vishnu Kaushik |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | newgrad | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||
| Backwards Compatibility: | Fully Compatible | ||||
| Backport Requested: |
v4.4
|
||||
| Sprint: | Execution Team 2020-09-21 | ||||
| Participants: | |||||
| Description |
|
During index builds, we use a whilelist to determine whether an error was a key generation error or not. This whitelist was originally created for oplog application on secondaries since we apply operations out of order, but can only safely ignore specific errors. With two-phase index builds, we now ignore key generation errors on all nodes for later constraint checking. Two-phase index builds also depend heavily on this whitelist being correct since an unanticipated error can cause a crash. If we assume all non-interrupt/shutdown exceptions are key generation errors, then we can remove this fragile enumeration of safe errors and be confident no exceptions can be thrown during index builds. |
| Comments |
| Comment by Githook User [ 17/Feb/22 ] |
|
Author: {'name': 'Vishnu Kaushik', 'email': 'vishnu.kaushik@mongodb.com', 'username': 'kauboy26'}Message: (cherry picked from commit e4b7ca4206b59fe54e0da6cfe3ae03aea8114be6) |
| Comment by Githook User [ 11/Sep/20 ] |
|
Author: {'name': 'Vishnu Kaushik', 'email': 'vishnu.kaushik@mongodb.com', 'username': 'kauboy26'}Message: |