reconstruct - mismatched timestamps

Carsey, Robert rcarsey at
Mon Oct 18 22:00:20 EDT 2010

I'm not really sure what happens with message timestamps.  I think it read's the message's fstat.st_mtime and compares it to a date inside the message?  Sometimes it reports that there is a mismatch and sometimes not.

Apparently no problem with this guy's mailbox:

[root at hawkmail1 tmp]# reconstruct -G -r user.bretzger

But maybe there is:

[root at hawkmail1 tmp]# reconstruct -r user
user: Mailbox does not exist (null)           (hmmm well ok, I guess this does not exist errmsg is legit)
user.bretzger timestamp mismatch 2768
user.bretzger timestamp mismatch 2769
user.bretzger timestamp mismatch 2771
user.bretzger timestamp mismatch 2836
<control-c after a few more mailboxes are shown>

It seems like st_mtime is sometimes 1 second ahead of the date of the first Received: header.  Possibly because lmtpunix was operating right on the cusp of a second-hand tick was writing out the message. Who knows.. boo.

Ok so heres the timestamp and contents of one mismatched message.  I'm expecting reconstruct to either fix the st_mtime, or to report the mismatch no matter which way I run it.

[root at hawkmail1 bretzger]# ls --full-time 2836.
-rw------- 10 cyrus cyrus 12844 2008-09-18 13:29:38.000000000 -0400 2836.

First four lines of 2836.:

Return-Path: <emeritus-xxxxxx at>
Received: from ([unix socket])
         by (Cyrus v2.2.12-Invoca-RPM-2.2.12-9.RHEL4) with LMTPA;
         Thu, 18 Sep 2008 13:29:37 -0400
X-Sieve: CMU Sieve 2.2
Received: from ( [])
        by (8.13.1/8.13.1) with ESMTP id m8IHTYbV032125;
        Thu, 18 Sep 2008 13:29:34 -0400
Date: Thu, 18 Sep 2008 13:29:25 -0400

-------------- next part --------------
An HTML attachment was scrubbed...

More information about the Cyrus-devel mailing list