Hi Aaron,

> Hey, so I moved the ACL and mailbox performance bugs up to "eventually,
> maybe in 2.0" and left just these three items outstanding before 2.0.4:
> 
>     * Bug 134: Some MySQL tweaks to be applied.
>     * Bug 161: dbmail-smtp SIG11 on following message.
>     * Bug 164: No more mailbox full. Mail bounced with �user unknown�.

What about 171: max() is indexable in mysql but not in postgresql
                causing extreme slowness every folder open

The difference is extreme, 0.5 vs 3.1 seconds:

dbmail=# explain analyze SELECT MAX(message_idnr)+1 FROM
dbmail_messages;
 
Aggregate  (cost=15450.47..15450.47 rows=1 width=8) (actual
time=3122.637..3122.640 rows=1 loops=1)
   ->  Seq Scan on dbmail_messages  (cost=0.00..14757.17 rows=277317
width=8) (actual time=5.881..2748.839 rows=83151 loops=1)
 Total runtime: 3132.558 ms
(3 rows)

dbmail=# explain analyze SELECT message_idnr+1 FROM dbmail_messages
ORDER BY message_idnr DESC LIMIT 1;
 
Limit  (cost=0.00..0.43 rows=1 width=8) (actual time=0.428..0.431
rows=1 loops=1)
   ->  Index Scan Backward using dbmail_messages_pkey on dbmail_messages
(cost=0.00..118359.91 rows=277317 width=8) (actual time=0.418..0.418
rows=1 loops=1)
 Total runtime: 0.547 ms
(3 rows)


Thomas
-- 
http://www.tmueller.com for pgp key (95702B3B)

Reply via email to