Hi,
I've come across some possibly buggy behaviour with regards to Dovecot and the use of the IDLE keyword. Found this while testing out inotify support for Johannes - although after asking him and him reproducing it, he is of the opinion that it's not a inotify specific problem.
The behaviour is that when the client is idling, Dovecot seems to only alert to the first new message received, and if a subsequent new message comes in before the client finishes idling, that second new message is not notified to the connected client.
To reproduce:
$ maildirmake /tmp/imap-test $ cat >/tmp/1 <<EOF From: test To: test Subject: test
test! <Ctrl-D> $ MAIL=Maildir:/tmp/imap-test /usr/libexec/dovecot/imap ... A SELECT INBOX B IDLE
[now, in a different terminal, copy /tmp/1 to /tmp/imap-test/new, you should instantly be notified of it in your imap session]
** Dovecot correctly responds with:
- 1 EXISTS
- 1 RECENT
[if a second message is delivered, eg by copying /tmp/1 to /tmp/imap-test/new/2 then you should be notified as well, but this never occurs]
DONE C LOGOUT $
Timo - what do you think?
Reuben