[SERVER-35970] Use regular Locker during storage engine initialization Created: 05/Jul/18 Updated: 29/Oct/23 Resolved: 19/Sep/20 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Storage |
| Affects Version/s: | None |
| Fix Version/s: | 4.8.0 |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Dianna Hohensee (Inactive) | Assignee: | Gregory Wlodarek |
| Resolution: | Fixed | Votes: | 1 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||||||
| Sprint: | Execution Team 2020-09-21, Execution Team 2020-10-05 | ||||||||||||||||||||
| Participants: | |||||||||||||||||||||
| Description |
|
LockerNoop is used both in production and unit testing. Certain LockerNoop functions return static values to facilitate unit tests. It is dangerous to use LockerNoop for both purposes, in case a naive test framework (LockerNoop) change introduces a production problem. A new barebones Locker implementation should be created just for production, and LockerNoop updated accordingly. Should also look at other Noop classes, to determine whether there are other crossovers between testing and production that could become similarly unsafe – like OperationContextNoop. I'm unsure whether LockerNoop should ultimately be the just for test or just for production version, once we have a new implementation. It's a naming convention choice. |
| Comments |
| Comment by Githook User [ 19/Sep/20 ] |
|
Author: {'name': 'Gregory Wlodarek', 'email': 'gregory.wlodarek@mongodb.com', 'username': 'GWlodarek'}Message: |
| Comment by Githook User [ 19/Sep/20 ] |
|
Author: {'name': 'Gregory Wlodarek', 'email': 'gregory.wlodarek@mongodb.com', 'username': 'GWlodarek'}Message: |
| Comment by Eric Milkie [ 06/Jul/18 ] |
|
Shouldn’t be hard. I should have said “alternative work for this ticket that we will be doing instead” |
| Comment by Andy Schwerin [ 06/Jul/18 ] |
|
That alternative sounds much better to me. What makes it hard? |
| Comment by Eric Milkie [ 06/Jul/18 ] |
|
Alternative consideration: move lock manager initialization earlier in startup so that storage engine can use regular Locker during its initialization. |