Re: Estimated rows question - Mailing list pgsql-general

From Tom Lane
Subject Re: Estimated rows question
Date
Msg-id 6832.1346546861@sss.pgh.pa.us
Whole thread Raw
In response to Estimated rows question  (Sam Ross <elliptic@gmail.com>)
List pgsql-general
[ sorry for slow response, but I'd not gotten time to think about this... ]

Sam Ross <elliptic@gmail.com> writes:
> I was wondering why it seems that the query planner can't "see", based
> on the histograms, that two join-columns have a very small
> intersection, and adjust its row estimation accordingly.

The reason why not is that eqjoinsel() doesn't take any such
consideration into account.  It's possible that it'd be a good idea
to teach it to do so.  I'm not entirely convinced though.  It would
add a fair amount of expense to that function, as well as adding
some possibly shaky assumptions, and I'm not sure how often we'd
get a usefully-better estimate in practice.  OTOH, there are a lot
of shaky assumptions in eqjoinsel() already, and we did decide this
was worth worrying about in mergejoin cost estimation.

Do you want to try it and submit a patch for testing?

            regards, tom lane


pgsql-general by date:

Previous
From: Thalis Kalfigkopoulos
Date:
Subject: Re: CASE/WHEN behavior with NULLS
Next
From: "Johan Nel"
Date:
Subject: Re: "Too far out of the mainstream"