[Dovecot] imap failed asssert in imap-bodystructure.c

Matt Ronge mronge at theronge.com
Tue Dec 26 20:54:57 UTC 2006


For the sake for the archives, I'm following up here. Timo pointed  
out that the particular assert() is no longer present in 1.0rc15,  
which puzzled me since I was sure I was running 1.0rc15. It turns out  
that on my Debian system, in addition to 1.0rc15 I had 0.99 installed  
which was actually running as the server. Since I've eliminated the  
old version, everything has been smooth as silk.

--
Matt Ronge

On Dec 22, 2006, at 3:34 PM, Timo Sirainen wrote:

> On 22.12.2006, at 7.21, Matt Ronge wrote:
>
>> I'm running Dovecot on a Debian system which recently has been  
>> failing on an assert(). I have a spam mailbox that if I try and  
>> open (from any client), the imap process dies and this is written  
>> to the error logs:
>>
>> Dec 21 18:57:11 theronge imap(mronge): file imap-bodystructure.c:  
>> line 278 (part_parse_headers): assertion failed: (part- 
>> >physical_pos >= input->v_offset - start_offset)
>> Dec 21 18:57:11 theronge dovecot: child 28911 (imap) killed with  
>> signal 6
>
> If this happens repeatedly and it's just a spam mailbox, could you  
> put the whole mailbox and the index files into a tarball and send  
> it to me (or post a link or whatever, I think I can accept max.  
> 10MB mails)?
>
> The problem is that Dovecot has stored a cached MIME structure into  
> dovecot.index.cache file, but now when it's trying to use it again,  
> mail's contents have either changed or something else weird has  
> happened. I think I had added several sanity checks to this  
> already, so this assert shouldn't really have happened. But the  
> same problem has existed for years, so this is getting a bit  
> annoying problem.
>
> Could it be possible that the mail's body had changed?
>
> Anyway if you delete dovecot.index.cache file it should work again.



More information about the dovecot mailing list