Jeff Janes <jeff.janes@xxxxxxxxx> writes: > On Thu, Aug 1, 2013 at 5:16 PM, Sergey Burladyan <eshkinkot@xxxxxxxxx> wrote: >> If I not mistaken, may be two code paths like this here: >> (1) mergejoinscansel -> scalarineqsel-> ineq_histogram_selectivity -> get_actual_variable_range -> index_getnext >> (2) scalargtsel -> scalarineqsel -> ineq_histogram_selectivity -> get_actual_variable_range -> index_getnext > Yeah, I think you are correct. mergejoinscansel does *not* call scalarineqsel, nor get_actual_variable_range. It calls get_variable_range, which only looks at the pg_statistic entries. I think we need to see the actual stack traces, not incomplete versions. It's possible that the situation here involves bloat in pg_statistic, but we're just leaping to conclusions if we assume that that's where the index fetches are occurring. regards, tom lane -- Sent via pgsql-performance mailing list (pgsql-performance@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-performance