Page MenuHomePhabricator

Move scheduler/threadGroup into common-init instead of per-app
ClosedPublic

Authored by jasonbcox on Mon, Jan 7, 06:46.

Details

Summary

This resolves #12229 which pointed out a shutdown deadlock due to
scheduler/checkqueue having been shut down while network message
processing is still running.

Backport of Core PR 12266
T507

Test Plan

The bug this fixes is difficult to reproduce, so I did the following to verify that nothing is obviously broken:
test_runner.py passes
bitcoin-qt validating that it starts, can be used normally, and shuts down without issue.

Diff Detail

Repository
rABC Bitcoin ABC
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

jasonbcox created this revision.Mon, Jan 7, 06:46
Herald added a reviewer: Restricted Project. · View Herald TranscriptMon, Jan 7, 06:46
Herald added a subscriber: schancel. · View Herald Transcript
deadalnix accepted this revision.Mon, Jan 7, 23:18
This revision is now accepted and ready to land.Mon, Jan 7, 23:18
Closed by commit rABCa9d157640140: Move scheduler/threadGroup into common-init instead of per-app (authored by Matt Corallo <git@bluematt.me>, committed by jasonbcox). · Explain WhyTue, Jan 8, 19:19
This revision was automatically updated to reflect the committed changes.