> > > I'm experiencing spooling issues with file repositories too.
> > Actually, I have occassionally seen the same symptom with JDBC, too.
> Simple delay of messages or full hangs of single messages?
Just the simple delay.
As an aside, we need to make sure that dbfile is working with Derby. It is
a common production configuration to use a database with a single file
location for all message content.
> > The problem *appears* to be with notify(). This is why I
> > have wanted us to simplify the logic by having one spool
> > thread and plain worker threads that just process what
> > they are given.
> it's not an easy change mainly because the contract between
> mail/spool repositories and james is not clear enough.
We should define it. We own those contracts.
> What is threadsafe in a repository?
The exposed put/get type operations should be thread safe.
> What is the correct use of locking/unlocking?
Ideally, we should be able to eliminate much of it, and isolate any
remaining notion of it. A single spool thread / multiple worker pool change
should be helpful in this regard.
> Can I store the same message in 2 different repositories?
I'd like to be able to say no, but I suspect that we need for some version
of the answer to be yes.
> Is it safe to store the same message in the same repository
> multiple times?
We need to distinguish between calling store() and actually storing copies.
> Currently we run the notify when the message is stored but
> when the message is stored we still got the lock on the Mail
I'll try to find time to look at the spooler code again.
--- Noel
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]