ProxySQL 3.0.6 Release Notes
Release date: 2026-03-10
This release of ProxySQL 3.0.6 is a maintenance and stability release focusing on core protocol hardening, security fixes, and improved platform support. It brings significant improvements to PostgreSQL compatibility, MySQL monitoring, and internal diagnostic capabilities, alongside a major stabilization of the automated testing infrastructure.
Release commit: 3803f11077f21510b2b43ea7168abf91b54b739e
Highlights
- Security Hardening: Fixed a high-severity vulnerability in SCRAM authentication by replacing insecure
strtokusage with thread-safe alternatives. - PostgreSQL Compatibility: Added support for common
psqlmeta-commands (like\d,\dt,\l) in the ProxySQL Admin interface and enhanced transaction state tracking for pipelined queries. - Stability & Resilience: Hardened PostgreSQL protocol handling against malformed packets and unstable backends. Fixed multiple race conditions in admin shutdown and session cleanup.
- Observability: Added protocol-specific labels (
mysqlvspgsql) to Prometheus metrics to eliminate ambiguity in shared metric families. - Platform Support: Added official support for compilation on macOS (Darwin/Apple Silicon) and updated Linux distribution support to include Fedora 43.
New Features
PostgreSQL Enhancements
PostgreSQL Meta-Command Support (3145473, #5367, #5381)
The ProxySQL Admin interface (port 6132) now supports common PostgreSQL psql meta-commands, including \d, \dt, \di, \dv, and \l. This allows database administrators to describe tables, list views, and inspect database structures directly through ProxySQL using familiar PostgreSQL CLI syntax.
Replication Lag Monitoring for PostgreSQL (c4fc60b, #5422)
Introduced native replication lag monitoring for PostgreSQL backends. Administrators can now configure pgsql-monitor_replication_lag_interval and pgsql-monitor_replication_lag_timeout to track and report replication delays, enabling better traffic routing decisions based on data freshness.
Advanced PostgreSQL Query Logging (bad7ce4, #5391)
Implemented PostgreSQL advanced query logging with parity to the MySQL eventslog behavior. This includes a circular buffer for query events, automatic background dumping to disk, and dedicated administrative commands to manage the logging lifecycle.
Monitoring & Diagnostics
Protocol Labels for Prometheus Metrics (e82ff6f, #5361, #5443)
To improve visibility in hybrid MySQL/PostgreSQL environments, ProxySQL now attaches a protocol label to Prometheus metrics. This allows monitoring systems to distinguish between MySQL and PostgreSQL connection pools, query counters, and resource usage even when they share the same metric family names.
Administrative Statistics Flushing (77fe582, #5317)
Added the PROXYSQL FLUSH STATS administrative command, providing a unified way to reset internal statistics tables. This is particularly useful for performance benchmarking and troubleshooting transient issues.
Bug Fixes
Protocol Hardening
PostgreSQL Protocol Resilience (d305cde, #5429, #5421)
Hardened the PostgreSQL protocol pipeline with comprehensive validation of packet headers and message sequences. This prevents potential crashes or misrouting when encountering malformed packets or unexpected responses from unstable backend servers.
Late COPY Message Handling (16443dc, #5416)
Fixed an issue where ProxySQL could misinterpret pipelined COPY protocol messages arriving after a session had exited fast-forward mode. The protocol handler now correctly identifies and discards or processes these trailing messages to maintain session integrity.
Transaction State Tracking (96bc668, #5444, #5388)
Improved transaction state tracking for PostgreSQL pipelined queries and extended query protocol. This ensures that SET, RESET, and DISCARD commands are correctly reflected in the session state even when multiple operations are batched.
Core & Stability
Security: strtok Vulnerability (933168e, #5348, #5350)
Addressed a high-severity security vulnerability in the SCRAM authentication code. Replaced the non-thread-safe strtok function with a more secure implementation to prevent memory corruption in high-concurrency environments.
Session & Connection Cleanup (83209da, #5356, #abddff33, #5344)
Fixed a critical use-after-free race condition in RequestEnd() that could cause crashes during COM_CHANGE_USER timeout scenarios. Also corrected an off-by-one error in connection cleanup loops that could lead to the removal of the wrong connection from the pool.
Admin Shutdown Races (0654efd, #5371)
Implemented a more robust, coordinated shutdown sequence for the Admin interface. This eliminates race conditions during PROXYSQL KILL commands and ensures that all internal threads are gracefully terminated.
Improvements
- macOS Compatibility: Comprehensive build system updates to support compilation on macOS (Darwin/Apple Silicon), including fixes for header conflicts and OpenSSL detection (#5308).
- CI Infrastructure: Migrated the unified CI infrastructure directly into the ProxySQL repository, enabling more reliable and reproducible automated testing (#5442, #5435).
- Memory Safety: Fixed multiple uninitialized memory issues reported by Valgrind across the query parser and connection management modules (#5374).
- Build System: Updated Docker build images and improved Makefile logic for better reproducibility and package building across different Linux distributions (#5329, #5349).
Contributors
ProxySQL is a community-driven project, and we are grateful to all the contributors who helped make this release possible. A special thank you to:
- @rahim-kanji for the extensive work on PostgreSQL protocol hardening and meta-command support.
- @wazir-ahmed for implementing the TSDB subsystem and MCP stack.
- @JavierJF for adding PostgreSQL replication lag monitoring and improving diagnostics.
- @Gonlo2 for critical fixes in connection pool management and SSL handling.
- @mirostauder for build system improvements and Fedora 43 support.
- @evkuzin for enhancing Prometheus metric observability.
- @orbisai0security for identifying and fixing security vulnerabilities.
- @mevishalr for performance optimizations in query logging.
We also thank everyone who reported bugs, tested experimental features, and provided feedback during this release cycle.
Hashes
The release commit is: 3803f11077f21510b2b43ea7168abf91b54b739e
SHA256s:
804429ce319670df2c922862c8478380d81720e86e3e7cca8cccaa648193fef8 proxysql-3.0.6-1-almalinux10-clang.x86_64.rpm
0ae1a87dcc720ad380ecb50499fdf08566de0ab7e13efb1b54a1a4f34e64fcfc proxysql-3.0.6-1-almalinux10.aarch64.rpm
7b49b8f9e58a7084960c01fb5faa776828eb3c5b2fe32715c0eb9ff1fcfbfade proxysql-3.0.6-1-almalinux10.x86_64.rpm
633ee723e441e0251d0c71b9da573440ec5b0cea213d0ccca8f95bca4e4f1090 proxysql-3.0.6-1-almalinux8-clang.x86_64.rpm
afde6583ade4a09e02cd0de2d6ef9a612b4369514f550a1abbd2b3d9ccad3b1d proxysql-3.0.6-1-almalinux8.aarch64.rpm
483246530c992bed4a906c1d828cd8e84f8cab88914f03cc7ffa6778b05fd623 proxysql-3.0.6-1-almalinux8.x86_64.rpm
91596b26e52e8876b1bce45dc0eec48a80e14f0aa35821f5ee68b8006b7945e8 proxysql-3.0.6-1-almalinux9-clang.x86_64.rpm
d12b7dafdc78e17f4c1232b740fd867b8fd0fb068503a88ccbda4889a80da6e6 proxysql-3.0.6-1-almalinux9.aarch64.rpm
c37933d7ca0f3d4062022b6f05bc867f777c1a3913bf1e9912c274ee81352c98 proxysql-3.0.6-1-almalinux9.x86_64.rpm
ffabd20a4eb49ae8a89748f2211785a2e9ae7c8b0615e455dcb3d2a5790991fe proxysql-3.0.6-1-centos10-clang.x86_64.rpm
0d15a1ed7b0d4881525f5dc47c2b41b99524c0c242626f98e85cb3721c3e43ca proxysql-3.0.6-1-centos10.aarch64.rpm
114a808f8f3061274fee2c3fa492f3a1fd884ba30d80f606369d2e48cd4ea6bb proxysql-3.0.6-1-centos10.x86_64.rpm
4d76af936a04d95153fe0cc353a02a89ac310ec1bf1a817cb55878d276dd49c6 proxysql-3.0.6-1-centos9-clang.x86_64.rpm
7919a28cbf8855b4af94162a02d02777de6e93cc1c85bc560e8ce43ca25e1148 proxysql-3.0.6-1-centos9.aarch64.rpm
90abf3d25f2b2c08c7622b225e99cf830fe233c3878604ce9662c7dab898d19a proxysql-3.0.6-1-centos9.x86_64.rpm
71b2b9b249492cd6855c56872bab53e90e987b2874d69a4759ffb6d6b45ac07d proxysql-3.0.6-1-dbg-almalinux10.x86_64.rpm
46bfaf24a9929d8a64e4eb693f4c9b0cce58cc93dfe9787078f208790e10db16 proxysql-3.0.6-1-dbg-almalinux8.x86_64.rpm
fa4bc2e4a4db483e43be01c2d5b80cee115635a28aa7c596c71056a476753a0e proxysql-3.0.6-1-dbg-almalinux9.x86_64.rpm
74cf12be44c3ebc20f76daac455cb529563b279eaa3242addc028ec93f94d12b proxysql-3.0.6-1-dbg-centos10.x86_64.rpm
c9f5e3f8374b484b632e10968bed57ca6d6ba7e4e4ff9884a36e2a321502193b proxysql-3.0.6-1-dbg-centos9.x86_64.rpm
27d9e60c632c3026114937d4ff42784f88f725c36a53947153436ceb3212fc69 proxysql-3.0.6-1-dbg-fedora42.x86_64.rpm
6c8c358de9245b51c4f4e4e0d492c2a4399ae8bb5be9a7a8019a84f69b5b6bdd proxysql-3.0.6-1-dbg-fedora43.x86_64.rpm
1c61cfef77b497818abc8315d78d9423f6d98b5ac25f31ddeb051eaea908709e proxysql-3.0.6-1-dbg-opensuse15.x86_64.rpm
6022a529447553c0d7f8c9a60d8ef222409c59cfb85a1dc7c312f5c6855573c9 proxysql-3.0.6-1-dbg-opensuse16.x86_64.rpm
bcd99afca58e3abdf45245dd22d998d7cc4afe123d0f1d550cf3fe0e21e8c227 proxysql-3.0.6-1-fedora42-clang.x86_64.rpm
59269e4d455f43f5a018878902cb249d11bfbf5108ecc65dfb451ea81b5e23e2 proxysql-3.0.6-1-fedora42.aarch64.rpm
3d8e94942ba9a994d2ccc6b09b2579c51082e99ece101566305f55d66a7290b9 proxysql-3.0.6-1-fedora42.x86_64.rpm
9edca6f1ee72f3db014f20ef9a5e4336fcd772d94fb8f89300ffd2413eeedd55 proxysql-3.0.6-1-fedora43-clang.x86_64.rpm
b86424b2399cac034184d00d410e997f26332e1db63311b4845e05743c09b3ae proxysql-3.0.6-1-fedora43.aarch64.rpm
baa59d8277ff81166090b49d5f999d6fa144e4e5b49ce15c3cd7d399414fa6aa proxysql-3.0.6-1-fedora43.x86_64.rpm
4a9e63c916c4be1e28be8298545a1c5dd50d06b789f6286958d1368d5ce37ce3 proxysql-3.0.6-1-opensuse15-clang.x86_64.rpm
fadde9a9fb36e72dbe2a561194ce726de3ed3c451ebe4bff9e221437dbe6bfa2 proxysql-3.0.6-1-opensuse15.aarch64.rpm
7ff8f4a5a80d104d8a625f6ce6dea6dbad3fc3fb8192d9368796f4f79ba16534 proxysql-3.0.6-1-opensuse15.x86_64.rpm
ae57236a1c3d57cead7dd124e9c233fbb8f9dcec7ab00095f1355d2aca002d5a proxysql-3.0.6-1-opensuse16-clang.x86_64.rpm
93f65a77810536bba3a90c6c9eb521f10fc0ec088a3bf3e623d3dda088e1d0f5 proxysql-3.0.6-1-opensuse16.aarch64.rpm
d2d19235d5d237b272db5861f2b03b56d83ba511b68b7787e12059be89a35522 proxysql-3.0.6-1-opensuse16.x86_64.rpm
757e85e9812b5254f9c11b170ec8ad7ace7dd1c692b6f77121135858eb99dbcd proxysql_3.0.6-dbg-debian12_amd64.deb
e02e336746ebe1eb6700f10db568128f12159c12a068ed7a6434480ff3a72ebe proxysql_3.0.6-dbg-debian13_amd64.deb
f2d1e80a927f6075863d57fb83a95f568fd05ba7372cb132f0284ae5d7edac57 proxysql_3.0.6-dbg-ubuntu22_amd64.deb
829f5a87f74865924baaa011b410e3cae665fcd312a94be84dd766e6a18e7fcb proxysql_3.0.6-dbg-ubuntu22_arm64.deb
3487f08944f9ddb0121598e89ff12495641d05592903ad56e102a6879d1a2e22 proxysql_3.0.6-dbg-ubuntu24_amd64.deb
f4fdff3451fc687a28014ec921a88b47f68231bb291ccb013c185a6c13554b94 proxysql_3.0.6-dbg-ubuntu24_arm64.deb
029432e38b5791c686bd07535d60bbaee0225d06fe82723a8a4646f62f914fbc proxysql_3.0.6-debian12-clang_amd64.deb
f1d2b475a7ed13437f9e7905a99e092c5eeb3bbe14ef09567aed1f2ca4c31f9b proxysql_3.0.6-debian12_amd64.deb
e96241681f166397418d791006b9f48034092f3a28c223add4efb9fab920df13 proxysql_3.0.6-debian12_arm64.deb
50cfe60403131cc8ac47770ff5870e421c4b986ae00b4787a1d2f89d47a992f0 proxysql_3.0.6-debian13-clang_amd64.deb
25f4a18bad3848c04f9365b8e169bd51b888135253bdfeb5bd812781622b8ab2 proxysql_3.0.6-debian13_amd64.deb
1439f1e351483cb4dd628d6c4a749523a5a4a2bbf5dd5429b2234f0a5cfa7703 proxysql_3.0.6-debian13_arm64.deb
2b391c06ab6f64266222e17dc9419fa84e1ebbbb8a4db74a3b71317357d5c246 proxysql_3.0.6-ubuntu22-clang_amd64.deb
ffb9d3bfc0beca5611ea62c57d5bfd6a89433f120f0af375094b941e85998417 proxysql_3.0.6-ubuntu22-clang_arm64.deb
57fd6adabf6f7876852463a58e270c226eca262cacb059f31778e80bdf1cef94 proxysql_3.0.6-ubuntu22_amd64.deb
3bb257ca0cfe7740582c1c2704d250cc93f5e541844bd2e90d621181123a4f0d proxysql_3.0.6-ubuntu22_arm64.deb
75dcb6a6315eb6ea936e381a4ed678d68a7f94595bea5a4531cc159dd0bd7779 proxysql_3.0.6-ubuntu24-clang_amd64.deb
f2a672da751dcc0700df9ec979407618f35a17f3f30fd8bf8431cb52b2da10ef proxysql_3.0.6-ubuntu24-clang_arm64.deb
0ca747fc866803441e3890342d3fa56b7c6bddcf7bb3a79b9fde6f0122de3d0e proxysql_3.0.6-ubuntu24_amd64.deb
6415ca4c3a02006d4aeb410d6a730a26c9beef534aa86c30db66248cd2692be0 proxysql_3.0.6-ubuntu24_arm64.deb