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]

Reply via email to