Received: from localhost (mx1.hub.org [200.46.208.251]) by postgresql.org (Postfix) with ESMTP id 643849FB462 for ; Tue, 10 Oct 2006 21:35:20 -0300 (ADT) Received: from postgresql.org ([200.46.204.71]) by localhost (mx1.hub.org [200.46.208.251]) (amavisd-new, port 10024) with ESMTP id 18006-01 for ; Tue, 10 Oct 2006 21:35:15 -0300 (ADT) X-Greylist: from auto-whitelisted by SQLgrey- Received: from linda-2.paradise.net.nz (linda-2.paradise.net.nz [203.96.152.181]) by postgresql.org (Postfix) with ESMTP id 68C6A9FB449 for ; Tue, 10 Oct 2006 21:35:14 -0300 (ADT) Received: from smtp-3.paradise.net.nz (tclsnelb1-src-1.paradise.net.nz [203.96.152.172]) by linda-2.paradise.net.nz (Paradise.net.nz) with ESMTP id <0J6Y00GXD4AMKZ@linda-2.paradise.net.nz> for pgsql-performance@postgresql.org; Wed, 11 Oct 2006 13:35:11 +1300 (NZDT) Received: from [192.168.1.11] (218-101-28-176.dsl.clear.net.nz [218.101.28.176]) by smtp-3.paradise.net.nz (Postfix) with ESMTP id 42A94A079EC; Wed, 11 Oct 2006 13:35:10 +1300 (NZDT) Date: Wed, 11 Oct 2006 13:34:53 +1300 From: Mark Kirkwood Subject: Re: Simple join optimized badly? In-reply-to: <20061009211827.GL72517@nasby.net> To: "Jim C. Nasby" Cc: Chris Browne , pgsql-performance@postgresql.org Message-id: <452C3C2D.6000008@paradise.net.nz> MIME-version: 1.0 Content-type: text/plain; format=flowed; charset=ISO-8859-1 Content-transfer-encoding: 7bit User-Agent: Thunderbird 1.5.0.7 (X11/20061003) References: <45274A77.7080005@modgraph-usa.com> <18722.1160236300@sss.pgh.pa.us> <5f820f750610071850o6ed0b19o162d65d1987b2a8c@mail.gmail.com> <200610081605.03501.josh@agliodbs.com> <4529A0CA.8000904@modgraph-usa.com> <4529B6D0.2010206@paradise.net.nz> <4529B7E8.8080606@modgraph-usa.com> <604pud8ise.fsf@dba2.int.libertyrms.com> <20061009211827.GL72517@nasby.net> X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=0.037 tagged_above=0 required=5 tests=AWL X-Spam-Level: X-Archive-Number: 200610/213 X-Sequence-Number: 21342 Jim C. Nasby wrote: > (snippage)... but we'll never get any progress so long as every > time hints are brought up the response is that they're evil and should > never be in the database. I'll also say that a very simple hinting > language (ie: allowing you to specify access method for a table, and > join methods) would go a huge way towards enabling app developers to get > stuff done now while waiting for all these magical optimizer > improvements that have been talked about for years. It is possibly because some of us feel they are evil :-) (can't speak for the *real* Pg developers, just my 2c here) As for optimizer improvements well, yeah we all want those - but the basic problem (as I think Tom stated) is the developer resources to do them. As an aside this applies to hints as well - even if we have a patch to start off with - look at how much time bitmap indexes have been worked on to get them ready for release.... Personally I don't agree with the oft stated comment along the lines of "we will never get the optimizer to the point where it does not need some form of hinting" as: 1/ we don't know that to be a true statement, and 2/ it is kind of admitting defeat on a very interesting problem, when in fact a great deal of progress has been made to date, obviously by people who believe it is possible to build a "start enough" optimizer. best wishes Mark