6.5.0 to 6.6.0
Removal and deprecation¶
The following features are removed or deprecated.
MS SQL and ODBC are no longer supported¶
The Microsoft SQL Server database is no longer supported, and you cannot set the RDBMS driver to odbc anymore.
In case you used this database, you need to migrate to another supported RDBMS, e.g. MySQL, MariaDB, PostgreSQL or CockroachDB.
Removal of admin REST API¶
This API was originally used for administration purposes, e.g. managing users, changing passwords, managing multi-user chats etc. Since the introduction of GraphQL API this feature was deprecated. Starting from this release it is removed from the codebase.
Removal of client REST API¶
This API was originally used to aid in development of client applications and integrations, providing a subset of XMPP features. Since the introduction of GraphQL API this feature was deprecated. Starting from this release it is removed from the codebase.
Deprecation of mod_jingle_sip¶
mod_jingle_sip module is deprecated and will be removed in the next release.
Configuration options¶
We have changed or removed some configuration options.
mod_bosh replaced with mongoose_bosh_handler and service_bosh¶
The mod_bosh module had inconsistent behaviour when configured for multiple host types (or static hosts).
This is why we have replaced it with service_bosh.
You need to change your configuration to use the new service instead of the removed module.
If you had it configured in host_config, you can use the new option service_bosh.host_types to achieve the same effect.
We have also moved the HTTP handler from mod_bosh to a new module called mongoose_bosh_handler.
Update the handler name in your configured HTTP listeners sections if you have it configured.
Tip
This is also a good opportunity to check if you need BOSH - if not, you can remove the mod_bosh module and HTTP handler without adding the new ones.
mod_websockets replaced with mongoose_websocket_handler¶
Following the BOSH refactor, we have also renamed the mod_websockets HTTP handler to mongoose_websocket_handler.
Update the handler name in your configured HTTP listeners sections if you have it configured.
Tip
This is also a good opportunity to check if you need WebSockets - if not, you can remove the mod_websockets HTTP handler without adding the new one.
HTTP listeners¶
From your TOML configuration file, remove http listener definition listen.http.handlers.mongoose_admin_api and listen.http.handlers.mongoose_client_api.
rdbms_server_type¶
The general.rdbms_server_type option is removed, and it has to be deleted from the TOML configuration file.
It was used to customize queries for the ODBC driver, which is not supported anymore.
RabbitMQ connection pool¶
The RabbitMQ-specific connection option max_worker_queue_len is now replaced with a more generic worker pool option with the same name.
Contrary to the removed option, it now ensures that the queue limit is never exceeded.
Make sure you use the new option instead of the removed one.
Instrumentation¶
Metrics for BOSH and WebSockets¶
As part of the BOSH and WebSocket refactor, we have updated the names of BOSH and WebSocket metrics. The table below summarizes the changes. The names presented in the table are assuming that Prometheus is used. For more information, e.g. about Prometheus labels or Exometer metrics, follow the links in the table.
| Previous metrics | Current metrics | More information |
|---|---|---|
mod_bosh_data_received_byte_size,mod_bosh_data_sent_byte_size,mod_websocket_data_received_byte_size,mod_websocket_data_sent_byte_size |
bosh_data_received_byte_size, bosh_data_sent_byte_size, websocket_data_received_byte_size, websocket_data_sent_byte_size |
Network data |
Metrics for global RabbitMQ pools¶
Global RabbitMQ pools now emit separate metric names without the host_type label.
This avoids crashes when Exometer is enabled and matches the global RDBMS metrics.
Update any monitoring or alerts for global pools.
| Old event name (now host-type only) | New global event name | Labels |
|---|---|---|
wpool_rabbit_connections |
wpool_global_rabbit_connections |
pool_tag |
wpool_rabbit_messages_published |
wpool_global_rabbit_messages_published |
pool_tag |
Database migration¶
There is a new table blocklist in the database, which is used by mod_blocklist. See the migrations in the priv/migrations directory. Although the new table is only needed by this module, we recommend applying the migration anyway to keep the database in sync with the latest schema.