james-server-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hasan Ceylan" <hcey...@biletix.com>
Subject JDBC Repository - Thoughts
Date Wed, 13 Apr 2005 10:46:54 GMT
I have recently downloaded and inspected james. I would like to congratulate the hard work
and effort
put into the product by all developers.
I have found some points in JDBC Repository that needs some care.
Correct me if I am wrong in following
- James does not have a database connection pooling impl.
- When you connect to james pop3 server
    a) It first fetches all the message headers
    b) Then it fetches the message details for each of the message.
Now, during the second phase of the pop3 folder openning, this creates a huge number of connections
a) not multithreaded which takes time, b) nor sql calls are not combined into one statement
to reduce number of queries. The result of that is couple of things when you consider that
you have 5000+ mails in the repository:
Sockets exhaust in the OS (OK you can enlarge the client socket port window and reduce the
time_wait value)
Takes hell a lot of time just to open the folder and causes the client to timeout.
Since most of the web mails and some humanbeings prefer the keep the messages in the repository
until its deleted permanantly, this way of implementation lowers the usability of james.
I also have a question. Maybe I should ask this in the users@james list, tell me if so. I
have noticed that list server uses dynamic email addresses to manage confirmation of subscriptions
created per transaction. This is exactly what I am looking for in my application. I assume
this is a mailet. Is there a solution out there I can make use of this functionality?
Hasan Ceylan

View raw message