Re: [COMMITTERS] pgsql: Avoid having vacuum set reltuples to 0 onnon-empty relations in
От | Robert Haas |
---|---|
Тема | Re: [COMMITTERS] pgsql: Avoid having vacuum set reltuples to 0 onnon-empty relations in |
Дата | |
Msg-id | CA+TgmoZRayZPgv8Dw5Z=Qx_3H81Q0aK6kqkFOZ+3=kTmKkPY9Q@mail.gmail.com обсуждение исходный текст |
Ответ на | [COMMITTERS] pgsql: Avoid having vacuum set reltuples to 0 on non-empty relationsin (Andrew Gierth <rhodiumtoad@postgresql.org>) |
Ответы |
Re: [COMMITTERS] pgsql: Avoid having vacuum set reltuples to 0 onnon-empty relations in
|
Список | pgsql-committers |
On Thu, Mar 16, 2017 at 6:39 PM, Andrew Gierth <rhodiumtoad@postgresql.org> wrote: > Avoid having vacuum set reltuples to 0 on non-empty relations in the > presence of page pins, which leads to serious estimation errors in the > planner. This particularly affects small heavily-accessed tables, > especially where locking (e.g. from FK constraints) forces frequent > vacuums for mxid cleanup. > > Fix by keeping separate track of pages whose live tuples were actually > counted vs. pages that were only scanned for freezing purposes. Thus, > reltuples can only be set to 0 if all pages of the relation were > actually counted. > > Backpatch to all supported versions. > > Per bug #14057 from Nicolas Baccelli, analyzed by me. > > Discussion: https://postgr.es/m/20160331103739.8956.94469@wrigleys.postgresql.org In the department of nitpicks, we usually try to write commit messages so that the first line is a summary line which stands alone, and then there's a blank line, and then more follows. a la https://chris.beams.io/posts/git-commit/#separate -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
В списке pgsql-committers по дате отправления: