aboutsummaryrefslogtreecommitdiff
path: root/contrib/postgres_fdw/postgres_fdw.h
diff options
context:
space:
mode:
authorAlvaro Herrera <alvherre@alvh.no-ip.org>2024-04-05 16:14:39 +0200
committerAlvaro Herrera <alvherre@alvh.no-ip.org>2024-04-05 16:14:39 +0200
commitee1cbe806dad47674ded35427c6ba217531847d6 (patch)
tree4754aa0dc50ae700e2358d4fc6c3e0860ef71e9f /contrib/postgres_fdw/postgres_fdw.h
parent6f132ed693b6a0be0997f092c42abf14878362ac (diff)
downloadpostgresql-ee1cbe806dad47674ded35427c6ba217531847d6.tar.gz
postgresql-ee1cbe806dad47674ded35427c6ba217531847d6.zip
Operate XLogCtl->log{Write,Flush}Result with atomics
This removes the need to hold both the info_lck spinlock and WALWriteLock to update them. We use stock atomic write instead, with WALWriteLock held. Readers can use atomic read, without any locking. This allows for some code to be reordered: some places were a bit contorted to avoid repeated spinlock acquisition, but that's no longer a concern, so we can turn them to more natural coding. Some further changes are possible (maybe to performance wins), but in this commit I did rather minimal ones only, to avoid increasing the blast radius. Reviewed-by: Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com> Reviewed-by: Jeff Davis <pgsql@j-davis.com> Reviewed-by: Andres Freund <andres@anarazel.de> (earlier versions) Discussion: https://postgr.es/m/20200831182156.GA3983@alvherre.pgsql
Diffstat (limited to 'contrib/postgres_fdw/postgres_fdw.h')
0 files changed, 0 insertions, 0 deletions