Talk About Network

Google


Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Data Bases > Pgsql Performance > Re: Message que...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 2 of 5 Topic 4004 of 4424
Post > Topic >>

Re: Message queue table..

by craig@[EMAIL PROTECTED] (Craig Ringer) Apr 19, 2008 at 02:18 AM

Jesper Krogh wrote:
> 
> Hi.
> 
> I have this "message queue" table.. currently with 8m+ records. Picking 
> the top priority messages seem to take quite long.. it is just a matter 
> of searching the index.. (just as explain analyze tells me it does).
> 
> Can anyone digest further optimizations out of this output? (All records

> have funcid=4)

You mean all records of interest, right, not all records in the table?

What indexes do you have in place? What's the schema? Can you post a "\d 
tablename" from psql?

> # explain analyze SELECT job.jobid, job.funcid, job.arg, job.uniqkey, 
> job.insert_time, job.run_after, job.grabbed_until, job.priority, 
> job.coalesce FROM workqueue.job  WHERE (job.funcid = 4) AND 
> (job.run_after <= 1208442668) AND (job.grabbed_until <= 1208442668) AND 
> (job.coalesce = 'Efam') ORDER BY funcid, priority ASC LIMIT 1
> ;
> 
>    QUERY PLAN
>
--------------------------------------------------------------------------------------------------------------------------------------------------------------

> 
>  Limit  (cost=0.00..0.09 rows=1 width=106) (actual time=245.273..245.274

> rows=1 loops=1)
>    ->  Index Scan using workqueue_job_funcid_priority_idx on job 
> (cost=0.00..695291.80 rows=8049405 width=106) (actual 
> time=245.268..245.268 rows=1 loops=1)
>          Index Cond: (funcid = 4)
>          Filter: ((run_after <= 1208442668) AND (grabbed_until <= 
> 1208442668) AND ("coalesce" = 'Efam'::text))
>  Total runtime: 245.330 ms
> (5 rows)

Without seeing the schema and index definitions ... maybe you'd benefit 
from a multiple column index. I'd experiment with an index on 
(funcid,priority) first.

--
Craig Ringer

-- 
Sent via pgsql-performance mailing list (pgsql-performance@[EMAIL PROTECTED]
)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance
 




 5 Posts in Topic:
Message queue table..
jesper@[EMAIL PROTECTED]   2008-04-18 19:49:39 
Re: Message queue table..
craig@[EMAIL PROTECTED]   2008-04-19 02:18:40 
Re: Message queue table..
jesper@[EMAIL PROTECTED]   2008-04-18 21:23:09 
Re: Message queue table..
tgl@[EMAIL PROTECTED] (T  2008-04-18 15:27:02 
Re: Message queue table..
Chris Browne <cbbrowne  2008-04-18 15:57:10 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Mon Dec 1 8:20:57 CST 2008.