Re: watch/notify changes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 22 Aug 2014, Gregory Farnum wrote:
> On Thu, Aug 21, 2014 at 3:34 PM, Sage Weil <sweil@xxxxxxxxxx> wrote:
> > Sam and Josh and I discussed the state of watch/notify a couple weeks
> > back.  Here are our notes:
> >
> >         http://pad.ceph.com/p/watch-notify
> >
> > I've mapped most of these to tickets or bugs and noted them in the pad.
> >
> > Ignore the fact that these are in the v0.86 sprint currently; it's just
> > easier to enter them that way.
> >
> > If there are other issues we're missing here, let's address them now.  The
> > API changes so far can be seen at
> >
> >         https://github.com/ceph/ceph/commit/7ba30230505c6eede06cb2e2cb64210fdd4025a8
> >         https://github.com/ceph/ceph/commit/d179dd970e52db8b0c07b20f69c9e3be6bc43f09
> 
> I'm not entirely up on how watch-notify is implemented right now
> because it's been a bit of a mess, but this set of patches is a lot
> smaller than I was expecting when I started hearing about reworking
> it. The specific problem I remember remaining is:
> 1) Notifiers can specify a timeout after which point the notify gets
> completed regardless of the status of the watchers

This is the error code patches.  The notifier now gets -ETIMEDOUT.

> 2) Watchers have a separate timeout (which is often larger)

This is by design.  I remember there was some suggestion that this was a 
problem, but when we talked a couple weeks back we couldn't figure out 
what it might be.  The watch timeout is about client reconnects and 
failures.  The notify timeout could be message or application dependent... 
it's just how long the notifier is willing to wait.

> 3) There's no notification to either the watchers or the notifier if
> the notify timeout is hit.

The notifier gets the error.  I opened tickets for the watcher to tell 
whether it may have missed notifies.  The main change is that when a 
watch reconnects, it needs to be a different 'watch-reconnect' op so that 
the client (Objecter) gets an error code if the watch was disconnected 
(and therefore notifies may have been missed).

sage
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux