citus/src/test
Mehmet YILMAZ 6251eab9b7
PG18: Make SSL tests resilient & validate TLSv1.3 cipher config (#8298)
fixes #8277 


https://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=45188c2ea

PostgreSQL 18 + newer OpenSSL builds surface `ssl_ciphers` as a **rule
string** (e.g., `HIGH:MEDIUM:+3DES:!aNULL`) instead of an expanded
cipher list. Our tests hard-pinned the literal list and started failing
on PG18. Also, with TLS 1.3 in the picture, we need to assert that
cipher configuration is sane without coupling to OpenSSL’s expansion.

**What changed**

* **sql/ssl_by_default.sql**

* Replace brittle `SHOW ssl_ciphers` string matching with invariant
checks:

    * non-empty ciphers: `current_setting('ssl_ciphers') <> ''`
* looks like a rule/list: `position(':' in
current_setting('ssl_ciphers')) > 0`
  * Run the same checks on **workers** via `run_command_on_workers`.
* Keep existing validations for `ssl=on`, `sslmode=require` in
`citus.node_conninfo`, and `pg_stat_ssl.ssl = true`.


* **expected/ssl_by_default.out**

* Update expected output to booleans for the new checks (less diff-prone
across PG/SSL variants).
2025-11-03 14:51:39 +03:00
..
cdc Run wal2json cdc test for pg16 as well (#7361) 2023-11-24 14:40:23 +03:00
hammerdb rename citus hammerdb branch prefix as citus_github_push (#3925) 2020-06-18 21:11:58 +03:00
regress PG18: Make SSL tests resilient & validate TLSv1.3 cipher config (#8298) 2025-11-03 14:51:39 +03:00