Commit graph

13 commits

Author SHA1 Message Date
Roger A. Light
0c0683094b Allow plugins to choose when their tick event is next called 2025-07-10 21:06:01 +01:00
Norbert Heusser
424df70395 Add support for will message to persistence API and Sqlite3 persistence plugin
Signed-off-by: Norbert Heusser <norbert.heusser@cedalo.com>
2025-07-10 00:52:33 +01:00
Norbert Heusser
b8564daa20 Fixed deletion of expired session after restore from persistence plugin
Signed-off-by: Norbert Heusser <norbert.heusser@cedalo.com>
2024-03-12 07:54:18 +00:00
Norbert Heusser
3656b991d5 Refactoring persist-sqlite plugin and moved functionality from
handle_connect.c into database.c

Signed-off-by: Norbert Heusser <norbert.heusser@cedalo.com>
2024-02-15 22:43:28 +00:00
Roger A. Light
fd330de080 client_id -> clientid rename. 2023-01-16 18:46:35 +00:00
Roger A. Light
2bfb0dc022 sqlite: client_msgs are only ever all cleared 2022-10-11 21:49:33 +01:00
Roger A. Light
16feb14a57 Persistence interface updates and sqlite plugin fixes
The MOSQ_EVT_PERSIST_CLIENT_MSG_CLEAR event has been removed, due to
never being called. It is the responsibility of the plugin to remove
client subscriptions and client messages when the client is removed.

Lots of persist test improvements and additions - mostly checking item
counts.
2022-10-09 22:17:47 +01:00
Abilio Marques
82b6eaa31d Persist-sqlite: add flush_period and page_size options
Signed-off-by: Abilio Marques <abiliojr@gmail.com>
2022-04-29 07:35:47 +02:00
Roger A. Light
7939633114 Optimise persist client msg clearing. 2022-03-18 11:08:18 +00:00
Roger A. Light
cbb01193a0 Rename persist retain_add to retain_set 2022-03-01 20:55:56 +00:00
Roger A. Light
2d3b152a22 Rename of mosquitto_msg_store struct.
struct mosquitto_msg_store -> struct mosquitto_base_msg

This is the base message which client messages and retained messages
refer to. The base messages are still held in the message store.

This change comes about because the persistence interface exposes these
message types. Prior to this commit the different messages were "msg",
"client_msg", and "retain". After this commit there is "base_msg",
"client_msg", and and "retain_msg" in the persist interface.
2022-03-01 10:44:47 +00:00
Roger A. Light
d2f598b6f6 persist-sqlite: commit transactions once every 5 seconds 2022-03-01 10:44:47 +00:00
Roger A. Light
dc906c5221 Sqlite persistence plugin. 2022-01-09 23:54:09 +00:00