From: | Claudio Freire <klaussfreire(at)gmail(dot)com> |
---|---|
To: | Rosser Schwarz <rosser(dot)schwarz(at)gmail(dot)com> |
Cc: | Saurabh <saurabh(dot)b85(at)gmail(dot)com>, pgsql-performance(at)postgresql(dot)org |
Subject: | Re: How to improve insert speed with index on text column |
Date: | 2012-02-01 03:51:03 |
Message-ID: | CAGTBQpYAbJmTxSgUuhdbCMHq5Hnup5CCuQE7gk2jJ3+6=8T5Gw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-performance |
On Wed, Feb 1, 2012 at 12:49 AM, Claudio Freire <klaussfreire(at)gmail(dot)com> wrote:
> On Wed, Feb 1, 2012 at 12:29 AM, Rosser Schwarz
> <rosser(dot)schwarz(at)gmail(dot)com> wrote:
>> Remember, DDL is transactional in PostgreSQL. In principle, you
>> should be able to drop the index, do your inserts, and re-create the
>> index without affecting concurrent users, if you do all of that inside
>> an explicit transaction. Doing the inserts inside a transaction may
>> speed them up, as well.
>
> Creating an index requires an update lock on the table, and an
> exclusive lock on the system catalog.
> Even though with "CONCURRENTLY" it's only for a short while.
> So it does affect concurrent users.
Forgot to mention that if you don't commit the drop, you see no
performance increase.
So:
begin
drop
insert
create
commit
Does not work to improve performance. At all.
From | Date | Subject | |
---|---|---|---|
Next Message | Gudmundur Johannesson | 2012-02-01 17:10:56 | Index with all necessary columns - Postgres vs MSSQL |
Previous Message | Claudio Freire | 2012-02-01 03:49:09 | Re: How to improve insert speed with index on text column |