Re: Slow tab completion w/ lots of tables

From: Stephen Frost <sfrost(at)snowman(dot)net>
To: Robert Haas <robertmhaas(at)gmail(dot)com>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Slow tab completion w/ lots of tables
Date: 2012-08-21 15:44:44
Message-ID: 20120821154443.GG1267@tamriel.snowman.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Robert,

* Robert Haas (robertmhaas(at)gmail(dot)com) wrote:
> On Thu, Aug 16, 2012 at 10:37 PM, Stephen Frost <sfrost(at)snowman(dot)net> wrote:
> > When doing tab-completion under 9.1, pg_table_is_visible(oid) is slow
> > and is ending up as the first thing tested against all the rows
> > in pg_class. Increasing the cost of pg_table_is_visible() up to
> > 10 causes it to move to the end of the tests, which improves things
> > greatly- I thought there was a plan to make that the default..?
> >
> > This is with 9.1.4.
>
> Is this a regression versus earlier releases, or just a bad thing in general?

It's really a regression- in prior releases, we had the
pg_table_is_visible() test later in the WHERE clause, so that call
wasn't invoked as often. This all happened when Tom reworked the psql
SQL calls to be defined in an array instead of in-line'd (which was a
good change, but moved pg_table_is_visible() up to the front of the
WHERE clause, slowing things down).

Thanks,

Stephen

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Robert Haas 2012-08-21 15:48:19 Re: GetSnapshotData() comments
Previous Message Robert Haas 2012-08-21 15:41:00 Re: New statistics for WAL buffer dirty writes