FYI - bug updated and fix pushed. It will be in 2.4.13. Shiny! Bron.
On Thu, Dec 29, 2011 at 11:43:14AM +0100, Bron Gondwana wrote: > I will have a look through the code and update everything to be protected by > the right configuration checks! > > Bron. > > On Wed, Dec 28, 2011, at 10:35 PM, Wesley Craig wrote: > > The short answer is that "kick_mupdate()" makes no sense on a backend in > > the configuration you're talking about. The long answer is that calls to > > kick_mupdate() are liberally sprinkled through the code, primarily > > involving calls that manipulate mailboxes or acls (xfer does both, > > naturally). Some of those calls are protected by a configuration check, > > others by a different configuration check, and some not protected at all. > > > > kick_mupdate() is supposed to talk to the locally running mupdate (there > > isn't one running on the backend in your configuration, hence the error) to > > force a NOOP to be sent the mupdate master. The NOOP will cause the > > mupdate master to flush any pending mailbox list updates to the NOOP-ing > > host -- a frontend. Backends don't participate in the streaming of mailbox > > list updates in the standard murder configuration, because (!) the are the > > source of the mailbox list updates. Hence no need to check with the > > mupdate master to see if they have all the right bits. > > > > :wes > > > > On 28 Dec 2011, at 13:38, Andrew Morgan wrote: > > > I moved a test mailbox from one cyrus backend (v2.3.16) to another > > > backend > > > (2.4.13beta1). The move succeeded with the following log entry on the > > > new > > > backend: > > > > > > Dec 28 10:22:20 cyrus-be1 imap[4802]: login: > > > cyrus-be3.onid.oregonstate.edu [128.193.4.124] cyr_proxy PLAIN User > > > logged in > > > Dec 28 10:22:20 cyrus-be1 imap[4802]: kick_mupdate: can't connect to > > > target: No such file or directory > > > Dec 28 10:22:20 cyrus-be1 imap[4802]: Index upgrade: user.morgana (10 -> > > > 12) > > > Dec 28 10:22:21 cyrus-be1 imap[4802]: USAGE cyr_proxy user: 0.004000 sys: > > > 0.028001 > > > > > > The kick_mupdate message comes from the kick_mupdate() function in > > > imap/mupdate-client.c: > > > > > > strlcpy(buf, config_dir, sizeof(buf)); > > > strlcat(buf, FNAME_MUPDATE_TARGET_SOCK, sizeof(buf)); > > > memset((char *)&srvaddr, 0, sizeof(srvaddr)); > > > srvaddr.sun_family = AF_UNIX; > > > strcpy(srvaddr.sun_path, buf); > > > len = sizeof(srvaddr.sun_family) + strlen(srvaddr.sun_path) + 1; > > > > > > r = connect(s, (struct sockaddr *)&srvaddr, len); > > > if (r == -1) { > > > syslog(LOG_ERR, "kick_mupdate: can't connect to target: %m"); > > > goto done; > > > } > > > > > > How is this supposed to work? mupdated is running on another host, so > > > why > > > is it trying to connect via a unix socket? > > ---- > > Cyrus Home Page: http://www.cyrusimap.org/ > > List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/ > > > -- > Bron Gondwana > br...@fastmail.fm > > ---- > Cyrus Home Page: http://www.cyrusimap.org/ > List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/ ---- Cyrus Home Page: http://www.cyrusimap.org/ List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/