Received: from makus.postgresql.org (makus.postgresql.org [98.129.198.125]) by mail.postgresql.org (Postfix) with ESMTP id 559B1F64990 for ; Tue, 24 Jul 2012 13:32:27 -0300 (ADT) Received: from plane.gmane.org ([80.91.229.3]) by makus.postgresql.org with esmtp (Exim 4.72) (envelope-from ) id 1Sti25-0003MQ-UG for pgsql-performance@postgresql.org; Tue, 24 Jul 2012 16:32:27 +0000 Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1Sti1s-0000j2-JC for pgsql-performance@postgresql.org; Tue, 24 Jul 2012 18:32:12 +0200 Received: from ppp-93-104-183-237.dynamic.mnet-online.de ([93.104.183.237]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 24 Jul 2012 18:32:12 +0200 Received: from spam_eater by ppp-93-104-183-237.dynamic.mnet-online.de with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 24 Jul 2012 18:32:12 +0200 X-Injected-Via-Gmane: http://gmane.org/ To: pgsql-performance@postgresql.org From: Thomas Kellerer Subject: Re: Using ctid column changes plan drastically Date: Tue, 24 Jul 2012 18:32:09 +0200 Lines: 18 Message-ID: References: <21308.1343139781@sss.pgh.pa.us> <22819.1343145325@sss.pgh.pa.us> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 7bit X-Complaints-To: usenet@dough.gmane.org X-Gmane-NNTP-Posting-Host: ppp-93-104-183-237.dynamic.mnet-online.de User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.8.1.21) Gecko/20090302 Thunderbird/2.0.0.21 Mnenhy/0.7.5.666 In-Reply-To: <22819.1343145325@sss.pgh.pa.us> X-Pg-Spam-Score: -1.9 (-) X-Archive-Number: 201207/305 X-Sequence-Number: 47486 Tom Lane wrote on 24.07.2012 17:55: > Joins on tid columns just aren't supported very well at the moment. > Partly that's from lack of round tuits, and partly it's because it > doesn't seem all that wise to encourage people to use them. There > are gotchas if any of the rows receive concurrent updates. Thanks for the clarification. I will keep that in mind. > FWIW, it might be helpful to cast this as a NOT EXISTS rather than > NOT IN subquery. Hmm. How would you change that into an NOT EXISTS clause (so that one of the duplicates remains) Everything I come up with is in fact slower than the NOT IN solution. Regards Thomas