-
Type: Bug
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: 3.4.4, 3.5.6
-
Component/s: Replication
-
None
-
Fully Compatible
-
15
_startupComponent currently resets the unique_ptr if the component's startup() returns an error but not when the parent component is shutting down. This usually doesn't pose a problem except when the sub component is holding some resource that needs to be released if we decide not to proceed with calling its startup().
initial_syncer.cpp
template <typename Component> Status InitialSyncer::_startupComponent_inlock(Component& component) { if (_isShuttingDown_inlock()) { return Status(ErrorCodes::CallbackCanceled, "initial syncer shutdown while trying to call startup() on component"); } auto status = component->startup(); if (!status.isOK()) { component.reset(); } return status; }
- is related to
-
SERVER-28214 Recoverable Rollback: Fallback to 3.4 rollback implementation where necessary
- Closed