<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p>Hello, this is a Cyrus 2.3.11 on Centos 5.<br>
About 5000 users for 10 To.<br>
</p>
<p>Mail storage has been moved from NetApp NFS to FluidsFS (aka Dell
Compellent NFS).<br>
Since an update on FluidFS, Imap spool undergoes daily NFS
timeouts which leads to corrupt mailboxes.<br>
Typically, this begins with lines like this in /var/log/messages:</p>
<pre>Dec 5 09:54:43 mailhost kernel: lockd: server 192.xxx.xx.xx not responding, timed out
</pre>
<p>Which is followed by IOERROR for accessed mailboxes during NFS
timeout:</p>
<pre>Dec 5 09:54:47 mailhost lmtpunix[14542]: IOERROR: locking index for user.xxxx: Input/output error
Dec 5 09:54:47 mailhost imaps[21999]: IOERROR: locking header for user.xxxx.Sent: Input/output error
Dec 5 09:54:47 mailhost imaps[26935]: IOERROR: locking index for user.xxxx: Input/output error
Dec 5 09:54:47 mailhost imaps[24013]: IOERROR: locking index for user.xxxx: Input/output error
Dec 5 09:54:47 mailhost imaps[15672]: IOERROR: locking index for user.xxxx: Input/output error
Dec 5 09:54:47 mailhost imaps[3999]: IOERROR: locking index for user.xxxx: Input/output error
Dec 5 09:54:47 mailhost imaps[30671]: IOERROR: locking index for user.xxxx: Input/output error</pre>
<p>...................<br>
Around 15 maiboxes are corrupted at each timeouts.<br>
Manually, we can repair this mailbox:</p>
<ul>
<li>first, we have to delete all cyrus files in mailbox, if not
the following reconstruct can be blocked</li>
<li>then, we reconstruct the mailbox (reconstruct -s
user.<NAME>.<FOLDER><br>
</li>
</ul>
<p>The downside of this method is that all messages in the
reconstructed folder are marked 'Not seen'.<br>
To automate this, a Python script has been written, but sometimes
not all cyrus files (cyrus.index) are recreated:<br>
</p>
<pre>Dec 5 01:03:53 mailhost lmtpunix[497]: IOERROR: opening /var/spool/imap/x/user/xxxxxx/cyrus.index: No such file or directory</pre>
<p>Timeouts happen about 3 times per day, and cyrus deliver process
is blocked when delivering to a corrupted mailbox.<br>
So my first question is : how can we reconstruct a mailbox without
marking mails as not seen?<br>
And my second question is : why cyrus files are not recreated
everytime? Is this due to the -s parameter with reconstruct?<br>
</p>
<p>Any help will be appreciated.</p>
<p>Thanks</p>
<p>------------------</p>
<p>Ismael TANGUY<br>
</p>
<div class="moz-signature">-- <br>
<a href="http://www.univ-brest.fr"> </a>
<p style="font-family:Arial; font-size:10px;"><br>
</p>
</div>
</body>
</html>