Removal of unnecessary CommandCounterIncrement() when doing ONCOMMIT DELETE ROWS

Поиск
Список
Период
Сортировка
От Michael Paquier
Тема Removal of unnecessary CommandCounterIncrement() when doing ONCOMMIT DELETE ROWS
Дата
Msg-id 20181109024731.GF2652@paquier.xyz
обсуждение исходный текст
Ответы Re: Removal of unnecessary CommandCounterIncrement() when doing ONCOMMIT DELETE ROWS  (Alvaro Herrera <alvherre@2ndquadrant.com>)
Список pgsql-hackers
Hi all,

When doing a set of ON COMMIT DELETE ROWS actions for relations, there
is a CCI happening after each truncation:
@@ -13334,10 +13334,8 @@ PreCommit_on_commit_actions(void)
    * exists at truncation time.
    */
    if (oids_to_truncate != NIL)
-   {
        heap_truncate(oids_to_truncate);
-       CommandCounterIncrement();  /* XXX needed? */
-   }

This has been visibly introduced by f9b5b41 back in 2002 which reworked
how ON COMMIT works.

Alvaro has mentioned that it would not be needed here:
20181106125337.o23kjdv546bu2tei@alvherre.pgsql
And I think that I agree with that, because visibly this applies to
index rebuilds but in those cases CCIs are happening locally.  So I
think that we can get rid of that, and I suggest to remove it only on
HEAD only of course.

Any objections?
--
Michael

Вложения

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

Предыдущее
От: David Rowley
Дата:
Сообщение: Re: Performance improvements of INSERTs to a partitioned table
Следующее
От: Amit Kapila
Дата:
Сообщение: Re: New function pg_stat_statements_reset_query() to reset statisticsof a specific query