Re: Why vacuum_index_cleanup is needed for TOAST relations? - Mailing list pgsql-hackers

From Tomas Vondra
Subject Re: Why vacuum_index_cleanup is needed for TOAST relations?
Date
Msg-id 20190705141545.iyg47wbwgmo6ewqv@development
Whole thread Raw
In response to Why vacuum_index_cleanup is needed for TOAST relations?  (Nikolay Shaplov <dhyan@nataraj.su>)
List pgsql-hackers
On Fri, Jul 05, 2019 at 03:28:26PM +0300, Nikolay Shaplov wrote:
>I am importing recent changes into my reloption patch and came to a question,
>I did not find an answer...
>
>vacuum_index_cleanup option exists for both heap and toast relations.
>
>As I understand from documentation index cleanup is about is about reporting
>access method that some tuples in table that were indexed are dead, and should
>be cleaned.
>
>And as far as I get, we do not index any TOAST tuples directly. They are
>obtained by getting relation tuple, and then deTOAST it.
>
>So I do not understand why do we need vacuum_index_cleanup for TOAST tables.
>May be we should remove it from there??
>
>Or if I am wrong, can you explain where it is needed?
>

I'm not sure I understand your question / suggestion correctly, but
each TOAST table certainly has an index on (chunk_id, chunk_seq) - in
fact it's a unique index backing a primary key.

It's not clear to me what you mean by "index any TOAST tuples directly"
or "getting relation tuple", perhaps you could explain.

IMHO it's correct to have vacuum_index_cleanup even for TOAST tables.


regards

-- 
Tomas Vondra                  http://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services 



pgsql-hackers by date:

Previous
From: Jeff Janes
Date:
Subject: mcv compiler warning
Next
From: Alvaro Herrera
Date:
Subject: Re: [PATCH] Implement uuid_version()