Re: Bad Estimate for complex query with JOINS on subselects and OR inwhere conditions - Mailing list pgsql-general

From Peter Grman
Subject Re: Bad Estimate for complex query with JOINS on subselects and OR inwhere conditions
Date
Msg-id CACF7Wx3U_4o1EiBQzCr64u3DRXWAsJk5SxrD38KJ4hq111K=iA@mail.gmail.com
Whole thread Raw
In response to Re: Bad Estimate for complex query with JOINS on subselects and OR in where conditions  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
Hello Tom,

yes, I think this query is right below the geqo_threshold. But as I said, when I change only the WHERE condition to use AND instead of OR it's resulting in a really fast and efficient query (same planning time, but ~1/500th-1/1000th execution time). So there should be something different, or?

Thx for taking your time!

On Fri, Aug 16, 2019 at 3:44 PM Tom Lane <tgl@sss.pgh.pa.us> wrote:
Peter Grman <peter.grman@gmail.com> writes:
> our ORM with tenant separation enabled is creating the following query:

Ugh.

By my count there are nine joined tables in that query, which means
you're hitting the default join_collapse_limit.  Increasing that
setting might improve matters somewhat, though it won't fix the
bad rowcount estimate per se.

                        regards, tom lane

pgsql-general by date:

Previous
From: Luca Ferrari
Date:
Subject: Re: Variable constants ?
Next
From: "David G. Johnston"
Date:
Subject: Re: A 3 table join question