[Dovecot] changing INTERNALDATE or similar

Rudnick, Karl KARL.RUDNICK at saic.com
Fri Jul 18 01:03:20 EEST 2008


I successfully executed the script which "fixed" my mail store. I also
see now why there isn't a buttoned down solution out there. The basic
steps are simple as outlined below, but when dealing with ~35,000 emails
going back before 1993, there were just about a dozen that didn't adhere
to the "Date:" screening and subsequent capture for use by "touch
--date". Adding these exceptions to my script completely automated the
INTERNALDATE resetting, but I would not publish this publicly on the
internet. Nevertheless, I would share it with anyone who requests
through this mail group given the caveat that it is only guaranteed to
work for MY personal data store.
Thanks - Karl


-----Original Message-----
From: Rudnick, Karl 
Sent: Thursday, July 17, 2008 9:06 AM
To: dovecot at dovecot.org
Cc: Timo Sirainen
Subject: RE: [Dovecot] changing INTERNALDATE or similar

Terrific - I'll just write a script to:

1. create a list of all Maildir folders ending in "/cur"
2. remove dovecot.index* in each folder
3. For each mail file in each Mailder /cur folder:
   a. grep/sed "Date:" to grab first date/time stamp in email
   b. pipe the output of a. into "touch --date" for that file

On my windows side, all the imap info is saved in one pst file in
"C:\Documents and Settings\<user>\Local Settings\Application
Data\Microsoft\Outlook\Outlook*imap*.pst" and if I blow it away it gets
correctly rebuilt - I just tested it and the blown away index files get
rebuilt so that Outlook then has the correct Received date displayed.
Pretty easy to do, but surprised a script wasn't openly available - or
at least my googling skills weren't good enough. Since I have ~35,000
emails in about 450 folders, this needs to be scripted. I'll make it
available when I get it smoothed out.

Thanks again for the clarification.
- Karl

-----Original Message-----
From: Timo Sirainen [mailto:tss at iki.fi] 
Sent: Thursday, July 17, 2008 4:58 AM
To: Rudnick, Karl; Dovecot Mailing List
Subject: Re: [Dovecot] changing INTERNALDATE or similar

On Wed, 2008-07-16 at 16:56 -0700, Karl Rudnick wrote:
> I have a question which others must have encountered. I switched from
> uw-imap to dovecot-imap a few months ago and moved my fairly large
mail
> archive (~15 yrs) by simply mounting both accounts in a mail app and
> simply copying my folders over. This worked well, and all my mail is
in
> order when I view it in evolution or thunderbird on any number of
> machines. However, since our company uses MS Exchange Server, when I
add
> my dovecot imap account to outlook, everything is great except the
> received dates - it looks like the date I made the transition, but in
> all instances it's not simply the time stamp in the Maildir folder. I
> googled around on this and have gathered that this date is coming
> somewhere from within the dovecot index file. 

INTERNALDATE comes from the maildir files' mtimes. So you can use
whatever utility/script you want to modify the mtime (I don't have any
suggestions). Then delete dovecot.index.cache file to make sure the old
value wasn't cached. You might also have to recreate the account in your
clients to make sure they haven't cached the old values.



More information about the dovecot mailing list