mosquitto icon indicating copy to clipboard operation
mosquitto copied to clipboard

2.0.15 regression: bridge is not created, with "Expiring client local.xxx due to timeout"

Open svet-b opened this issue 1 year ago • 2 comments

After upgrading to 2.0.15, we observed that in about 50% of cases broker bridges are not created on start-up. The log shows the message

Expiring client local.<bridge-name> due to timeout.

immediately on start-up (i.e. not after an actual conceivable timeout).

This was first reported in https://github.com/eclipse/mosquitto/issues/1334#issuecomment-1219606937 and subsequent comments in that thread (thanks @everactivetim, @vomov), though it's almost certainly a separate issue from #1334. It appears to have been an unintentional side effect of https://github.com/eclipse/mosquitto/commit/c99502a2567bf9147b3d811cb17e38ad51f08660. Indeed, the issue does not seem to occur in 2.0.14.

In our specific case this is on Linux on ARM.

svet-b avatar Sep 14 '22 19:09 svet-b

We also reverted to 2.0.14 to solve our problem.

everactivetim avatar Sep 14 '22 19:09 everactivetim

Same - had this issue and glad I saw this as I was pulling my hair out. On 2.0.15, I was only getting these logs:

2022-09-14T21:17:29: Connecting bridge lollipop_mqtt (192.168.1.208:1883)
2022-09-14T21:17:29: Warning: Unable to connect to bridge lollipop_mqtt.
2022-09-14T21:17:29: mosquitto version 2.0.15 running
2022-09-14T21:17:29: Expiring client local.3410804944a7.lollipop_mqtt due to timeout.

gerardsyd avatar Sep 15 '22 00:09 gerardsyd

Having the same problem on Windows machine:

1664897688: mosquitto version 2.0.15 starting
1664897688: Config loaded from C:\Program Files\mosquitto/mosquitto.conf.
1664897688: Opening ipv4 listen socket on port 1883.
1664897688: Bridge local.PRODUCTION-MOSQ.main doing local SUBSCRIBE on topic ets/sensors/#
1664897688: Bridge local.PRODUCTION-MOSQ.main doing local SUBSCRIBE on topic test/#
1664897688: Connecting bridge main (mqtt:8883)
1664897688: Bridge PRODUCTION-MOSQ.main sending CONNECT
1664897688: mosquitto version 2.0.15 running
1664897688: Expiring client local.PRODUCTION-MOSQ.main due to timeout.

haizz avatar Oct 04 '22 15:10 haizz

Same issue

1666866838: Config loaded from /mosquitto/config/mosquitto.conf.
1666866838: Opening ipv4 listen socket on port 1886.
1666866838: Opening ipv6 listen socket on port 1886.
1666866838: Connecting bridge mosquitto-device-5 (xxx)
1666866838: mosquitto version 2.0.15 running
1666866839: Expiring client local.mosquitto-device-5 due to timeout.
1666866839: New connection from ::1:51704 on port 1886.
1666866839: New connection from ::1:51706 on port 1886.
1666866839: New client connected from ::1:51704 as sparkplug-maestro (p2, c1, k3000).
1666866839: New client connected from ::1:51706 as old-maestro (p2, c1, k60).
1666866841: New connection from 127.0.0.1:40616 on port 1886.
1666866841: New client connected from 127.0.0.1:40616 as processor (p2, c1, k20).```

jld-adriano avatar Oct 27 '22 10:10 jld-adriano

I'm pretty sure I was seeing this as well today. That "expiring client local.blah due to timeout", and with zero extra info available. In my case I was only bridging to a same network, 192.168.blah, no encryption, and restarting fixed things, couldn't figure it out. I'll hopefully be able to collect more information though.

karlp avatar Oct 27 '22 23:10 karlp

In my case it happens every 2nd reboot, on the clock. Reboot -> expires, reboot -> works , reboot -> expires, etc...

jld-adriano avatar Oct 28 '22 00:10 jld-adriano