[SERVER-46595] createIndexes command fails to abort index build when interrupted Created: 03/Mar/20 Updated: 29/Oct/23 Resolved: 07/Apr/20 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Storage |
| Affects Version/s: | None |
| Fix Version/s: | 4.4.0-rc2, 4.7.0 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Benety Goh | Assignee: | Benety Goh |
| 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: |
v4.4
|
||||||||||||||||||||||||
| Sprint: | Execution Team 2020-04-06, Execution Team 2020-04-20 | ||||||||||||||||||||||||
| Participants: | |||||||||||||||||||||||||
| Linked BF Score: | 19 | ||||||||||||||||||||||||
| Description |
|
The createIndexes command aborts the index build when it is interrupted while waiting on the Future object returned by IndexBuildsCoordinator::startIndexBuild. However, if the command is interrupted while it is still setting up the index build (here for example) the createIndexes command may fail early without aborting the index build. |
| Comments |
| Comment by Githook User [ 14/Apr/20 ] |
|
Author: {'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}Message: (cherry picked from commit 51a424b3dcd50425fd4e782b6bc072533f211c12) |
| Comment by Githook User [ 07/Apr/20 ] |
|
Author: {'name': 'Benety Goh', 'email': 'benety@mongodb.com', 'username': 'benety'}Message: |
| Comment by Benety Goh [ 03/Mar/20 ] |
|
An alternative fix could also be to avoid getting interrupted at the end of IndexBuildsCoordinatorMongod::startIndexBuild() by remove the opCtx argument to Future::getNoThrow(). |
| Comment by Benety Goh [ 03/Mar/20 ] |
|
One possible fix for this issue is to expand the scope of the exception handling blocks for Interruption-related errors to include startIndexBuild |
| Comment by Benety Goh [ 03/Mar/20 ] |
|
Linking to other abort-related tickets |