[Dovecot] 1.0-test17 Maildir bug

Moe Wibble t1lt at bk.ru
Sat Jun 19 20:50:21 EEST 2004


On Sat, Jun 19, 2004 at 08:33:23PM +0300, Timo Sirainen wrote:
> On Sat, 2004-06-19 at 19:48, Moe Wibble wrote:
> > > >sp dovecot: IMAP(moe): file mail-transaction-log.c: line 1159 
> > > >(mail_transaction_log_sync_lock): assertion failed: 
> > > >(!log->index->log_locked)
> > > >sp dovecot: child 25754 (imap) killed with signal 6
> > > 
> > > But that's not a syncing problem. Fixing this one would only require 
> > > looking through the code and making sure the assert can't ever happen. 
> > > Not too difficult once I get around doing it :)
> > 
> > sounds good, lookin' forward to it. ;)
> 
> Actually it is a syncing problem, but not like the others. It happens
> when Dovecot tries to update maildir (flags, expunges) but finds out
> that some file is missing, so it tries to sync the maildir to find it.
> Except it is already in the middle of syncing index, so it crashes. Have
> to think a while what is the right fix for this.

Sounds confusing.
Shouldn't the index-sync just be delayed if there's one in progress already?
I imagine something like while ( log->index->log_locked ) usleep(500);.
After all it's locked, isn't it?

best regards



More information about the dovecot mailing list