On Thu, 18 Jun 2009, Greg A. Woods wrote: > Not having a built-in basic way for Cyrus to automatically create > mailboxes for valid users is also a poor design. Several good > well-tested patches to enable this feature had been available for a very > long time (years?) before the "murder" feature was added in the first > place, and I have a firm conviction that if the autocreate feature had > been added to Cyrus when it was first made available then the design of > the clustering mechanisms would have supported it properly from the > beginning too. I'm not even sure I understand the difficulty with it > now -- if the cluster front-end knows how to direct a user access to the > appropriate backend, then so can it direct an initial delivery for > mailbox creation. When the mailbox already exists, the murder frontend looks up which backend contains the mailbox and proxies requests to it. In the case of new mailbox creation, something must decide which backend/partition to use. However, the frontends don't even know which backends/partitions exist. Nothing in the cyrus configuration on the frontend lists the available backends/partitions. The mailboxes.db file contains a list of backends/partitions, in a way, because it lists all mailboxes. Here is an example entry: user.morgan 1 cyrus-be2.onid.oregonstate.edu!default morgan lrswipcda This says that my mailbox exists on the backend "cyrus-be2.onid.oregonstate.edu" in the "default" partition. I suppose the frontend could generate a list of all backends and partitions from the mailboxes.db, but when you add a new backend or partition, it wouldn't exist there either. I'm trying to think of a way the frontend could determine which backends/partitions exist, but I don't think it can currently. Let's assume it could though... How would it pick which backend/partition to create the mailbox on? At random? Andy ---- Cyrus Home Page: http://cyrusimap.web.cmu.edu/ Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html