The file locking code for SunOS in CVS is not working properly. It will lock
the files for other processes, but when accessed from the same process (the
mms queue process) the lock will be ignored. This can cause some problems,
since the messages are produced to multiple deliver deliver threads, which
each attempts to deliver the message :-(
I am contemplating writing a fix for this, but I am not sure how to best go
around this: I have tried implementing it using share reservations, which
seems to work for different threads of the same process, but since the
queue runs in the same process _and_ thread, share reservations doesn't
really work out either.
I think a dict or similar could easily be used to keep track of the open
files in the queue, but not so sure if this is the best solution. It might
be satisfactory though.
What do you think?
Christian Theil Have
Devel mailing list