github mochi-mqtt/server v2.2.0

latest releases: v2.6.3, v2.6.2, v2.6.1...
15 months ago

What's Changed

  • Add Clone to system.Info by @thedevop in #163
    • Adds a new Clone method to system.Info to make a copy of the system info values.
  • Client write buffers by @mochi-co in #165
    • Removes the fixed fanpool worker pool in exchange for writing directly to the clients via client-specific buffered write channels. In the event that a client's write buffer is full, in such an event as a slow reading client, the message is dropped and the new OnPublishDropped hook is called. If the message was QoS 1 or 2, the inflight is rolled back and the message is treated as unattempted.
    • Adds a new OnPublishDropped hook which is called when message delivery was not attempted or rolled back due to irregular client behaviour (such as slow reads on the client side).
    • Improves performance for mid-level throughput.
  • Removes refreshDeadline call from client write, which caused some disconnected clients to remain online indefinitely, by @mochi-co per #156
  • No longer issue retained messages on session takeover by @mochi-co in #166
    • After an investigation into the issues seen in #153, the cause is determined to be a misreading of the specification regarding the issuance of retained messages on session takeover, confirmed in this comment by Andy Stanford-Clark As such, we will no longer issue retained messages when a session takeover occurs. QoS Inflight queueing continues to behave as expected.

Full Changelog: v2.1.8...v2.2.0

Tests

  • Builds
  • Unit Tests Passing
  • Paho Interoperability Passing

Don't miss a new server release

NewReleases is sending notifications on new releases.