pgagroal 2.1.0 is out!
Yesterday the version
2.1.0 of pgagroal has been released!
This is a
feature release, and the
full changelog is available here.
This release provides a lot of new features, most notably:
- a web console to monitor Prometheus metrics;
- an improved failover support;
- an health check process;
- improve
pgagroal-cli ping command output to provide information about the health of the servers;
- improve the test suite;
- a configuration generator;
- a lot of small improvements and a few bug fixing.
Glancing at a few of the above, the
improved failover now allows users to define a script that will run after a succesfull failover, so that it is possible to notify all the standbys of the failover. The idea is that, using this notification script, standbys can be reconfigured on the fly to follow a new promoted primary.
The
health check process is a new
worker process that can be started automatically in background and that will periodically query the configured primary serve to see if it is active. Similarly, it will check the health of the standbys (if any) to ensure they are up and running.
The health status (running or down) of the servers is now included also in the
pgagroal-cli ping command, so that it can quickly tell the users if both the pooler and the backends are alive.
The
startup validation is a way to query the
pg_control_system() special function to ensure that the standbys are at the same major version of the primary and warns or even prevent the pooler to start.
The test suite has gone a very important refactoring and improvement, and the coverage has grown providing more confidence in code changes.
A new command,
pgagroal-config has been added to the project. This allows users to create a main
pgagroal.conf configuration from scratch in an interactive way. Moreover, the same tool can be used to query and modify the configuration file in an automated and repeteable way.
As usual, a lot of small improvements to code quality in general, as well as a few bug fixing.
This new release has been brought to the community by several developers that contributed to the project, and that we thank very much for their time and effort!