|
SERVER-85453 modified the external data source system so that its decoration on the client cursor is effectively a unique_ptr. However, making it a unique_ptr in practice proved to unveil some scope complications that violated intentional lock/operation ordering in run_aggregate.
We should try to work around that to make it a unique_ptr so we can be confident the scope guard's lifecycle is as expected. We should also consider making it a member field in the client cursor, rather than a decoration (which will require some SCons library refactoring to avoid a dependency).
|