On Wed, 2009-05-06 at 11:06 +0200, Matthijs Kooijman wrote:
> virtual /home/matthijs/Mail/virtual/INBOX: Broken mailbox list
..
> I've just tried removing the index files, which seems to fix the error
> message. The index file gets recreated and my debug statements show proper
> output. Another solution is adding an extra file to the folder
> list, in which case the index will get fixed as well.
> 
> Perhaps it would be good to recreate the index file when this error is found,
> instead of complaining?

That's what it should have done. I just tested and it did successfully
update the index file without complaining about anything again. Anyway I
added some more checks to the code now.

> Also, from the code (virtual_sync_ext_header_read in
> src/virtual/virtual-sync.c) it seems that the last mailbox should be skipped
> because of this error, but the mailbox works fine. I'm probably not looking
> closely enough :-)

It then handles it the same way as newly seen mailboxes. Gives a new
mailbox ID and syncs it from the beginning.

> I haven't been able to reliably break the index file with some quick testing
> (reconnecting, restarting and modifying the mailbox list), but I did manage to
> break it once (by removing a mailbox from halfway the list, and then adding it
> again). I couldn't reproduce that, though, since removing a mailbox doesn't
> always seem to recreate the index for some reason...

I tried stress testing by having it open "*" mailboxes and then randomly
creating and deleting them. Didn't seem to cause broken virtual index
file.

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to