From fbc455cbd224aaf28c613ed92bbaee656291efec Mon Sep 17 00:00:00 2001 From: David Goulet Date: Wed, 31 Jan 2018 14:15:02 -0500 Subject: ns: Add a before and after consensus has changed notification In 0.3.2.1-alpha, we've added notify_networkstatus_changed() in order to have a way to notify other subsystems that the consensus just changed. The old and new consensus are passed to it. Before this patch, this was done _before_ the new consensus was set globally (thus NOT accessible by getting the latest consensus). The scheduler notification was assuming that it was set and select_scheduler() is looking at the latest consensus to get the parameters it might needs. This was very wrong because at that point it is still the old consensus set globally. This commit changes the notify_networkstatus_changed() to be the "before" function and adds an "after" notification from which the scheduler subsystem is notified. Fixes #24975 --- changes/bug24975 | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 changes/bug24975 (limited to 'changes') diff --git a/changes/bug24975 b/changes/bug24975 new file mode 100644 index 0000000000..32a5dfc929 --- /dev/null +++ b/changes/bug24975 @@ -0,0 +1,6 @@ + o Major bugfixes (scheduler, consensus): + - A logic in the code was preventing the scheduler subystem to properly + make a decision based on the latest consensus when it arrives. This lead + to the scheduler failing to notice any consensus parameters that might + have changed between consensuses. Fixes bug 24975; bugfix on + 0.3.2.1-alpha. -- cgit v1.2.3-54-g00ecf