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/

Reply via email to