On Tue, Feb 7, 2017 at 11:47 AM, Haribabu Kommi <kommi.haribabu@gmail.com> wrote: > Hi Hackers, > > I just want to discuss adding of a new statistics view that provides > the information of wal writing details as follows >
+1. I think it will be useful to observe WAL activity.
Thanks for your opinion.
> postgres=# \d pg_stat_wal_writer > View "pg_catalog.pg_stat_wal_writer" > Column | Type | Collation | Nullable | > Default > -----------------------+--------------------------+-----------+----------+--------- > num_backend_writes | bigint | | > | > num_total_writes | bigint | | | > num_blocks | bigint | | | > total_write_time | bigint| | | > stats_reset | timestamp with time zone | | | > > The columns of the view are > 1. Total number of xlog writes that are called from the backend. > 2. Total number of xlog writes that are called from both backend > and background workers. (This column can be changed to just > display on the background writes). > 3. The number of the blocks that are written. > 4. Total write_time of the IO operation it took, this variable data is > filled only when the track_io_timing GUC is enabled.
So, here is *write_time* the total time system has spent in WAL writing before the last reset?
total write_time spent in WAL writing "after" the last reset in milliseconds.
I think there should be a separate column for write and sync time.
Added.
> Or it is possible to integrate the new columns into the existing > pg_stat_bgwriter view also. >
I feel separate view is better.
Ok.
Following the sample out of the view after regress run.
postgres=# select * from pg_stat_walwrites;
-[ RECORD 1 ]--+------------------------------
backend_writes | 19092
writes | 663
write_blocks | 56116
write_time | 0
sync_time | 3064
stats_reset | 2017-02-15 13:37:09.454314+11
Currently, writer, walwriter and checkpointer processes
are considered as background processes that can do