New features
- Support
search_pathfor schema-based sharding. Now you canSET search_path TO schema_a, publicand all subsequent queries will be sent to shard matchingschema_a. - Support generating globally unique
BIGINTidentifiers using the Snowflake-like time-based algorithm. Usable withSHOW pgdog.unique_idcurrently.pgdog.unique_id()function will be added in the next release. - Automatic role detection by fetching
pg_is_in_recovery()from each database. Enable it by settinglsn_check_delay = 0androle = "auto". - Track idle in transaction clients and report the metric in OpenMetrics and
SHOW POOLS(sv_idle_xact).
Bug fixes
- Client connections weren't updating their status to
activecorrectly inside transactions. - Schema detection wasn't always working for
SELECTqueries with multiple schemas. - Schema sync was ignoring
IDENTITYcolumn constraint. - Aggregate column count was incorrect. @mijoharas
PREPARE/EXECUTEnot working correctly whenprepared_statements = "full".REAL/DOUBLE PRECISIONcolumns were dropped in rewrittenINSERTandUPDATEstatements used in cross-shard writes. @phillipvanheerdenNULLvalues weren't correctly routed to all shards.
New Contributors
- @phillipvanheerden made their first contribution in #630
Full Changelog: v0.1.16...v0.1.17