[Dovecot] Still corrupt indexes in 1A4

Alen Salamun alien at alienworld.org
Mon Oct 31 21:13:22 EET 2005


Hello All!

Well I still have users which almost daily get corrupt dovecot files in 
their IMAP folders (Maildir style) and are unable to read their mail in 
this particular folders. When I delete dovecot files in this folder (rm 
-rf dove*) user can again read all messages.

This is regular Linux CentOS 4.2 with SAN storage (boot from SAN) as 
disks. So this is EXT3 on LVM.

BUT it is VERY interesting that than happens only to two users which are 
connected to the server via slow links (reading via Thunderbird or 
Squirrelmail). It never happened (now for weeks) to other 10 users which 
use it localy or at home (on speedy links).

It's very hard for me to exactly pinpoint the problem, since it never 
happens to me.

But when it happened to one user again I asked him to send me 
screenshoot of it. I could see there that SquirrelMail said:

"Warning: fgets() [function fgets]: SSL: fatal protocol error in 
/usr/share/squirrelmail/functions/imap_general.php on line 93."

Examining this file this line is in function:

--------SQUIRRELMAIL PHP SOURCE------------
/**
  * Custom fgets function: gets a line from the IMAP server,
  * no matter how big it may be.
  * @param stream imap_stream the stream to read from
  * @return string a line
  */
function sqimap_fgets($imap_stream) {
     $read = '';
     $buffer = 4096;
     $results = '';
     $offset = 0;
     while (strpos($results, "\r\n", $offset) === false) {
         if (!($read = fgets($imap_stream, $buffer))) {<- THIS IS LINE 93
         /* this happens in case of an error */
         /* reset $results because it's useless */
         $results = false;
             break;
         }
         if ( $results != '' ) {
             $offset = strlen($results) - 1;
         }
         $results .= $read;
     }
     return $results;
}
}
-------------------------------------------

Looks like dovecot drops connection or something. Well must be related 
to corrupt dovecot files in particular folder, since deleting them 
solves the problem.

BR,
Alen Salamun


More information about the dovecot mailing list