fix: address CodeRabbit review findings on multi-engine database hostsBrowse files at 417ee56
stripsior committed 3 months ago · 11 changed files
- URL-encode username/password in all connection-string formatters (mysql,
postgresql, mongodb, redis adapters + the client-side formatter) so
generated passwords containing @/#/% don't corrupt the connection URI.
- Give the MySQL/MariaDB adapter SSL support at parity with PostgreSQL.
- Give the Redis adapter TLS support, and fix testConnection/createDatabase/
rotatePassword/dropDatabase to always disconnect the client via finally
even if connect() itself throws.
- Truncate the generated database name per engine identifier limit (64 for
MySQL/MariaDB/MongoDB, 63 for Postgres), matching the existing username
truncation - long server/database name combos no longer fail creation.
- Tighten the `remote` input's max length to 15 to match the
server_databases.remote column instead of silently truncating on insert.
- Reword the last MySQL-specific panel.databases strings (createDescription,
statNoteText) to be engine-neutral in all 5 locales.
Left the Redis ACL scope (~* +@all, full keyscape access) unchanged - that
mirrors MySQL's GRANT ALL trust model and was an explicit, confirmed product
decision earlier in this PR's discussion, not an oversight.