ProxySQL 3.0.5 Release Notes
Release Date: 2026-01-15
This release of ProxySQL 3.0.5 delivers significant improvements in PostgreSQL SSL enforcement, security hardening, build performance optimization, and enhanced documentation. With critical fixes for SSL/TLS configuration handling, improved timezone parsing support, and streamlined development workflow optimizations, this release strengthens ProxySQL's reliability and usability for both MySQL and PostgreSQL deployments.
Release commit: 7e9e00997d7d9fa4811c86c3a3bec9c886386e1f
Highlights
This release focuses on several key areas:
- PostgreSQL Security Enhancements: Critical fixes ensure
use_sslconfigurations are properly enforced on frontend connections, preventing unauthorized connections when SSL is required. - Security & Reliability Improvements: Hardening against timezone parsing vulnerabilities and fixing critical bugs in file descriptor handling for fork/exec scenarios.
- Development Workflow Optimization: Significant performance improvements for development builds by preserving test dependencies during clean operations.
- Documentation & Testing: Comprehensive documentation updates and expanded test coverage to ensure robust functionality across different deployment scenarios.
Enhancements & Fixes
Security & Compatibility Improvements
PostgreSQL SSL Enforcement (876d4ad, #5285)
Fixes critical security vulnerability where clients could bypass SSL requirements even when use_ssl=1 was configured. Ensures frontend connections properly respect SSL configuration for PostgreSQL users, preventing unauthorized connections. Includes proper value assignment from pgsql_users to sessions and adds regression testing.
Version Forwarding Control (591e1bc, #5277)
Adds mysql-select_version_forwarding global variable to restore SQLAlchemy and ORM compatibility. Fixes the issue introduced in v3.0.4 where SELECT VERSION() queries returned ProxySQL's internal version instead of forwarding to backend servers.
Protocol & Parser Enhancements
Enhanced Timezone Parsing (ef872c7, #5280)
Improves MySQL SET statement parser to handle complex timezone configurations, including three-component IANA names (e.g., America/Argentina/Buenos_Aires) and hyphenated timezone names. Resolves parsing errors for SET time_zone statements with modern timezone formats.
PostgreSQL Bind Packet Fix (c6ed5b9, #5282)
Fixes malformed Bind packets in PostgreSQL extended query protocol when clients provide single parameter format. Resolves protocol violations and connection failures caused by improper handling of single-element parameter format arrays.
Fork/Exec Safety Improvements (e6cbdca, #5276)
Fixes critical bugs in close_all_non_term_fd() function that caused undefined behavior and potential deadlocks in multi-threaded programs when called after fork() before execve(). Ensures proper file descriptor handling for processes that spawn child processes.
Improvements
Performance & Build Optimization
Build Performance Improvements During Clean Operations (a8e759c, #5289)
Significant performance enhancements for development workflow by optimizing the make clean behavior to preserve expensive-to-rebuild test dependencies. This change eliminates the need to rebuild the entire cpp-dotenv dependency during clean operations, reducing development cycle times and improving productivity for developers working with ProxySQL's test suite.
Enhanced SQLite Mathematical Function Support (4cf85d3, #5262)
Enables the SQLITE_ENABLE_MATH_FUNCTIONS compile flag to provide mathematical function support in SQLite queries through ProxySQL's SQLite interface. This enhancement expands the capabilities of ProxySQL's embedded SQLite database for query analysis and caching operations, supporting functions like abs(), round(), and other mathematical operations.
Security & Reliability
Parameterized Prepared Statements in REST API (af23187, #5270)
Implements parameterized prepared statements in the REST API for safer SQL execution. This enhancement replaces direct SQL string concatenation with parameterized queries, preventing SQL injection vulnerabilities in administrative operations and improving the overall security posture of ProxySQL's REST interface.
Documentation & Testing
Comprehensive ProxySQL_Poll Usage Documentation (9c3f6b0, #5286)
Adds extensive documentation throughout the ProxySQL codebase explaining the core I/O multiplexing system. This comprehensive documentation helps developers understand how ProxySQL_Poll is used and integrated throughout the codebase, improving maintainability and reducing the learning curve for new contributors.
TAP Testing Documentation Enhancements (2d11405, #5269)
Updates the TAP (Test Anything Protocol) documentation with detailed unit test instructions and examples. The restructured guide includes best practices for writing TAP tests, examples of unit tests under test/tap/tests, and improved documentation for test groups, making it easier for developers to contribute to ProxySQL's test suite.
Documentation
Security & Feature Documentation
Comprehensive SSL/TLS Key Logging Documentation (4f675ed, #5279)
Adds detailed documentation for the ssl_keylog_file feature, which enables TLS key logging for debugging encrypted traffic. The documentation explains how to configure the feature, use it for debugging SSL/TLS issues, and provides guidance on secure file handling and access control for key log files.
PostgreSQL Support Documentation Updates (a83bba1, #5271)
Updates README.md and installation documentation to reflect PostgreSQL support alongside MySQL (and forks). The changes include proper version references, updated repository URLs, and enhanced information about ProxySQL's dual-database support capabilities.
Installation Documentation Updates (96af0fd, #5264)
Comprehensive updates to README.md and INSTALL.md to reflect ProxySQL 3.0.5 release, with proper version references throughout documentation and updated repository URLs from legacy proxysql-2.4.x branches.
Testing
Test Infrastructure Improvements
Enhanced Test Coverage and Organization (7e9e009, #5293)
Adds comprehensive test coverage improvements and better organizes test structure for improved validation of ProxySQL's functionality.
Security Testing
SSL Enforcement Testing (ba53c75, #5285)
Adds comprehensive regression tests for SSL enforcement functionality, ensuring that the PostgreSQL use_ssl configuration is properly validated and enforced across different connection scenarios.
Build/Packaging
Package Management Improvements
RPM Spec File Rework (0687365, #5235)
Reworks RPM specification files to use proper RPM macros for handling systemd integration. This addresses systemd-related issues during package installation in container environments where systemd commands and units are unavailable, improving the reliability of ProxySQL packages in Docker and other containerized deployments.
Deprecation Cleanup (8b2b299, #5291)
Removes deprecated code implementations that were scheduled for cleanup, improving code maintainability.
Other Changes
Version Management
Development Cycle Version Bump (8b66256, #5265)
Sets CURVER=3.0.5 in the Makefile at the beginning of the development cycle to properly track version progression and enable release automation processes for the 3.0.5 release branch.
The release commit is: 7e9e00997d7d9fa4811c86c3a3bec9c886386e1f
Full Changelog: 3.0.4...v3.0.5
Hashes
SHA256s:
e2bae6b4e68080612b4c0583065d4f2e044ca7389cfefd7280c8ca093193d364 proxysql-3.0.5-1-almalinux10-clang.x86_64.rpm
fb600c8dac1679ee3c0ea88256f947a94b30def2a0032d3af947130a8e145c4e proxysql-3.0.5-1-almalinux10.aarch64.rpm
638a1dcd195fdb20c127d734e07b755ed2c0032e0f7c663c5044a2ff09fc8745 proxysql-3.0.5-1-almalinux10.x86_64.rpm
f05e289f6cafaa26019d57dc905bc44502a18bfcfeb4f2ec5dda9098348e2634 proxysql-3.0.5-1-almalinux8-clang.x86_64.rpm
2044d1ade05d69ac0327af2d93a700e05d02ed76728363e08fda0e036f8efa62 proxysql-3.0.5-1-almalinux8.aarch64.rpm
59e2682efc8dc57de900bb66c83864af8ab0930be51154ec9f93919389fe1067 proxysql-3.0.5-1-almalinux8.x86_64.rpm
3614c5fe752871af6460c32652de67daefc2d82550c4729f2cb704292b4d7ccd proxysql-3.0.5-1-almalinux9-clang.x86_64.rpm
2aa4bc0b2aa1cac7895a96547ffafce37ed4fe68abe49622bf2b9879dac98584 proxysql-3.0.5-1-almalinux9.aarch64.rpm
683953fb34c350ef5dd740372d65929f12eafedb194db639649a7ab24530b09f proxysql-3.0.5-1-almalinux9.x86_64.rpm
4df04d5b97e024399a1963506d2207e7569bc3d83d790620dca0b22c927fe370 proxysql-3.0.5-1-centos10-clang.x86_64.rpm
0818439dc2aba14b27566c0e2a3a1b3fa33d7fb3f1860efb438d701bd3a9cf3c proxysql-3.0.5-1-centos10.aarch64.rpm
4cb0086d1403b8287f644656e5094f9a3e177b1d8aa1808861402d59239d13f9 proxysql-3.0.5-1-centos10.x86_64.rpm
749a1be64e0f65d253aad51b38c8165b3a25e334f128cfea7dd288d0b6b72553 proxysql-3.0.5-1-centos9-clang.x86_64.rpm
d48810acd874c0781755d77d61624788ee97e3873c141791efaed68146a6807c proxysql-3.0.5-1-centos9.aarch64.rpm
40ec35c6863e2a73aa745ce32224c6e189f7e14ecc9e346ceddfe00ea03bc4b1 proxysql-3.0.5-1-centos9.x86_64.rpm
d1ac8f146e3265f4d5db7d7d0661d88d1d703fb0cd2d475d44e2741fb4d00f21 proxysql-3.0.5-1-dbg-almalinux10.x86_64.rpm
fff78c268ff176bdb0d275c7ab8a590587de660ae2c4f9493c7ea51f5d05b18c proxysql-3.0.5-1-dbg-almalinux8.x86_64.rpm
832803bdf7be7802032eb4575640090ef3978b100e394f409314a71af82426e8 proxysql-3.0.5-1-dbg-almalinux9.x86_64.rpm
728aecd0e5b7421d7fd5131760d38f9a499e305c0d31a1c8acf80428f298a197 proxysql-3.0.5-1-dbg-centos10.x86_64.rpm
cb30edce1ec53fb062930f0f43339a9a3614305969aee720c3c67327dd710ebc proxysql-3.0.5-1-dbg-centos9.x86_64.rpm
c39493f62c3a97a5c9ce6126791fbfdf4a651eadd68d7b51da52de68945e1904 proxysql-3.0.5-1-dbg-fedora40.x86_64.rpm
ae372cbd2dc1e235ba47ee357175192300477d61606dbf1cab6201fe9c52680e proxysql-3.0.5-1-dbg-fedora41.x86_64.rpm
a6c6ccfcb87f2b87cd1061732d24af663f62bfab537209735ac605182e3f238f proxysql-3.0.5-1-dbg-fedora42.x86_64.rpm
b41323524a9279bfa963714dae074c4a53e6bcf42796618c73f81ec31a3f6150 proxysql-3.0.5-1-dbg-opensuse15.x86_64.rpm
a6f1846e5a4ab94d46c759e8edc0d75cc4ad78d6e93379fbc301bf07bd2f1597 proxysql-3.0.5-1-dbg-opensuse16.x86_64.rpm
cdb0da84c0601203fc46a55bb2d20cc617a149b2ed8aa8d430f0ebcda3915bcf proxysql-3.0.5-1-fedora40-clang.x86_64.rpm
1f336fb6a86bd61bcb5be8c586df15646bd6df619671887903527a1af935b346 proxysql-3.0.5-1-fedora40.aarch64.rpm
5c1e58bcf86899a4ae7793b39aff6f040e6a14b2ee68f5800cb20c52f05fd94f proxysql-3.0.5-1-fedora40.x86_64.rpm
e76a0e0e2a9220b696553533817dd564bbaab1bc59680dfa7dd1bdfe744d5759 proxysql-3.0.5-1-fedora41-clang.x86_64.rpm
a2f99e80ac839f09d062bd3e735a1b224058258c83269ce216a2170093c3bc4c proxysql-3.0.5-1-fedora41.aarch64.rpm
3336971b56ec2c86f6a599fff179e625e2fe2f4dcfd053e10fd04bc82d626782 proxysql-3.0.5-1-fedora41.x86_64.rpm
7223549e70b95079c06ce75d9714432b7e5db1da2fcb64e0a26a95d14731dc2a proxysql-3.0.5-1-fedora42-clang.x86_64.rpm
b964fcd3de2dfdb05ad9ce7a053111bd5385abd0a8d82431760f4d1e15b613c8 proxysql-3.0.5-1-fedora42.aarch64.rpm
541359c426d4548eb610057b1781996b5e71341c7f7f8fb81a02449d61b56355 proxysql-3.0.5-1-fedora42.x86_64.rpm
4b1b10fa42111ec6b7bbed519974e306310e2e23bbd251ed8a58bddac889d6a9 proxysql-3.0.5-1-opensuse15-clang.x86_64.rpm
47b09f14b40e8b49c1e075fabe355b937823ad462b0873cad3fc6d2cb132b228 proxysql-3.0.5-1-opensuse15.aarch64.rpm
715c47091c60b802d9e3c918faa3a82876ea08caec2c42261f08afdfe5b3e59e proxysql-3.0.5-1-opensuse15.x86_64.rpm
c9a1fa7e02523c83b5328c704a47ed92ef2e14df1b51261d98afc958d1537c3d proxysql-3.0.5-1-opensuse16-clang.x86_64.rpm
3e0aac7d54c8e48632219e4639f84145139929e199002892bd64fd538ebfe05c proxysql-3.0.5-1-opensuse16.aarch64.rpm
1f3a4c11348f9b57f081af2e0e03a13a98c155fde80aaf9f6a9d624588d47922 proxysql-3.0.5-1-opensuse16.x86_64.rpm
6d0c14f11ef1075d83edfd265a2ac397d2533137f62f4cd937d02e3bf7e5fa38 proxysql-3.0.5.id-hash
9b361cc36ce6b7691274cf83f2523bd4c5491f3e9620aff21aca33f26e6a352b proxysql_3.0.5-dbg-debian12_amd64.deb
078191c4082941a68b1f44037b46bb2e7ab5418f48f4eaf749afa79345bc8027 proxysql_3.0.5-dbg-debian13_amd64.deb
62208e6db7e9fb110c2d59b213a08ea3c1da20d290384b7c0c245ded2026a059 proxysql_3.0.5-dbg-ubuntu22_amd64.deb
5290dc58acda6e0f91d4cff3358eeb571d706d2423615629a7ac97f13c053231 proxysql_3.0.5-dbg-ubuntu24_amd64.deb
0efa7aa4ba6cff6a753394ded4e2714e44552f865d3e3e4ca4f645cc53004b20 proxysql_3.0.5-debian12-clang_amd64.deb
95e6e53691a71c654f58d938601ce2005b3f6ef4c07c2b55b92a58e8e7e7caeb proxysql_3.0.5-debian12_amd64.deb
68c39584ecb4730fe1f7ff4adc0424d2cda17f3dc6e8e4b422b15932da6aac27 proxysql_3.0.5-debian12_arm64.deb
88c3902ee14144b7658d96121575daa484f6bc8d1ddd3c43e5a0ce62217e415c proxysql_3.0.5-debian13-clang_amd64.deb
cbded60f4eb01e6cde863786c61781c0d195d43a51a4cfacfe7a1445eacb0a98 proxysql_3.0.5-debian13_amd64.deb
f332318033362cc030cf615f55beabe27f22d8397cb46b6b02c9a31cfe1356f0 proxysql_3.0.5-debian13_arm64.deb
8a964eef24634756e22b7ce798493ae2d374ce7142887b91a92bac8ff4e69b12 proxysql_3.0.5-ubuntu22-clang_amd64.deb
ed3cf1d4ff95181153d3835728de071d5f70cc03bda63a425f5d39bcdef09780 proxysql_3.0.5-ubuntu22_amd64.deb
0156e7d924cd1cf401d8d388bf90b2426a0bc127360adb7988d6672b74db7fa0 proxysql_3.0.5-ubuntu22_arm64.deb
356c34e5bc7aaf7b7e51e6fded6d68b3c4d9c79fa88918305986ea489bf18862 proxysql_3.0.5-ubuntu24-clang_amd64.deb
af131e187743161f5c820f58555bcd6259f20da20c5a73e9eff781703bd551d3 proxysql_3.0.5-ubuntu24_amd64.deb
92ef095c7cc78949dcc97dbce55372f116696f3c9b44990085b15a8dc5903e8b proxysql_3.0.5-ubuntu24_arm64.deb