[Dovecot] dovecot-lda 2.0.8 Panic: stream doesn't support seeking backwards
Jacky Chan
jacky at jesstech.com
Wed Dec 8 05:43:46 EET 2010
Running 2.0.8 as IMAP server and LDA with quota support.
The environment is:
os: 64bit Slackware 13.1.0
fs: ext3
smtp: postfix-2.7.2
imap: dovecot-2.0.8
The dovecot setting in postfix master.cf
dovecot unix - n n - - pipe
user=mailuser:mailuser argv=/usr/dovecot/libexec/dovecot/dovecot-lda
-d ${recipient}
Everything work fine and mail can be saved to user's home directory
without error when the user is not over quota.
If over quota occur, the maillog log this error message:
Command died with signal 6: "/usr/dovecot/libexec/dovecot/dovecot-lda".
Command output: lda:
Debug: Loading modules from directory: /usr/dovecot/lib64/dovecot lda:
Debug: Module loaded: /usr/dovecot/lib64/dovecot/lib10_quota_plugin.so
lda:
Debug: auth input: xxx at xxx.com home=/home/mail_data/xxx.com/xxx
quota_rule=*:storage=1024 uid=9203 gid=9203 lda:
Debug: Added userdb setting: plugin/quota_rule=*:storage=1024
lda(xxx at xxx.com):
Debug: Effective uid=9203, gid=9203, home=/home/mail_data/xxx.com/xxx
lda(xxx at xxx.com):
Debug: Quota root: name= backend=maildir args= lda(xxx at xxx.com):
Debug: Quota rule: root= mailbox=* bytes=1048576 messages=0
lda(xxx at xxx.com):
Debug: Quota rule: root= mailbox=Trash bytes=+104857600 messages=0
lda(xxx at xxx.com):
Debug: maildir++: root=/home/mail_data/xxx.com/xxx, index=, control=,
inbox=/home/mail_data/xxx.com/xxx lda(xxx at xxx.com):
Debug: Quota root: name= backend=maildir args= lda(xxx at xxx.com):
Debug: none: root=, index=, control=, inbox= lda(xxx at xxx.com):
Panic: stream doesn't support seeking backwards lda(xxx at xxx.com):
Error: Raw backtrace:
/usr/dovecot-2.0.8/lib64/dovecot/libdovecot.so.0(+0x3ca6a)
[0x7ffc860a1a6a] ->
/usr/dovecot-2.0.8/lib64/dovecot/libdovecot.so.0(default_fatal_handler+0x32)
[0x7ffc860a1b52] ->
/usr/dovecot-2.0.8/lib64/dovecot/libdovecot.so.0(i_fatal+0)
[0x7ffc8607c031] ->
/usr/dovecot-2.0.8/lib64/dovecot/libdovecot.so.0(+0x45834)
[0x7ffc860aa834] ->
/usr/dovecot-2.0.8/lib64/dovecot/libdovecot.so.0(i_stream_seek+0x86)
[0x7ffc860a81f6] ->
/usr/dovecot-2.0.8/lib64/dovecot/libdovecot.so.0(+0x45d87)
[0x7ffc860aad87] ->
/usr/dovecot-2.0.8/lib64/dovecot/libdovecot.so.0(i_stream_read+0x64)
[0x7ffc860a8284] ->
/usr/dovecot-2.0.8/lib64/dovecot/libdovecot.so.0(i_stream_read_data+0x3d) [0x7ffc860a894d]
->
/usr/dovecot-2.0.8/lib64/dovecot/libdovecot.so.0(message_parse_header_next+0x73)
[0x7ffc8608e973] ->
/usr/dovecot-2.0.8/lib64/dovecot/libdovecot.so.0(+0x2b1a7)
[0x7ffc860901a7] ->
/usr/dovecot-2.0.8/lib64/dovecot/libdovecot.so.0(message_parser_parse_next_block+0x29)
[0x7ffc860908f9] ->
/usr/dovecot-2.0.8/lib64/dovecot/libdovecot.so.0(message_parser_parse_header+0x41)
[0x7ffc86090a91] ->
/usr/dovecot-2.0.8/lib64/dovecot/libdovecot-storage.so.0(index_mail_parse_headers+0xc2)
[0x7ffc86535fd2] ->
/usr/dovecot-2.0.8/lib64/dovecot/libdovecot-storage.so.0(+0x462ea)
[0x7ffc865362ea] ->
/usr/dovecot-2.0.8/lib64/dovecot/libdovecot-storage.so.0(index_mail_get_first_header+0x5e)
[0x7ffc8653689e] ->
/usr/dovecot-2.0.8/lib64/dovecot/libdovecot-lda.so.0(mail_deliver_get_log_var_expand_table+0x48)
[0x7ffc862eb848] ->
/usr/dovecot-2.0.8/lib64/dovecot/libdovecot-lda.so.0(+0x593a)
[0x7ffc862eb93a] ->
/usr/dovecot-2.0.8/lib64/dovecot/libdovecot-lda.so.0(mail_deliver_log+0x118)
[0x7ffc862ebb28] ->
/usr/dovecot-2.0.8/lib64/dovecot/libdovecot-lda.so.0(mail_deliver_save+0x2e2)
[0x7ffc862ec012] ->
/usr/dovecot-2.0.8/lib64/dovecot/libdovecot-lda.so.0(mail_deliver+0xe3)
[0x7ffc862ec2c3] -> /usr/dovecot/libexec/dovecot/dovecot-lda(main+0x67c)
[0x402dec] -> /lib64/libc.so.6(__libc_start_main+0xfd) [0x7ffc858f4c7d]
-> /usr/dovecot/libexec/dovecot/dovecot-lda() [0x402549]
I tried run the dovecot-lda at command line:
/usr/dovecot/libexec/dovecot/dovecot-lda -d xxx at xxx.com < some_saved_mail
The result is dovecot quota plugin reject the mail and send an over
quota message back to the sender without any error.
It seems that the error is only occur with postfix pipe command.
Any hints?
More information about the dovecot
mailing list