Received: from localhost (maia-3.hub.org [200.46.204.184]) by postgresql.org (Postfix) with ESMTP id D68D39FB955 for ; Tue, 6 Mar 2007 12:02:40 -0400 (AST) Received: from postgresql.org ([200.46.204.71]) by localhost (mx1.hub.org [200.46.204.184]) (amavisd-new, port 10024) with ESMTP id 30053-07 for ; Tue, 6 Mar 2007 12:02:25 -0400 (AST) X-Greylist: from auto-whitelisted by SQLgrey-1.7.4 Received: from mail3.ecircle.de (mail3.ecircle.de [195.140.186.206]) by postgresql.org (Postfix) with ESMTP id 41FCD9FB25F for ; Tue, 6 Mar 2007 12:02:25 -0400 (AST) Received: from einstein.muc.ecircle.de (einstein.muc.ecircle.de [192.168.1.7]) by mail3.ecircle.de (READY) with ESMTP id 888C055C06E; Tue, 6 Mar 2007 17:02:24 +0100 (CET) Received: from [192.168.1.91] ([192.168.1.91]) by einstein.muc.ecircle.de with Microsoft SMTPSVC(6.0.3790.1830); Tue, 6 Mar 2007 17:02:24 +0100 Subject: Re: Insert performance From: Csaba Nagy To: Carlos Moreno Cc: postgres performance list In-Reply-To: <45ED8EFD.5030908@mochima.com> References: <1172596221.393824.41130@j27g2000cwj.googlegroups.com> <45ED1996.7050008@archonet.com> <1173167607.4917.8.camel@hatman> <45ED217D.30404@archonet.com> <1173172748.4917.23.camel@hatman> <45ED37D1.3000503@archonet.com> <45ED8EFD.5030908@mochima.com> Content-Type: text/plain Message-Id: <1173196944.9058.25.camel@coppola.muc.ecircle.de> Mime-Version: 1.0 X-Mailer: Ximian Evolution 1.4.6 (1.4.6-2) Date: Tue, 06 Mar 2007 17:02:24 +0100 Content-Transfer-Encoding: 7bit X-OriginalArrivalTime: 06 Mar 2007 16:02:24.0450 (UTC) FILETIME=[D47FD220:01C76008] X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=0.103 tagged_above=0 required=5 tests=AWL, BAYES_50, SPF_PASS X-Spam-Level: X-Archive-Number: 200703/134 X-Sequence-Number: 23539 I only know to answer your no. 2: > 2) What about the issue with excessive locking for foreign keys when > inside a transaction? Has that issue disappeared in 8.2? And if not, > would it affect similarly in the case of multiple-row inserts? The exclusive lock is gone already starting with 8.0 IIRC, a non-exclusive lock on the parent row is used instead. Thing is that this is still too strong ;-) The proper lock would be one which only prevents modification of the parent key, other updates would be safe on the same row. In any case, the current behavior is much better than what was before. Cheers, Csaba.