On Fri, Nov 19, 2021 at 11:49 AM Andres Freund <and...@anarazel.de> wrote: > > +/* > > + * On modern systems this is really just *counter++. On some older systems > > + * there might be more to it, due to inability to read and write 64 bit > > values > > + * atomically. > > + */ > > +static inline void inc_counter(pg_atomic_uint64 *counter) > > +{ > > + pg_atomic_write_u64(counter, pg_atomic_read_u64(counter) + 1); > > +} > > + > > #undef INSIDE_ATOMICS_H > > Why is this using a completely different naming scheme from the rest of the > file?
It was what Thomas originally named it. Also, I noticed all the other pg_atomic* in this file were wrappers around the same impl function, so I thought maybe naming it this way would be confusing. I renamed it to pg_atomic_inc_counter(), though maybe pg_atomic_readonly_write() would be better? > > > doc/src/sgml/monitoring.sgml | 116 +++++++++++++- > > src/backend/catalog/system_views.sql | 11 ++ > > src/backend/postmaster/checkpointer.c | 3 +- > > src/backend/postmaster/pgstat.c | 161 +++++++++++++++++++- > > src/backend/storage/buffer/bufmgr.c | 46 ++++-- > > src/backend/storage/buffer/freelist.c | 23 ++- > > src/backend/storage/buffer/localbuf.c | 3 + > > src/backend/storage/sync/sync.c | 1 + > > src/backend/utils/activity/backend_status.c | 60 +++++++- > > src/backend/utils/adt/pgstatfuncs.c | 152 ++++++++++++++++++ > > src/include/catalog/pg_proc.dat | 9 ++ > > src/include/miscadmin.h | 2 + > > src/include/pgstat.h | 53 +++++++ > > src/include/storage/buf_internals.h | 4 +- > > src/include/utils/backend_status.h | 80 ++++++++++ > > src/test/regress/expected/rules.out | 8 + > > 16 files changed, 701 insertions(+), 31 deletions(-) > > This is a pretty large change, I wonder if there's a way to make it a bit more > granular. > I have done this. See v15 patch set attached. - Melanie
v15-0007-small-comment-correction.patch
Description: Binary data
v15-0004-Add-buffers-to-pgstat_reset_shared_counters.patch
Description: Binary data
v15-0006-Remove-superfluous-bgwriter-stats.patch
Description: Binary data
v15-0003-Send-IO-operations-to-stats-collector.patch
Description: Binary data
v15-0005-Add-system-view-tracking-IO-ops-per-backend-type.patch
Description: Binary data
v15-0002-Add-IO-operation-counters-to-PgBackendStatus.patch
Description: Binary data
v15-0001-Read-only-atomic-backend-write-function.patch
Description: Binary data