On Mon, Aug 25, 2014 at 3:36 PM, Sawada Masahiko <sawada.m...@gmail.com> wrote: > Attached WIP patch adds "-C (--concurrently)" option for reindexdb > command for concurrently reindexing. > If we specify "-C" option with any table then reindexdb do reindexing > concurrently with minimum lock necessary. > Note that we cannot use '-s' option (for system catalog) and '-C' > option at the same time. > This patch use simple method as follows. > > 1. Do "CREATE INDEX CONCURRENTLY" new index which has same definition > as target index > 2. Aquire ACCESS EXCLUSIVE LOCK to target table( and transaction starts) > 3. Swap old and new index > 4. Drop old index > 5. COMMIT > > These process are based on pg_repack(or pg_reorg) does, done via SQL.
This would be a useful for users, but I am not sure that you can call that --concurrently as the rename/swap phase requires an exclusive lock, and you would actually block a real implementation of REINDEX CONCURRENTLY (hm...). > ToDo > - Multi language support for log message. Why? I am not sure that's something you should deal with. -- Michael -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers