Hi,
On Sun, 17 Sep 2000, Serge Knystautas wrote:
> As for repository design, figuring out how to support NNTP and OCS and other
> protocols does involve more complicated mail stores than we're initially
> attempting to design. I'm envisioning the first database mailstore design
> is not much more than storing the MimeMessage in a binary field with some
> useful headers pulled out into their own fields (from, to, subject, etc...).
> It indeed will get challenging, and any sharing of expertise would be great,
> whether or not we can actually collaborate.
One of the things that I have to handle is large
messages. It is not uncommon for some people that I have to
provide for that they send 12 MB files tomultiple people in
the organisation. A couple of times that has put down MS
mail server application - thats one of the challenges that I
wanted to combat.
The way I did it was seperate it into
Envelope
* Mail From
* Rcpt to
* smtp id
* incoming date
* incoming protocol
* incoming host
* interface accepted on
MessageHeaders
* all *important* message headers
MessageBody
* the message body
Unfortunately I initially implemented it in postgres and it
has problems with blobs so I ended up giving up.
The Mailet API will actually load the full mail (all 12 MB
in worst case) to process which is what I wanted mainly to
stop. Thus the reason I seperated the above - you pay for
what you use.
My Database schema atm has entities such as
* MailAccount (can be forwarding or local)
* MessageEnvelope (mainly used as auditing + also for
Messagelet architecture)
* Folder
- can have parent/child folders
- belongs to an entity (thou that entity may not be a user
but maybe a transport - ie NNTP)
- size
- start id
- end id
* Message
- envelope
- headers
- body
- size
- flags
This is all from memory thou - I will try and send the real
one a bit later.
Cheers,
Pete
*--------------------------------------------------*
| Latrobe University, | Does the name 'Pavlov' |
| Bundoora, Australia | ring a bell ? |
*--------------------------------------------------*
------------------------------------------------------------
To subscribe: [EMAIL PROTECTED]
To unsubscribe: [EMAIL PROTECTED]
Archives: <http://www.mail-archive.com/james%40list.working-dogs.com/>
Problems?: [EMAIL PROTECTED]