Alvaro Herrera <[EMAIL PROTECTED]> writes: > On Fri, Sep 02, 2005 at 04:02:08PM -0400, Tom Lane wrote: >> It has to be a *new* table, not an *empty* table. If it's already >> visible to other xacts then somebody else could insert into it in >> parallel with you, because COPY doesn't take an exclusive lock.
> What about the indexes? Logging one of the inserters and not the other > is certain to corrupt the whole thing. Good point, but that fits in just fine with the restriction to just-created tables. >> Contrariwise, it doesn't really matter (I think) if there are WAL-logged >> records already in the table and COPY is adding more that aren't logged. > Only if the page is locked in a fashion that the bulk loader can't > insert tuples into a page that the other transaction is using. What other transaction? The point I was making is that BEGIN; CREATE TABLE ... INSERT ... COPY ... is still optimizable. There isn't going to be anyone competing with the COPY while it runs. regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 1: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to [EMAIL PROTECTED] so that your message can get through to the mailing list cleanly