Обсуждение: TODO item: Improve speed with indexes
Hi everyone,<br /><br />Regarding the mentioned TODO item, the past discussion as I see from the following thread:<br /><br/><a href="http://archives.postgresql.org/pgsql-general/2007-01/msg00879.php">http://archives.postgresql.org/pgsql-general/2007-01/msg00879.php </a><br/><br /><br />concludes that during vacuum full, the relations' indexes should be recreated via REINDEX, rather thanupdating them.<br /><br />One solution which I see to this is to simply invoke reindex_relation(), or the lower levelreindex_index() function somewhere after full_vacuum_rel() routine is done with its work. <br /><br />I prototyped thisand it does solve the problem of index bloating during vacuum full. However this may not be the best solution since full_vacuum_relfunction is still updating the relation's indexes. <br /><br /> The other solution could be to not updatethe indexes at all (just REINDEX it). But this does'nt seem to fit in with the current implementation of repair_frag()function.<br /><br />What do you all think would be the correct approach to solve this? <br /><br />Thanks<br/>
"Aleksis Petrov" <a.aleksis@gmail.com> writes: > The other solution could be to not update the indexes at all (just REINDEX > it). But this does'nt seem to fit in with the current implementation of > repair_frag() function. Considerably more to the point: what happens if VACUUM fails partway through (ie, before it can complete the reindexing)? regards, tom lane