Re: The Contrib Roundup (long) - Mailing list pgsql-hackers

From Greg Stark
Subject Re: The Contrib Roundup (long)
Date
Msg-id 871x764x6r.fsf@stark.xeocode.com
Whole thread Raw
In response to Re: The Contrib Roundup (long)  ("Marc G. Fournier" <scrappy@postgresql.org>)
Responses Re: The Contrib Roundup (long)
List pgsql-hackers
"Marc G. Fournier" <scrappy@postgresql.org> writes:

> >> Why all the choices?  What cases are there for doing one without the
> >> other?  If you want to get 'fine tuned', do a 'REINDEX TABLE' ... I can
> >> see REINDEX SYSTEM and REINDEX DATABASE (includes SYSTEM), but not the
> >> USER one ..
> >
> > The main argument I can think of for REINDEX USER is that it could be
> > executed by someone who isn't necessarily superuser.  Not sure how
> > important that is, though.
> 
> Couldn't behaviour of REINDEX DATABASE not take that into account, and 'skip'
> the system indices if not superuser?

I can see a reasonable argument for them to be separated like this. If I
wanted to reindex everything in sight in a large database I would want to
control when each of my user tables was reindexed -- some of them would take
all night for a single table. 

But all the system tables together should never be so large as to be a problem
doing them in a single batch and I would never be able to enumerate them all
myself.

So I would probably start with a REINDEX SYSTEM and then go through my tables
and group them into chunks to run in each maintenance window available.

Of course online index rebuilds would be even better :)

-- 
greg



pgsql-hackers by date:

Previous
From: David Fetter
Date:
Subject: Re: In RULEs, INSERT does not use DEFAULTs
Next
From: "Marc G. Fournier"
Date:
Subject: Re: The Contrib Roundup (long)