On Tue, 17 Jul 2018, Dan Lukes wrote:
GLEN HERRMANNSFELDT wrote on 17. 7. 2018 3:35:
Many C implementations using 32 bit int have a 2G
file size limit. This happens even if there are
no fseek() calls.
Moreover, even on those systems having larger int, there's an issue somewhere
in the common part of code. Sometime, about 128 bytes of mailbox starting at
offset 0 gets overwritten by random bytes, so mailbox become corrupted for
subsequent operations.
The issue seems not to be related to particular mailbox format driver as I
observed the issue for both UNIX and MBX mailboxes, but it seems to be
related to concurrent access to particular mailbox (e.g. issue related to
locking or so).
Also, performance penalty for so large files shall be noted. Exim uses either
traditional UNIX format of mailbox or MBX. At least in the first case it take
a lot of time to re-read the mailbox content and some clients are known not
to be patient enough.
As a result, I'm recommending to keep all mailboxes bellow 2GB of size.
Not to mention, for years Mark Crispin adamantly opposed anything greater than
32 bit code (for portability sake). So there may still be dark corners of the
UW/Panda IMAP code that will break on a 64 bit system.
Just out of curiosity, any reason to stick with the "mbox" format?
There are others (EG: 1-file/message & MIX ) which don't have the size
limitation and have distinct performance advantages.
--
Dave Funk University of Iowa
<dbfunk (at) engineering.uiowa.edu> College of Engineering
319/335-5751 FAX: 319/384-0549 1256 Seamans Center
Sys_admin/Postmaster/cell_admin Iowa City, IA 52242-1527
#include <std_disclaimer.h>
Better is not better, 'standard' is better. B{
_______________________________________________
Imap-uw mailing list
[email protected]
http://mailman13.u.washington.edu/mailman/listinfo/imap-uw