...
BugZero found this defect 2611 days ago.
One assumption for the RAII database lock types was that destruction order is always the reverse of construction order. However, with increasing usage of unique_ptr and boost::optional for more dynamic locking, we need additional checking that locking semantics are not violated.