Re: [TODO] Track number of files ready to be archived in pg_stat_archiver

From: Gilles Darold <gilles(dot)darold(at)dalibo(dot)com>
To: Julien Rouhaud <julien(dot)rouhaud(at)dalibo(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [TODO] Track number of files ready to be archived in pg_stat_archiver
Date: 2014-08-25 17:00:09
Message-ID: 53FB6B99.9070405@dalibo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Le 21/08/2014 10:17, Julien Rouhaud a écrit :
> Hello,
>
> Attached patch implements the following TODO item :
>
> Track number of WAL files ready to be archived in pg_stat_archiver
>
> However, it will track the total number of any file ready to be
> archived, not only WAL files.
>
> Please let me know what you think about it.
>
> Regards.

Hi,

Maybe looking at archive ready count will be more efficient if it is
done in the view definition through a function. This will avoid any
issue with incrementing/decrement of archiverStats.ready_count and the
patch will be more simple. Also I don't think we need an other memory
allocation for that, the counter information is always in the number of
.ready files in the archive_status directory and the call to
pg_stat_archiver doesn't need high speed performances.

For example having a new function called
pg_stat_get_archive_ready_count() that does the same at what you add
into pgstat_read_statsfiles() and the pg_stat_archiver defined as follow:

CREATE VIEW pg_stat_archiver AS
s.failed_count,
s.last_failed_wal,
s.last_failed_time,
pg_stat_get_archive_ready() as ready_count,
s.stats_reset
FROM pg_stat_get_archiver() s;

The function pg_stat_get_archive_ready_count() will also be available
for any other querying.

--
Gilles Darold
http://dalibo.com - http://dalibo.org

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Heikki Linnakangas 2014-08-25 17:18:05 Re: SKIP LOCKED DATA (work in progress)
Previous Message Heikki Linnakangas 2014-08-25 16:34:20 Re: psql \watch versus \timing