On Sun, Oct 12, 2014 at 2:27 PM, Stephen Frost <sfr...@snowman.net> wrote:
>
> * Alvaro Herrera (alvhe...@2ndquadrant.com) wrote:
> > Sawada Masahiko wrote:
> > > Attached WIP patch adds new syntax REINEX SCHEMA which does reindexing
> > > all table of specified schema.
> > > There are syntax dose reindexing specified index, per table and per
database,
> > > but we can not do reindexing per schema for now.
> >
> > It seems doubtful that there really is much use for this feature, but if
> > there is, I think a better syntax precedent is the new ALTER TABLE ALL
> > IN TABLESPACE thingy, rather than your proposed REINDEX SCHEMA.
> > Something like REINDEX TABLE ALL IN SCHEMA perhaps.
>
> Yeah, I tend to agree that we should be looking at the 'ALL IN
> TABLESPACE' and 'ALL IN SCHEMA' type of commands to keep things
> consistent.  This might be an alternative for the vacuum / analyze /
> reindex database commands also..
>

Some review:

1) +1 to "REINDEX ALL IN SCHEMA name"


2) IMHO the logic should be exactly the same as REINDEX DATABASE, including
the transaction control. Imagine a schema with a lot of tables, you can
lead to a deadlock using just one transaction block.


3) The patch was applied to master and compile without warnings


4) Typo (... does not have any table)

+   if (!reindex_schema(heapOid))
+       ereport(NOTICE,
+               (errmsg("schema\"%s\" does not hava any table",
+                       schema->relname)));


5) Missing of regression tests, please add it to
src/test/regress/sql/create_index.sql

6) You need to add psql complete tabs

7) I think we can add "-S / --schema" option do reindexdb in this patch
too. What do you think?

Regards,

--
Fabrízio de Royes Mello
Consultoria/Coaching PostgreSQL
>> Timbira: http://www.timbira.com.br
>> Blog: http://fabriziomello.github.io
>> Linkedin: http://br.linkedin.com/in/fabriziomello
>> Twitter: http://twitter.com/fabriziomello
>> Github: http://github.com/fabriziomello

Reply via email to