Closed Bug 332626 (imap_time_date) Opened 18 years ago Closed 18 years ago

Date/Time data does not transfer when moving messages in any IMAP server in ThunderBird

Categories

(Thunderbird :: Mail Window Front End, defect)

x86
Windows XP
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: esender99, Assigned: Bienvenu)

References

()

Details

(Keywords: fixed1.8.1)

Attachments

(4 files, 1 obsolete file)

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.1) Gecko/20060111 Firefox/1.5.0.1
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.1) Gecko/20060111 Firefox/1.5.0.1

Thunderbird resets the receive-date to the current time of the move instead of the original time.

Lets say we have accounts A and B on two different IMAP domains:
If someone sent an email to account A on 4/5/2004
and I *move* that message from account A to account B on 7/20/2005
then the date which appears on the email on account B *should* read 4/5/2004
**HOWEVER** it reads 7/20/2005

THIS IS THE PROBLEM.

The email I transferred over *SHOULD* read the original receive date of 4/5/2004, but it doesn't. It reads the current date 7/20/2005

I am transferring mail between
mail.ucla.edu and imap.aim.com

The equivalent transfer worked fine on Outlook Express.

Reproducible: Always

Steps to Reproduce:
1.Move messages from one IMAP account to another
2.Make sure two IMAP accounts exist on a Thunderbird profile
3.

Actual Results:  
Notice that the date/time does not stay the same between transfers.

Expected Results:  
The date and time of the original message should remain. (Outlook Express uses this standard)

I have tried this on a few versions of Thunderbird. It just seems like there is a date/time string (or variable) in the code that is not being passed correctly in the functions...
Everything should be included in the bug report. All in all, date and time doesn't transfer in IMAP correctly.
Alias: imap_time_date
Keywords: mail2
Version: unspecified → 1.5
we display the date as parsed from the date header. This works fine for me with my test imap servers.
you can also generate an imap protocol log of a session where you do this and see what the server is doing:

http://www.mozilla.org/quality/mailnews/mail-troubleshoot.html#imap


Does the message have an actual   Date:   header?

Just to be sure: by "transferring" the message, you mean you dragged it from 
one folder to another, or used the  Message|Move  menu?  That is, you didn't forward the message?
Yeah, I am talking about the Date and Time when I list email messages.

Here are screen shots to guide you guys...

http://img376.imageshack.us/img376/2070/sn7cu.png
Eric, the imap protocol log I requested earlier would be much more helpful to me...
I don't really feel computer savvy enough to do this... I tried to run that .bat code, with the file name changed to log.txt and "start thunderbird" but nothing happened. the log.txt was blank..

This error could probably occur on one of your guys' thunderbirds too..
Sorry, Eric, the problem is almost certainly something with your setup. No one else has reported anything else like this :-(
Yeah, I think people just don't notice or they don't know how to fill out bugreports, like me. 

Look at this..

http://forums.mozillazine.org/viewtopic.php?p=2074112&highlight=imap+date#2074112

Also, could someone construct the .BAT file that I could use to run the log file. I think I am doing that wrong.

I keep Thunderbird here:
C:\Program Files\Mozilla Thunderbird

If someone helps me with the batch file, that could probably help me out in doing the log..
aim.com? Is that aol aim mail? If so, I'm sure it's a problem with the server :-( I had a fair amount of experience with that server in a previous life.
Also Ucla mail... 

Hmm... well I need somoene to set up the .BAT file and send it over to me (esender99@gmail.com) and I will get that log. Then we'll see...
you don't really need a bat file.

Open a dos command prompt (windows start menu | all programs | accessories | command prompt)

once that opens, type the following:

cd \program files\mozilla thunderbird
set NSPR_LOG_MODULES=IMAP:5
set NSPR_LOG_FILE=c:\imapio.txt
thunderbird

that should launch TB, and a log file should get created in c:\
Thanks for the instructions. Here is the log file of copying a message from one IMAP account to another. Hope this does the trick, thanks guys!
ah, interesting. So, in this case, the message should have had a date of April 3, but we reported April 4? In the aim.com case, we recognize it as an AOL server, and use the INTERNALDATE attribute to get the date, because AOL servers didn't (still don't?) support fetching the DATE attribute, or didn't return the right date, I don't remember. Now that AOL has opened up their servers, it might be the case that they've fixed all those problems, and we shouldn't be using the INTERNALDATE attribute. I can try to sign up for an aim.com e-mail account and try it out - they're free, right?
yeah man.

mail.aim.com

You get 2GBs IMAP free.
Any updates?
A new version of TB came out, is this bug fixed in it?
Hallo, guys

I use TB version 1.5.0.2 (20060420). It acts like this:

When I drag and drop messages from ordinary local folder to IMAP folder, in TB the messages show correct (original) date information. However when I look at them sing eGroupWare mail application, the date and time of the transfer itself is shown.

I don't know, whether eGroupWare uses some other attribute to extract the date/time information. Maybe it uses date/time of mail body file creation.

I don't know whether it is standard or not for IMAP client to use file date/time information as the message date/time.

If it is not illegal, could the TB set the file creation time to the date of the message too? (in the case of copying the message to IMAP of course)
To be more verbose, we use Courier 3 IMAP server.
Any progress for this bug fix?
I can confirm this problem.  I recently had to move some email from an Exchange account to an IMAP server.  I imported all of my Outlook email into Thunderbird and everything looked fine.  I then dragged all of the messages into the IMAP server I set up.  

Now here's where it gets strange.  In Thunderbird the dates looked right.  However, when I looked at the mail list through another IMAP client (like Outlook and even the web client for my email provider) all the received dates shown where listed as the date I moved them to the IMAP server.

I then started over by importing my Oulook mail into Outlook Express and then moving them to the IMAP server.  Now all clients show the correct dates.  

Finally, I also have a similar problem when I try to delete an attachment in Thunderbird.  Let's say today is 6/7/2006.  I delete an attachment from an email dated 5/5/2006 in Thunderbird.  The new message without the attachment now shows 6/7/2006 in all clients except Thunderbird.
I can confirm this issue with IMAP.AIM.COM and Thunderbird 1.5.0.4 on Windows XP Professional.
This fix just gets the date of the original message and adds it to the APPEND imap command - unit tested moving messages from POP account to IMAP account and it works like a charm.
Attachment #233073 - Flags: review?(mscott)
Comment on attachment 233073 [details] [diff] [review]
Passes in the date of the copied/moved message into the APPEND operation for IMAP.

thx for the patch! very nice.

the problem with this is that this code is running on the imap thread, and you're calling code that's only supposed to be called from the ui thread, in particular  m_message->GetDate(&theDate). It's unlikely that anything bad would happen, but we try to be strict about the imap thread/ui thread stuff. So I need to think a little about how to handle this - we usually do this by adding a proxied call to the ui thread to get the data, or squirrel away the data ahead of time in the url.  Or, we could add a comment to the GetDate implementation warning that it gets called from multiple threads...
change nsIImapMessageSink (which is not an interface that would be used externally)
Assignee: mscott → bienvenu
Attachment #233073 - Attachment is obsolete: true
Status: UNCONFIRMED → ASSIGNED
Attachment #235352 - Flags: superreview?(mscott)
Attachment #233073 - Flags: review?(mscott)
Attachment #235352 - Flags: superreview?(mscott) → superreview+
modified patch checked in on trunk; thx for the original patch, Mike!
Status: ASSIGNED → RESOLVED
Closed: 18 years ago
Resolution: --- → FIXED
landing on 2.0 branch - haven't heard any of any problems on the trunk.
Keywords: fixed1.8.1
*** Bug 364757 has been marked as a duplicate of this bug. ***
Attached image View time shift
One small issue; this may be an AIM Mail-specific problem.  But, when I move/copy my mail over to the IMAP server, the time is 3 hours off.  Perhaps somewhere, some machine is overcompensating for me being in PST.  But the original message came in at 9 PM, as the lower red circle indicates, but the Message List shows it as 6 PM as the top circle indicates.
Thannks for the fix, I think this solves my problem also.
If it adds any value to your testing I can attempt the move for my rig also: 3 or 4 years of mail gleaned from 3 users via at least 2 different mail clients, including regular mail and newsgroups mail and all sorted and bundled in directories in a set of TBird local mail folders on RHEL4 Linux.  Attempted to move it all into a localhost Cyrus IMAP mail server to enable read/write visibility to team members using MS mail clients, and bingo: there's the "now" date problemn as described above.  For a fuller description, including a technical analysis of INTERNALDATE and the IMAP APPEND RFC, see:
http://forums.mozillazine.org/viewtopic.php?p=2757812#2757812
Cheers
 Rob
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: