Re: Report the number of skipped frozen pages by manual VACUUM

Masahiko Sawada <sawada.mshk@gmail.com>

From: Masahiko Sawada <sawada.mshk@gmail.com>
To: Yugo Nagata <nagata@sraoss.co.jp>
Cc: Jim Nasby <jim.nasby@openscg.com>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2017-03-15T10:51:52Z
Lists: pgsql-hackers

Attachments

On Wed, Mar 15, 2017 at 1:09 PM, Yugo Nagata <nagata@sraoss.co.jp> wrote:
> On Fri, 10 Mar 2017 20:08:42 +0900
> Masahiko Sawada <sawada.mshk@gmail.com> wrote:
>
>> On Fri, Mar 10, 2017 at 3:58 PM, Jim Nasby <jim.nasby@openscg.com> wrote:
>> > On 3/6/17 8:34 PM, Masahiko Sawada wrote:
>> >>
>> >> I don't think it can say "1 frozen pages" because the number of
>> >> skipped pages according to visibility map is always more than 32
>> >> (SKIP_PAGES_THRESHOLD).
>> >
>> >
>> > That's just an artifact of how the VM currently works. I'm not a fan of
>> > cross dependencies like that unless there's a pretty good reason.
>>
>> Thank you for the comment.
>> Agreed. Attached fixed version patch.
>
> It seems that it says "frozen pages" if pinskipped_pages is not zero,
> rather than about frozenskipped_pages.
>
> How about writing as below?
>
>     appendStringInfo(&buf, ngettext("Skipped %u page due to buffer pins, "
>                                     "Skipped %u pages due to buffer pins, ",
>                                     vacrelstats->pinskipped_pages),
>                      vacrelstats->pinskipped_pages);
>     appendStringInfo(&buf, ngettext("%u frozen page.\n", "%u frozen pages.\n",
>                                     vacrelstats->frozenskipped_pages),
>                      vacrelstats->frozenskipped_pages);
>

Yeah, you're right. I've attached the updated version patch
incorporated your comment and fixing documentation.

Regards,

--
Masahiko Sawada
NIPPON TELEGRAPH AND TELEPHONE CORPORATION
NTT Open Source Software Center

Commits

  1. Make VACUUM VERBOSE report the number of skipped frozen pages.

  2. Allow vacuums to report oldestxmin