RE: [PATCH] Speedup truncates of relation forks

Поиск
Список
Период
Сортировка
Искать
От
Tsunakawa, Takayuki
Тема
RE: [PATCH] Speedup truncates of relation forks
Дата
Msg-id
0A3221C70F24FB45833433255569204D1FC4CB12@G01JPEXMBYT05
Ответ на
Список
Дерево обсуждения
[PATCH] Speedup truncates of relation forks "Jamison, Kirk" <k.jamison@jp.fujitsu.com>
Re: [PATCH] Speedup truncates of relation forks Tomas Vondra <tomas.vondra@2ndquadrant.com>
RE: [PATCH] Speedup truncates of relation forks "Tsunakawa, Takayuki" <tsunakawa.takay@jp.fujitsu.com>
Re: [PATCH] Speedup truncates of relation forks Masahiko Sawada <sawada.mshk@gmail.com>
RE: [PATCH] Speedup truncates of relation forks "Tsunakawa, Takayuki" <tsunakawa.takay@jp.fujitsu.com>
RE: [PATCH] Speedup truncates of relation forks "Jamison, Kirk" <k.jamison@jp.fujitsu.com>
Re: [PATCH] Speedup truncates of relation forks Masahiko Sawada <sawada.mshk@gmail.com>
RE: [PATCH] Speedup truncates of relation forks "Tsunakawa, Takayuki" <tsunakawa.takay@jp.fujitsu.com>
RE: [PATCH] Speedup truncates of relation forks "Jamison, Kirk" <k.jamison@jp.fujitsu.com>
RE: [PATCH] Speedup truncates of relation forks "Jamison, Kirk" <k.jamison@jp.fujitsu.com>
Re: [PATCH] Speedup truncates of relation forks Masahiko Sawada <sawada.mshk@gmail.com>
RE: [PATCH] Speedup truncates of relation forks "Jamison, Kirk" <k.jamison@jp.fujitsu.com>
RE: [PATCH] Speedup truncates of relation forks "Jamison, Kirk" <k.jamison@jp.fujitsu.com>
Re: [PATCH] Speedup truncates of relation forks Thomas Munro <thomas.munro@gmail.com>
RE: [PATCH] Speedup truncates of relation forks "Jamison, Kirk" <k.jamison@jp.fujitsu.com>
RE: [PATCH] Speedup truncates of relation forks "Jamison, Kirk" <k.jamison@jp.fujitsu.com>
Re: [PATCH] Speedup truncates of relation forks Fujii Masao <masao.fujii@gmail.com>
RE: [PATCH] Speedup truncates of relation forks "Jamison, Kirk" <k.jamison@jp.fujitsu.com>
Re: [PATCH] Speedup truncates of relation forks Alvaro Herrera from 2ndQuadrant <alvherre@alvh.no-ip.org>
RE: [PATCH] Speedup truncates of relation forks "Jamison, Kirk" <k.jamison@jp.fujitsu.com>
Re: [PATCH] Speedup truncates of relation forks Fujii Masao <masao.fujii@gmail.com>
Re: [PATCH] Speedup truncates of relation forks Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [PATCH] Speedup truncates of relation forks Fujii Masao <masao.fujii@gmail.com>
RE: [PATCH] Speedup truncates of relation forks "Jamison, Kirk" <k.jamison@jp.fujitsu.com>
Re: [PATCH] Speedup truncates of relation forks Michael Paquier <michael@paquier.xyz>
Re: [PATCH] Speedup truncates of relation forks Fujii Masao <masao.fujii@gmail.com>
Re: [PATCH] Speedup truncates of relation forks Fujii Masao <masao.fujii@gmail.com>
RE: [PATCH] Speedup truncates of relation forks "Jamison, Kirk" <k.jamison@jp.fujitsu.com>
Re: [PATCH] Speedup truncates of relation forks Fujii Masao <masao.fujii@gmail.com>
RE: [PATCH] Speedup truncates of relation forks "Jamison, Kirk" <k.jamison@jp.fujitsu.com>
Re: [PATCH] Speedup truncates of relation forks Fujii Masao <masao.fujii@gmail.com>
Re: [PATCH] Speedup truncates of relation forks Alvaro Herrera <alvherre@2ndquadrant.com>
Re: [PATCH] Speedup truncates of relation forks Adrien Nayrat <adrien.nayrat@anayrat.info>
RE: [PATCH] Speedup truncates of relation forks "Jamison, Kirk" <k.jamison@jp.fujitsu.com>
Re: [PATCH] Speedup truncates of relation forks Adrien Nayrat <adrien.nayrat@anayrat.info>
RE: [PATCH] Speedup truncates of relation forks "Jamison, Kirk" <k.jamison@jp.fujitsu.com>
Re: [PATCH] Speedup truncates of relation forks Adrien Nayrat <adrien.nayrat@anayrat.info>
From: Tomas Vondra [mailto:tomas.vondra@2ndquadrant.com]
> Years ago I've implemented an optimization for many DROP TABLE commands
> in a single transaction - instead of scanning buffers for each relation,
> the code now accumulates a small number of relations into an array, and
> then does a bsearch for each buffer.
> 
> Would something like that be applicable/useful here? That is, if we do
> multiple TRUNCATE commands in a single transaction, can we optimize it
> like this?

Unfortunately not.  VACUUM and autovacuum handles each table in a different transaction.

BTW, what we really want to do is to keep the failover time within 10 seconds.  The customer periodically TRUNCATEs tens of thousands of tables.  If failover unluckily happens immediately after those TRUNCATEs, the recovery on the standby could take much longer.  But your past improvement seems likely to prevent that problem, if the customer TRUNCATEs tables in the same transaction.

On the other hand, it's now highly possible that the customer can only TRUNCATE a single table in a transaction, thus run as many transactions as the TRUNCATEd tables.  So, we also want to speed up each TRUNCATE by touching only the buffers for the table, not scanning the whole shared buffers.  Andres proposed one method that uses a radix tree, but we don't have an idea how to do it yet.

Speeding up each TRUNCATE and its recovery is a different topic.  The patch proposed here is one possible improvement to shorten the failover time.


Regards
Takayuki Tsunakawa






В списке pgsql-hackers по дате отправления
От: Richard Guo
Дата:
Сообщение: Parallel grouping sets
От: Masahiko Sawada
Дата:
FAQ