Closed Bug 98433 Opened 23 years ago Closed 23 years ago

Cyrus IMAP:LIST command problems when using a migrated profile with Personal Namespace specified

Categories

(MailNews Core :: Networking: IMAP, defect)

x86
Windows NT
defect
Not set
normal

Tracking

(Not tracked)

VERIFIED FIXED
mozilla0.9.5

People

(Reporter: huang, Assigned: cavin)

References

Details

(Keywords: imap-interop, Whiteboard: PDT+)

Attachments

(5 files)

LIST command problems when using a migrated profile with personal Namespace specified Currently, users can delete msgs & Empty Trash from 6.1 without setup the Personal Namespace "Inbox." from Cyrus IMAP account. But, we still need to consider users with Personal Namespace "Inbox." setup from 4.7. If users migrated the Cyrus IMAP profile with "Inbox.' Personal Namespace specified, they will encounter LIST command problems as following: 175[45a1350]: buggy.mcom.com:S-INBOX:SendData: 13 list "" "Inbox/%" 175[45a1350]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 13 OK Completed 175[45a1350]: buggy.mcom.com:S-INBOX:SendData: 14 list "" "Inbox/%/%" 175[45a1350]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 14 OK Completed 175[45a1350]: buggy.mcom.com:S-INBOX:SendData: 15 list "" "Inbox/c1/%" 175[45a1350]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 15 OK Completed 175[45a1350]: buggy.mcom.com:S-INBOX:SendData: 16 list "" "Inbox/c1/%/%" 175[45a1350]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 16 OK Completed We need to fix this problem. I will attach the IMAP logs when subscribe & unsubscribe for the Cyrus IMAP without specify the personal namespace & after specify the namespace here. So you can compare and see the problem here.... Reproduce Steps: 1) Setup the Cyrus IMAP with Personal Namespace "Inbox." 2) Migrated this profile from 4.7 to 6.1 3) Subscribe & unsubscribe some subfolders 4) Actual Results: From the UI, it seems it is working fine, but after check the IMAP log, You will see something wrong for the LIST command: 175[45a1350]: buggy.mcom.com:S-INBOX:SendData: 13 list "" "Inbox/%" 175[45a1350]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 13 OK Completed 175[45a1350]: buggy.mcom.com:S-INBOX:SendData: 14 list "" "Inbox/%/%" 175[45a1350]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 14 OK Completed 175[45a1350]: buggy.mcom.com:S-INBOX:SendData: 15 list "" "Inbox/c1/%" 175[45a1350]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 15 OK Completed 175[45a1350]: buggy.mcom.com:S-INBOX:SendData: 16 list "" "Inbox/c1/%/%" 175[45a1350]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 16 OK Completed 175[45a1350]: buggy.mcom.com:S-INBOX:SendData: 17 list "" "Inbox/c1/c1_f/%" 175[45a1350]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 17 OK Completed 175[45a1350]: buggy.mcom.com:S-INBOX:SendData: 18 list "" "Inbox/c1/c1_f/%/%" 175[45a1350]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 18 OK Completed 175[45a1350]: buggy.mcom.com:S-INBOX:SendData: 19 list "" "Inbox/c1/c1_f/c2_f2/%" 175[45a1350]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 19 OK Completed 175[45a1350]: buggy.mcom.com:S-INBOX:SendData: 20 list "" "Inbox/c1/c1_f/c2_f2/%/%" 175[45a1350]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 20 OK Completed 175[45a1350]: buggy.mcom.com:S-INBOX:SendData: 21 list "" "Inbox/c1/c1_f/c2_f2/c3_f2/%" 175[45a1350]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 21 OK Completed 175[45a1350]: buggy.mcom.com:S-INBOX:SendData: 22 list "" "Inbox/c1/c1_f/c2_f2/c3_f2/%/%" 175[45a1350]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 22 OK Completed .............................................. 75[45a1350]: buggy.mcom.com:S-INBOX:SendData: 26 list "" "Inbox/%" 175[45a1350]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 26 OK Completed 175[45a1350]: buggy.mcom.com:S-INBOX:SendData: 27 list "" "Inbox/%/%" Expected Results: It should display the LIST command as following: 258[476b1a0]: buggy.mcom.com:S-INBOX:SendData: 17 list "" "INBOX.c1.%" 258[476b1a0]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: * LIST () "." INBOX.c1.c1_f 258[476b1a0]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: * LIST () "." INBOX.c1.c1_f1 258[476b1a0]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: * LIST () "." INBOX.c1.c1_f2 258[476b1a0]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 17 OK Completed 258[476b1a0]: buggy.mcom.com:S-INBOX:SendData: 18 list "" "INBOX.c1.%.%" 258[476b1a0]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: * LIST () "." INBOX.c1.c1_f.c2_f 258[476b1a0]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: * LIST () "." INBOX.c1.c1_f.c2_f1 258[476b1a0]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: * LIST () "." INBOX.c1.c1_f.c2_f2 258[476b1a0]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 18 OK Completed 258[476b1a0]: buggy.mcom.com:S-INBOX:SendData: 19 list "" "INBOX.c1.c1_f.%" 258[476b1a0]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: * LIST () "." INBOX.c1.c1_f.c2_f 258[476b1a0]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: * LIST () "." INBOX.c1.c1_f.c2_f1 258[476b1a0]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: * LIST () "." INBOX.c1.c1_f.c2_f2 258[476b1a0]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 19 OK Completed 258[476b1a0]: buggy.mcom.com:S-INBOX:SendData: 20 list "" "INBOX.c1.c1_f.%.%" 258[476b1a0]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: * LIST () "." INBOX.c1.c1_f.c2_f2.c3_f 258[476b1a0]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: * LIST () "." INBOX.c1.c1_f.c2_f2.c3_f1 258[476b1a0]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: * LIST () "." INBOX.c1.c1_f.c2_f2.c3_f2 258[476b1a0]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 20 OK Completed
Ccing Cavin.
Keywords: interop
Summary: LIST command problems when using a migrated profile with personal Namespace specified → Cyrus IMAP:LIST command problems when using a migrated profile with Personal Namespace specified
Karen, somehow I couldn't reproduce it on my machine. I had the personal namespace set to "INBOX." in 4.7 and then migrated it to 6.x. The setting was still "INBOX." in 6.x. Then I did the subscribe and unsubscribe stuff and the log showed the right commands we sent to the server. Can you attach your prefs.js so that I can take a look at it? Maybe something else is causing the problem.
user_pref("mail.server.server1.namespace.personal", "\"Inbox.\""); Cavin, how do you think about above line from the perfs.js file? I am wondering to know whether this is dup of bug 26439 which I logged long time ago........
Karen, I think it's fine because that's the way the syntax was defined for our product.
The only difference is that your setting is "\"Inbox.\"" and mine is "\"INBOX.\"". For some reason it only works for uppercase 'INBOX' and not 'Inbox'. I'll debug it to see why this is the case. Karen, you may modify your prefs.js to confirm it.
Taking from mscott.
Assignee: mscott → cavin
Nominating for PDT. This bug has the same impact on clients (ie, not being able to subscribe folders) as bug 98294, although it has a different cause. Have fix on hand.
Whiteboard: PDT
Looks like we are not getting the right msgFolder in nsImapService::GetListOfFoldersWithPath() which means that we don't use the right server delimiter either. We need to convert all occurrences of 'inbox' in a folder pathname to uppercase 'INBOX' if present just like we do in nsImapIncomingServer::PossibleImapMailbox().
Ccing bienvenu.
Is this bug related to bug 60344?
Copying David's comments on 2001-08-15 10:51 of bug 60344 as following: --------------------------------------------------------------------------- I thought we already checked in a fix for this bug (bug 60344), and we had some problem with Cyrus servers because we changed the case of INBOX which messed up sub-folders........ ----------------------------------------------------------------------------
This patch has problems and it is not the patch in PossibleImapMailbox. I think you need to update your tree.
Navin, yes my tree is about 10 days old and I did see the changes you made on 08/27 to nsImapIncomingServer::PossibleImapMailbox(). I'll rework the patch on the new tree.
Nominating for nsbranch.
Keywords: nsbranch
Comment on attachment 48591 [details] [diff] [review] Proposed fix using the latest code. sr=mscott
Attachment #48591 - Flags: superreview+
adding nsBranch+ keyword.
Keywords: nsbranchnsbranch+
r=naving
Fix checked in on trunk.
Forgot to change resolution.
Status: NEW → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
Reopen for nsBranch+ tracking purpose.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Blocks: 99508
moving into .9.5.
Target Milestone: --- → mozilla0.9.5
PDT+ per PDT meeting today.
Whiteboard: PDT → PDT+
Fix checked into branch.
Status: REOPENED → RESOLVED
Closed: 23 years ago23 years ago
Resolution: --- → FIXED
OK. Verified on WinNT 09-17-05-0.9.4 build. Now, I search for list command when using a migrated profile with Personal Namespace specified, and it all displays as following: ----------------------------------------------------------------------------- 238[542f650]: buggy.mcom.com:S-INBOX:SendData: 68 list "" "INBOX.d1.%" 238[542f650]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: * LIST () "." INBOX.d1.d1-1 238[542f650]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: * LIST () "." INBOX.d1.d2 238[542f650]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 68 OK Completed 238[542f650]: buggy.mcom.com:S-INBOX:SendData: 69 list "" "INBOX.d1.%.%" 238[542f650]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: * LIST () "." INBOX.d1.d2.d2-1 238[542f650]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: * LIST () "." INBOX.d1.d2.d3 238[542f650]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 69 OK Completed 238[542f650]: buggy.mcom.com:S-INBOX:SendData: 70 list "" "INBOX.d1.d2.%" 238[542f650]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: * LIST () "." INBOX.d1.d2.d2-1 238[542f650]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: * LIST () "." INBOX.d1.d2.d3 238[542f650]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 70 OK Completed 238[542f650]: buggy.mcom.com:S-INBOX:SendData: 71 list "" "INBOX.d1.d2.%.%" 238[542f650]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: * LIST () "." INBOX.d1.d2.d3.d3-1 238[542f650]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: * LIST () "." INBOX.d1.d2.d3.d4 238[542f650]: buggy.mcom.com:S-INBOX:CreateNewLineFromSocket: 71 OK Completed -------------------------------------------------------------------------------- Marking as verified.
Status: RESOLVED → VERIFIED
Product: MailNews → Core
Product: Core → MailNews Core
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: