Skip to content

v0.14.16.vcluster.3

Choose a tag to compare

@rlmcpherson rlmcpherson released this 06 Jul 15:49

What's new

  • fix(pgsql): bound lock_timeout so a held id gap can't stall watches. The watch poll's gap-fill INSERT is now bounded by a per-connection lock_timeout (default 10s, overridable per datasource via a lock_timeout query parameter in the DSN). A transaction holding a gap in the BIGSERIAL id sequence (e.g. a slow or lock-contended write) can no longer block the single poll goroutine and freeze event delivery to every watcher while reads stay current. Schema DDL/migrations are exempted (run with lock_timeout = 0) so a rolling-upgrade ALTER TABLE is never aborted.
  • feat(sqllog): gap-fill outcome metrickine_gap_fill_total{result=filled|failed|skipped} for observability, so a non-self-healing condition (too-short timeout / sustained contention) is visible.

Notes

  • Based on upstream v0.14.16, carrying the full fork feature set: Kerberos/GSSAPI and AWS RDS IAM authentication for PostgreSQL.
  • Supersedes v0.14.16.vcluster.2, which was inadvertently built without the Kerberos/GSSAPI feature. Users on .2 who rely on Kerberos should upgrade to this release.