Details
-
Type:
Bug
-
Status: Closed (View Workflow)
-
Priority:
Major
-
Resolution: Unresolved
-
Affects Version/s: 1.2.5, 1.4.3, 1.5.3
-
Fix Version/s: Icebox
-
Component/s: writeengine
-
Labels:None
Description
Related to MCOL-3999 discovered when failover was trying to reinit WES and not restart.
FileOp::initDbRootExtentMutexes( )
only creates mutexes for dbroots the first time its executed and only creates mutexes
if m_DbRootAddExtentMutexes.size() == 0
This means that if a dbroot is added to a module and WES is not restarted you will see this error in logging:
Jun 12 11:32:31 testPM3 writeengine[16121]: 31.763854 |0|0|0| E 19 CAL0001: we_readthread caught exception boost unique_lock has no mutex: Operation not permitted
Proposed fix is to check if number of dbroots is not equal to number of extent mutexes and reset and rebuild if a change is detected.