You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
slice_directory::stop_maintenance_thread() sets atomic bool _maintenance_shutdown = true and calls notify_one() on the _maintenance_condition condition variable. This is a race condition because it doesn't acquire the condition variable mutex setting up the possibility that _maintenance_shutdown can be set to true and notify_one called after the while check in slice_directory::start_maintenance_thread but before the wait() causing it to wait forever. This then blocks the slice_directory::stop_maintenance_thread() call of join() on the main thread, blocking the shutdown of all other plugins.
Failure https://github.com/eosnetworkfoundation/mandel/runs/7143297502?check_suite_focus=true points to an issue in shutdown of the
trace_api_plugin
.slice_directory::stop_maintenance_thread()
sets atomic bool_maintenance_shutdown = true
and callsnotify_one()
on the_maintenance_condition
condition variable. This is a race condition because it doesn't acquire the condition variable mutex setting up the possibility that_maintenance_shutdown
can be set totrue
andnotify_one
called after the while check inslice_directory::start_maintenance_thread
but before thewait()
causing it to wait forever. This then blocks theslice_directory::stop_maintenance_thread()
call ofjoin()
on the main thread, blocking the shutdown of all other plugins.The text was updated successfully, but these errors were encountered: