From: Andrew M. <mo...@or...> - 2001-11-30 18:46:37
|
On 30 Nov 2001, Matthew Keller wrote: > > The next best bet is to store DIDs in a database, which is what CNID does. > > I don't think there is anything wrong with the CNID concept, but we need > > to work on the transaction model so that processes don't deadlock > > accessing the database. Simon keeps pushing for a master process to > > control access to the database, but I don't see how this solves any of our > > current problems, plus it adds the extra complexity of interprocess > > communication. > > An extra daemon is, in my opinion, a good idea and won't make too much > complexity. There are lots of other projects that user IPC (in the form > of shared memory or UNIX Domain Sockets) to achieve similar goals. Even > a faction of Samba (Samba TNG) has a myriad of daemons with IPC between > them. On that note, the cooperative locking system I'm building is > daemon/IPC based (uses UNIX Domain Socket as not all UNIXes support > shared memory nicely). I agree that it *can* work, but I don't see the need for it. We should be able to make access to the berkeley database work, which obviates the need for a master process to gateway access to the database. We will still have a huge amount of contention for access to the master process that we will have to negotiate. If we can't make berkeley db work, we should try to use samba's tdb. Presumably they have already had to make it work with loads similar to netatalk's... Andy |