Add official support for GaussDB (Huawei openGauss) in Strapi's PostgreSQL dialect.
GaussDB is a widely deployed enterprise database in APAC (particularly required for Huawei Cloud / China-region deployments) and is functionally PostgreSQL-compatible when configured with
DBCOMPATIBILITY = 'PG'
.
### Motivation
Customers deploying Strapi on Huawei Cloud or in environments requiring GaussDB currently face a limitation. They cannot use Strapi without patching node_modules after installation. To address this, official compatibility or a documented configuration path would be necessary to enable a significant number of enterprise deployments.
### Environment
* Strapi version: 5.45.1
* Node.js: v20.20.1
* Database: GaussDB (for openGauss) V2.0-8.218, Kernel 505.2.1.SPC0800, Centralized Basic edition |
* DB compatibility mode:
DBCOMPATIBILITY = 'PG'
### Problem
On startup, Strapi → Knex executes SELECT version() and parses the result with the regex
/^PostgreSQL (.*?)( |$)/.
GaussDB returns a vendor-branded banner instead of the standard PostgreSQL format:
gaussdb (GaussDB Kernel 505.2.1.SPC0800 ...)
TypeError: Cannot read properties of null (reading '1')
at Client_PG._parseVersion (.../knex/lib/dialects/postgres/index.js:135:56)
Strapi never finishes bootstrapping — the failure happens before any Strapi code runs.