Re: BUG #15169: create index CONCURRENTLY conflict with other table's COPY

From: "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>
To: Andres Freund <andres(at)anarazel(dot)de>
Cc: 德哥 <digoal(at)126(dot)com>, pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: BUG #15169: create index CONCURRENTLY conflict with other table's COPY
Date: 2018-04-24 15:29:52
Message-ID: CAKFQuwY+N5tXnhtgWR5qmZwNDBuxSL=Sopb9+NH72KfPWDz1CQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On Tue, Apr 24, 2018 at 8:16 AM, Andres Freund <andres(at)anarazel(dot)de> wrote:

> On 2018-04-24 12:29:47 +0000, PG Bug reporting form wrote:
> > table a's copy will block table b's CONCURRENTLY index creating.
>
> Yes, concurrently waits for other sessions to complete. I don't see a
> bug here?
>

​To be more specific a create index can stop processing as soon as its done
its own work because it prevented any concurrent transactions from
operating at the same time. With concurrently those other transactions can
continue to work and thus the concurrent indexing performed by CREATE INDEX
cannot know it is finished while other transactions hold write locks on the
affected table/index. Instead it waits "to finish" ​until those
transactions finish. The concurrent index creation has already started and
is in progress - there just isn't any communication to the client as to
progress.

David J.

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Alexey Bashtanov 2018-04-24 15:32:08 set/reset issues in create function and set_config
Previous Message Andres Freund 2018-04-24 15:16:58 Re: BUG #15169: create index CONCURRENTLY conflict with other table's COPY