Skip to content

v15.13.4.0

Latest
Compare
Choose a tag to compare
@github-actions github-actions released this 27 May 13:26
· 14 commits to POLARDB_15_STABLE since this release
feat: postpone waiting of sync ddl

Due to the shared-storage architecture, higher requirement for DDL
synchronization is needed. Primary needs to acquire locks among all
replicas before doing acture operation. But it cause too much waiting
on PolarDB PG, some of them are just redundant. For example, primary
acqueries DDL lock and do nothing. This happends really often in
vacuum. And another case is create new table, truncate temp table are
also waiting for the DDL lock, which is unnecessary.

In this commit, postpone the waiting of sync ddl till the actual file
operations, eg, truncate and unlink. This will reduce a lot of
unnecessary waitings. The waiting on the operation of temp table is
also ignored. And thanks to the postpone, the waiting time can also be
collapse. When the waiting begins, it's likely to have all replicas
replayed beyond the point.

Add a new GUC polar_enable_sync_ddl_legacy to enable the old style
synchronous ddl.