From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | "Just Someone" <just(dot)some(at)gmail(dot)com> |
Cc: | "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: Very slow catalog query |
Date: | 2008-03-31 17:27:25 |
Message-ID: | 14972.1206984445@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
"Just Someone" <just(dot)some(at)gmail(dot)com> writes:
> Here is the result of explain analyze (though this one took 1500ms and
> not 169000):
Well, it's hard to be sure what the problem is when you're not showing
us a problem case ... but I notice that this indexscan is estimated
awfully high:
> -> Index Scan using
> pg_depend_reference_index on pg_depend dep (cost=0.00..64942.17
> rows=247 width=12) (actual time=396.542..1547.172 rows=22 loops=1)
> Index Cond: (refobjid = 30375069::oid)
The reason is not far to seek: the scan is checking only the second
index key, meaning that it has to scan the entire index. (I am
surprised it didn't use a seqscan instead. Are you using enable_seqscan
= off? Not a great idea.) Since you know you are looking for a table,
you could improve matters by adding a constraint on refclassid:
dep.refclassid = 'pg_class'::regclass
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Andrej Ricnik-Bay | 2008-03-31 17:34:24 | Re: Schema design question |
Previous Message | x asasaxax | 2008-03-31 16:52:51 | Re: Primary Key with serial |