6.1.0 to 6.2.0
Internal databases¶
So far MongooseIM has been using the internal Mnesia database to replicate the in-memory data between cluster nodes.
Now there is an option to use CETS instead.
Mnesia is still used by default, so you don't need to change your configuration file.
If you want to switch to CETS, see the tutorial and the reference for internal_databases
.
Database migration¶
There is a new table discovery_nodes
in the database, which is used by CETS for dynamic discovery of cluster nodes. See the migrations for Postgres, MySQL and MSSQL in the priv/migrations
directory. Although the new table is only needed by CETS, we recommend applying the migration anyway to keep the database in sync with the latest schema.
Validation of TLS options¶
Erlang/OTP 26 has more strict checking of the TLS options, as described in release highlights. MongooseIM follows the same rules now, preventing runtime crashes if TLS is misconfigured.
By default verify_mode
is set to "peer"
for each tls
section in the configuration, and this requires cacertfile
- otherwise the server will refuse to start. This was already documented, but not enforced. The option "selfsigned_peer"
also requires cacertfile
now.
This change affects the following configuration sections:
- Listeners. Currently, it only affects
http
andc2s
withtls.module
set to"just_tls"
, but we recommend fixing it for all listeners already, because in future releases all listeners would have this validation. - Outgoing connections.
For each of the affected sections, if there is any tls
option present, make sure that either tls.cacertfile
is provided or tls.verify_mode
is set to "none"
.
Transition to New CLI Commands¶
Legacy CLI commands previously marked as deprecated have now been removed. The users are encouraged to explore the new GraphQL-based CLI. It is recommended to transition to the new CLI commands prior to the next system upgrade. The configuration options general.mongooseimctl_access_commands
and services.service_admin_extra
related to the legacy CLI were also removed. You need to remove them from your configuration file unless you have already done so.
Removed support for Riak¶
The deprecated and obsolete Riak database is not supported anymore, and you cannot configure it in the outgoing_pools
section.