ok, so copying a shared_ptr from another thread is not always a good idea. The internal accounting is thread-safe but if you reset() or delete whilst reading, this isn't thread safe.
This is causing lots of issues for the processlist table if sessions are in constant flux (created/deleted rapidly). Hence session_dictionay.slap test was failing randomly.
The fix I have committed fixes some of this and is crashes less-often, but it still can crash in other harder to fix places.
ok, so copying a shared_ptr from another thread is not always a good idea. The internal accounting is thread-safe but if you reset() or delete whilst reading, this isn't thread safe.
This is causing lots of issues for the processlist table if sessions are in constant flux (created/deleted rapidly). Hence session_ dictionay. slap test was failing randomly.
The fix I have committed fixes some of this and is crashes less-often, but it still can crash in other harder to fix places.