[Dovecot] rare index cache error with dovecot 1.2.10

Wolfgang.Friebel at desy.de Wolfgang.Friebel at desy.de
Wed Aug 18 18:09:04 EEST 2010


Hi,

since some time for a single user updating the Maildir/dovecot.index.cache 
file produced errors whenever it needed to be updated:

Aug 15 04:16:40 imapsrv dovecot: deliver(user): pwrite() failed: File too large
Aug 15 04:16:40 imapsrv dovecot: deliver(user): file_set_size() failed with index cache file /var/spool/mail/mamuzic/Maildir/dovecot.index.cache: File too large

The file itself was 55115776 bytes and a test program using pwrite with 
any reasonable size or offset does not produce the EFBIG error. Looking to 
the file contents the start of the file looks correct to me ( according to 
src/lib-index/mail-cache-private.h ) and despite of the error message the 
file gets updated and contains always the headers of the most recent 
incoming mail near the end of the file.

After removing the file the cache was rebuilt properly (currently at 9MB).
As this happened only for a single user out of approx 500 and after more 
than one year of using dovecot without any other problems I guess this is 
a very rare case.

As pwrite tests do not show the error this seems not to be an issue with
low file limits (as suggested in another mail on this topic) but maybe a
lookup of corrupt addresses from the index.cache.

I have saved the dovecot.index.cache, but as it is rather large (55MB) and 
does contain a lot of privacy information I would rather not make it 
accessible. Is there something I can further check to see whether dovecot 
is missing a sanity check?

-- 
Wolfgang Friebel                   Deutsches Elektronen-Synchrotron DESY
Phone/Fax:  +49 33762 77372/216    Platanenallee 6
Mail: Wolfgang.Friebel AT desy.de  D-15738 Zeuthen  Germany


More information about the dovecot mailing list