Peter,
> Other mails already indicated that there are some problems when doing > a clean build of James with IMAP from CVS. > > This description of my solutions to some of the issues I've found so far > may save some time to others. Thank you for a very clear email. Your description of each issue and the corresponding solution was very nice. It made the train of thought very easy to follow. > See below for diffs of the files I've changed. Someone more involved > should review them before commiting. Some of my changes (6,7) may have > consequences which I didn't foresee. I've committed your changes (or minor variations of them) to resolve points one through six. I'm hesitant to commit your proposed fix for point seven for a variety of reasons. As you note, it's definitely a short term fix - hard coding a file location. It also makes it impossible to use on Windows. To me it appears that this particular concept needs some fleshing out. > Cause: highestUID in FileMailbox.java was not initialised. > > Remark: > I don't quite understand why highestUID is static. > This prevents configuration of the FileStoreHighestUID location. > My reading of RFC 2060 (2.3.1.1) is that global uniqueness (across > all mailboxes) is unnecessary. I read the RFC in the same way. It appears to be a per mailbox item. So I've come up with a solution that is in line with that idea. Basically, the highestUID for a particular mailbox is stored in a file (called highest.uid) in the mailbox directory. Upon creation of a new mailbox, the UID is initialized to some random value between 0 and (MAX_INT - 1)/2. This gives a wide range of possible initial values (as recommended by the spec) while allowing storage of a large number of messages. When James deserialized a mailbox, the highest UID is read from the file. Attached are the changed FileMailbox.java and FileStoreHighestUID.java - these two files contain the whole of the relevant change. Your thoughts? Any thoughts from any of the other IMAP folk out there? --Peter
FileMailbox.java
Description: java/
FileStoreHighestUID.java
Description: java/
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
