Skip to content

fix: scope storage-node cluster status updates to the node's cluster - #1253

Merged
mxsrc merged 1 commit into
mainfrom
fix-storage-node-monitor
Aug 19, 2026
Merged

fix: scope storage-node cluster status updates to the node's cluster#1253
mxsrc merged 1 commit into
mainfrom
fix-storage-node-monitor

Conversation

@mxsrc

@mxsrc mxsrc commented Aug 19, 2026

Copy link
Copy Markdown
Collaborator

set_node_unreachable, set_node_schedulable and set_node_down called update_cluster_status(cluster_id) where cluster_id was not a parameter or a local but a module global, left behind by the monitor's top-level loop as it iterated clusters.

Those three functions run on the per-node worker threads started by loop_for_node, so on a management plane serving more than one cluster they read whichever cluster the main loop happened to be on at that instant: a node going unreachable in cluster A could drive a status recalculation for cluster B, and which one it hit depended on thread timing.

Each node already carries its own cluster_id, and line 1042 in this same file already used it. Use it at the other three sites too.

set_node_unreachable, set_node_schedulable and set_node_down called
update_cluster_status(cluster_id) where `cluster_id` was not a parameter or a
local but a module global, left behind by the monitor's top-level loop as it
iterated clusters.

Those three functions run on the per-node worker threads started by
loop_for_node, so on a management plane serving more than one cluster they read
whichever cluster the main loop happened to be on at that instant: a node going
unreachable in cluster A could drive a status recalculation for cluster B, and
which one it hit depended on thread timing.

Each node already carries its own cluster_id, and line 1042 in this same file
already used it. Use it at the other three sites too.
@mxsrc
mxsrc merged commit df66ed2 into main Aug 19, 2026
9 of 11 checks passed
@mxsrc
mxsrc deleted the fix-storage-node-monitor branch August 19, 2026 09:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant