mqttagent

MQTT Lua Agent
git clone https://git.instinctive.eu/mqttagent.git
Log | Files | Refs | README | LICENSE

commit 75c71528fa1dcae8f0e9b61d543f283c15cca6d6
parent 41db920dfc7261620d9c789e5d497fd41dec8bdf
Author: Natasha Kerensikova <natgh@instinctive.eu>
Date:   Wed, 14 May 2025 17:54:33 +0000

Disconnect rather than close clients obsolete after reload
Diffstat:
Mmqttagent.go | 4+++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/mqttagent.go b/mqttagent.go @@ -406,7 +406,9 @@ func statePartialCleanup(staleL, keptL *lua.LState) { tbl := value.(*lua.LTable) client := staleL.RawGetInt(tbl, keyClient).(*lua.LUserData).Value.(*mqtt.Client) close(staleL.RawGetInt(tbl, keyCloseSig).(*lua.LUserData).Value.(chan struct{})) - client.Close() + if err := client.Disconnect(nil); err != nil { + log.Printf("cleanup stale client %s: %v", lua.LVAsString(key), err) + } } })