Re: Return of the Solaris vacuum polling problem -- anyone remember this?

Поиск
Список
Период
Сортировка
От Bruce Momjian
Тема Re: Return of the Solaris vacuum polling problem -- anyone remember this?
Дата
Msg-id 201008220240.o7M2eC728013@momjian.us
обсуждение исходный текст
Ответ на Re: Return of the Solaris vacuum polling problem -- anyone remember this?  (Josh Berkus <josh@agliodbs.com>)
Ответы Re: Return of the Solaris vacuum polling problem -- anyone remember this?  (Rob Wultsch <wultsch@gmail.com>)
Re: Return of the Solaris vacuum polling problem -- anyone remember this?  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
Josh Berkus wrote:
>
> > On further reflection, though: since we put in the BufferAccessStrategy
> > code, which was in 8.3, the background writer isn't *supposed* to be
> > very much involved in writing pages that are dirtied by VACUUM.  VACUUM
> > runs in a small ring of buffers and is supposed to have to clean its own
> > dirt most of the time.  So it's wrong to blame this on the bgwriter not
> > holding up its end.  Rather, what you need to be thinking about is how
> > come vacuum seems to be making lots of pages dirty on only one of these
> > machines.
>
> This is an anti-wraparound vacuum, so it could have something to do with
> the hint bits.  Maybe it's setting the freeze bit on every page, and
> writing them one page at a time?  Still don't understand the call to
> pollsys, even so, though.

We often mention that we do vacuum freeze for anti-wraparound vacuum,
but not for pg_clog file removal, which is the primary trigger for
autovacuum vacuum freezing.  I have added the attached documentation
patch for autovacuum_freeze_max_age;  back-patched to 9.0.

--
  Bruce Momjian  <bruce@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

  + It's impossible for everything to be true. +
Index: doc/src/sgml/config.sgml
===================================================================
RCS file: /cvsroot/pgsql/doc/src/sgml/config.sgml,v
retrieving revision 1.304
diff -c -c -r1.304 config.sgml
*** doc/src/sgml/config.sgml    17 Aug 2010 04:37:20 -0000    1.304
--- doc/src/sgml/config.sgml    22 Aug 2010 02:30:39 -0000
***************
*** 4150,4156 ****
         <para>
          Specifies the maximum age (in transactions) that a table's
          <structname>pg_class</>.<structfield>relfrozenxid</> field can
!         attain before a <command>VACUUM</> operation is forced to prevent
          transaction ID wraparound within the table.  Note that the system
          will launch autovacuum processes to prevent wraparound even when
          autovacuum is otherwise disabled.
--- 4150,4157 ----
         <para>
          Specifies the maximum age (in transactions) that a table's
          <structname>pg_class</>.<structfield>relfrozenxid</> field can
!         attain before a <command>VACUUM</> operation is forced to allow removal
!         of old files from the <filename>pg_clog</> subdirectory and prevent
          transaction ID wraparound within the table.  Note that the system
          will launch autovacuum processes to prevent wraparound even when
          autovacuum is otherwise disabled.

В списке pgsql-hackers по дате отправления:

Предыдущее
От: "Joshua D. Drake"
Дата:
Сообщение: Re: Version Numbering
Следующее
От: Rob Wultsch
Дата:
Сообщение: Re: Return of the Solaris vacuum polling problem -- anyone remember this?