Hi Blake,
Welcome to the group of people who are taking dbmail to it's current limits.
This is most likely a timeout issue on the client side. There's no error logged
on the dbmail side, other than finding the client has dropped the connection.
That's typical for mozilla based clients.
The problem is: dbmail retreives and parses each message one by one using three
queries for each message. This is taking just too long. This is a known issue,
even though you'r use case is kind of newish. Try doing a header search on such
a mailbox, and you'll run into the same problem with even worse results.
I've recently begun to refactor the whole imapcommands implementation to allow
the kind of optimizations that are required here. That's a large overhaul, meant
to remedy what imo entails a design-flaw in the current code; it handles only
one message at a time:
currently it does (bash-ish pseudocode):
for message in messages; do
result = retrieve message
result = parse result
store result
done
whereas much better would be
rows = retrieve messages
for row in rows; do
result = parse result
store result
done
so please be patient, this will be fixed.
Blake Mitchell wrote:
(I initially sent this message yesterday, but it didn't get through,
because of the attached log file I'm guessing)
First off, I'm using dbmail-imapd CVS from Wednesday, June 9 with MySQL
4.0.18 on RedHat 7.3 with Mozilla Thunderbird 0.6 on Windows XP.
I have a somewhat large mailbox where I keep all my old mail:
mysql> select count(*) from messages where mailbox_idnr = 14;
+----------+
| count(*) |
+----------+
| 10672 |
+----------+
1 row in set (0.01 sec)
I rarely use it, and for now I just use the database directly if I need
to search through it. It would be nice to get at it with a mail client
though. If I attempt to list messages in the folder, the mail client
waits for a short while and then comes up empty. The dbmail imap server
churns for quite a while and ends up with this:
Jun 13 19:02:21 sls-cd7p8 dbmail/imap4d[788]: dbmysql.c,db_query:
executing query [SELECT seen_flag, answered_flag, deleted_flag,
flagged_flag, draft_flag, recent_flag FROM messages WHERE message_idnr =
'128066' AND status < '2' AND unique_id != '' AND mailbox_idnr = '14']
Jun 13 19:02:21 sls-cd7p8 dbmail/imap4d[788]: IMAPClientHandler():
Finished command uid
Jun 13 19:02:21 sls-cd7p8 dbmail/imap4d[788]: IMAPClientHandler(): error
[Broken pipe] on write-stream
Jun 13 19:02:21 sls-cd7p8 dbmail/imap4d[788]: PerformChildTask(): client
handling complete, closing streams
Jun 13 19:02:21 sls-cd7p8 dbmail/imap4d[788]: PerformChildTask():
connection closed
Jun 13 19:02:21 sls-cd7p8 dbmail/imap4d[788]: PerformChildTask():
waiting for connection
( full log at: http://barkingspoon.com/dbmail-imapd.log.gz )
and then even after this the mail server continues to churn:
USER PID %CPU %MEM VSZ RSS STAT TIME COMMAND
root 786 0.0 0.1 2448 860 S 0:00 /usr/local/sbin/dbmail-imapd
dbmail 787 0.0 0.1 2460 928 S 0:00 \_ [dbmail-imapd]
dbmail 788 52.3 0.4 4812 2400 S 1:15 \_ [dbmail-imapd]
dbmail 789 0.0 0.1 2472 964 S 0:00 \_ [dbmail-imapd]
dbmail 790 0.0 0.1 2472 964 S 0:00 \_ [dbmail-imapd]
dbmail 791 0.0 0.1 2472 964 S 0:00 \_ [dbmail-imapd]
although nothing more is logged.
I don't recall if I had this problem with dbmail beta versions, I've
been using 2.0 CVS for too long.
I don't think it's a timeout issue on the client side, I've seen it wait
a lot longer for dbmail to do things.
Any ideas?
Blake
_______________________________________________
Dbmail-dev mailing list
[email protected]
http://twister.fastxs.net/mailman/listinfo/dbmail-dev
--
________________________________________________________________
Paul Stevens [EMAIL PROTECTED]
NET FACILITIES GROUP GPG/PGP: 1024D/11F8CD31
The Netherlands_______________________________________www.nfg.nl