From c74b1cfb0fc0bba715a0e96c1e7abf7c86e5ea05 Mon Sep 17 00:00:00 2001 From: root Date: Fri, 24 Apr 2026 21:30:42 +0800 Subject: [PATCH] docs: update node management tasktracking with v1.6.4 fix --- .../2026-04-24-node-management-sidebar.md | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/docs/Tasktracking/2026-04-24-node-management-sidebar.md b/docs/Tasktracking/2026-04-24-node-management-sidebar.md index f8941c47..cf3b5ce2 100644 --- a/docs/Tasktracking/2026-04-24-node-management-sidebar.md +++ b/docs/Tasktracking/2026-04-24-node-management-sidebar.md @@ -3,7 +3,7 @@ **Date:** 2026-04-24 **Branch:** fix **Status:** Done -**Tags:** v1.6.0-beta, v1.6.1, v1.6.3 +**Tags:** v1.6.0-beta, v1.6.1, v1.6.3, v1.6.4 ## Overview @@ -24,6 +24,7 @@ Adding a Node Management sidebar page to the 3x-ui web panel for cluster node vi | 9 | Fix gofmt formatting | DONE | a3d8e9c5 | | 10 | Fix shared MariaDB query for node states | DONE | d5bf2858 | | 11 | Fix node settings not auto-created in x-ui.json | DONE | d733ff2a | +| 12 | Fix master heartbeat not visible to workers | DONE | 226bae2b | ## v1.6.3 Fix Details @@ -37,6 +38,17 @@ Adding a Node Management sidebar page to the 3x-ui web panel for cluster node vi - Updated `settingGroupAliases` in `config/config.go` to look in `"node"` first, then `"other"` for backward compat - Updated `ensureDefaultNodeSettings` to write to `"node"` group +## v1.6.4 Fix Details + +**Problem:** Worker node page showed no connected master node, even though master had nodeId configured and was running. + +**Root cause:** `updateNodeState()` in `node_sync.go` wrote heartbeats to `database.GetDB()` — the local SQLite for a master using SQLite. Workers query the shared MariaDB via `getNodeStatesFromShared()`, so the master's heartbeat was never visible to workers. + +**Fix (commit 226bae2b):** +- Master now also writes heartbeat to shared MariaDB via `writeStateToSharedMariaDB()` when MariaDB connection settings are configured +- Check uses `dbUser` (no default value) as the most reliable indicator that MariaDB is configured +- This works even when `dbType` is "sqlite" (master uses SQLite locally but has shared MariaDB settings) + ## Task 2 Details **File created:** `web/controller/node.go`