# Percona Monitoring and Management 2.12.0
Percona Monitoring and Management (PMM) is a free and open-source platform for managing and monitoring MySQL, MongoDB, and PostgreSQL performance.
## Release Highlights
- VictoriaMetrics replaces Prometheus and is now the default data source. VictoriaMetrics supports both PUSH (client to server) and PULL metrics collection modes. ([Read more.](../details/victoria-metrics.md))
- PMM Client can be run as a Docker image.
- The 'Add Instance' page and forms have been redesigned and look much better.
## New Features
- [PMM-5799](https://jira.percona.com/browse/PMM-5799): PMM Client now available as docker image in addition to RPM, DEB and `.tgz`
- [PMM-6968](https://jira.percona.com/browse/PMM-6968): Integrated Alerting: Basic notification channels actions API Create, Read, Update, Delete
- [PMM-6842](https://jira.percona.com/browse/PMM-6842): VictoriaMetrics: Grafana dashboards to monitor `VictoriaMetricsDB` as replacement for dashboards that used to monitor Prometheus DB
- [PMM-6395](https://jira.percona.com/browse/PMM-6395): Replace Prometheus with VictoriaMetrics in PMM for better performance and additional functionality
## Improvements
- [PMM-6744](https://jira.percona.com/browse/PMM-6744): Prevent timeout of low resolution metrics in MySQL instances with many tables (~1000's)
- [PMM-6504](https://jira.percona.com/browse/PMM-6504): MySQL Replication Summary: MySQL Replication Delay graph not factoring in value of intentionally set `SQL_Delay` thus inflating time displayed
- [PMM-6820](https://jira.percona.com/browse/PMM-6820): `pmm-admin status --wait` option added to allow for configurable delay in checking status of `pmm-agent`
- [PMM-6710](https://jira.percona.com/browse/PMM-6710): `pmm-admin`: Allow user-specified custom 'group' name when adding external services
- [PMM-6825](https://jira.percona.com/browse/PMM-6825): Allow user to specify 'listen address' to `pmm-agent` otherwise default to 127.0.0.1
- [PMM-6793](https://jira.percona.com/browse/PMM-6793): Improve user experience of 'add remote instance' workflow
- [PMM-6759](https://jira.percona.com/browse/PMM-6759): Enable Kubernetes startup probes to get status of `pmm-agent` using 'GET HTTP' verb
- [PMM-6736](https://jira.percona.com/browse/PMM-6736): MongoDB Instance Summary dashboard: Ensure colors for ReplSet status matches those in MongoDB ReplSet Summary dashboard for better consistency
- [PMM-6730](https://jira.percona.com/browse/PMM-6730): Node Overview/Summary Cleanup: Remove duplicate service type 'DB Service Connections'
- [PMM-6542](https://jira.percona.com/browse/PMM-6542): PMM Add Instance: Redesign page for more intuitive experience when adding various instance types to monitoring
- [PMM-6518](https://jira.percona.com/browse/PMM-6518): Update default data source name from 'Prometheus' to 'Metrics' to ensure graphs are populated correctly after upgrade to VictoriaMetrics
- [PMM-6428](https://jira.percona.com/browse/PMM-6428): Query Analytics dashboard - Ensure user-selected filter selections are always visible even if they don't appear in top 5 results
- [PMM-5020](https://jira.percona.com/browse/PMM-5020): PMM Add Remote Instance: User can specify 'Table Statistics Limit' for MySQL and AWS RDS MySQL to disable table stat metrics which can have an adverse impact on performance with too many tables
## Bugs Fixed
- [PMM-6811](https://jira.percona.com/browse/PMM-6811): MongoDB Cluster Summary: when secondary optime is newer than primary optime, lag incorrectly shows 136 years
- [PMM-6650](https://jira.percona.com/browse/PMM-6650): Custom queries for MySQL 8 fail on 5.x (on update to `pmm-agent` 2.10) (Thanks to user debug for reporting this issue)
- [PMM-6751](https://jira.percona.com/browse/PMM-6751): PXC/Galera dashboards: Empty service name with MySQL version < 5.6.40
- [PMM-5823](https://jira.percona.com/browse/PMM-5823): PMM Server: Timeout when simultaneously generating and accessing logs via download or API
- [PMM-4547](https://jira.percona.com/browse/PMM-4547): MongoDB dashboard replication lag count incorrect (Thanks to user `vvol` for reporting this issue)
- [PMM-7057](https://jira.percona.com/browse/PMM-7057): MySQL Instances Overview: Many monitored instances (~250+) gives 'too long query' error
- [PMM-6883](https://jira.percona.com/browse/PMM-6883): Query Analytics: 'Reset All' and 'Show Selected' filters behaving incorrectly
- [PMM-6686](https://jira.percona.com/browse/PMM-6686): Query Analytics: Filters panel blank on Microsoft Edge 44.18362.449.0
- [PMM-6007](https://jira.percona.com/browse/PMM-6007): PMM Server virtual appliance's IP address not shown in OVF console
- [PMM-6754](https://jira.percona.com/browse/PMM-6754): Query Analytics: Bad alignment of percentage values in Filters panel
- [PMM-6752](https://jira.percona.com/browse/PMM-6752): Query Analytics: Time interval not preserved when using filter panel dashboard shortcuts
- [PMM-6664](https://jira.percona.com/browse/PMM-6664): Query Analytics: No horizontal scroll bar on Explain tab
- [PMM-6632](https://jira.percona.com/browse/PMM-6632): Node Summary - Virtual Memory Utilization chart: incorrect formulas
- [PMM-6537](https://jira.percona.com/browse/PMM-6537): MySQL InnoDB Details - Logging - Group Commit Batch Size: giving incorrect description
- [PMM-6055](https://jira.percona.com/browse/PMM-6055): PMM Inventory - Services: 'Service Type' column empty when it should be 'External' for external services
## Known Issues
- [PMM-7092](https://jira.percona.com/browse/PMM-7092): Update docker `pmm-server` 2.11.1 to 2.12.0 results in an unhealthy container.
Workaround: A folder is not created on container upgrade and will need to be created manually for one of the components. Before starting the new pmm-server 2.12.0, execute:
```sh
docker exec -ti pmm-server mkdir -p /srv/victoriametrics/data
docker exec -ti pmm-server chown -R pmm:pmm /srv/victoriametrics/
docker restart pmm-server
```