My pile of watch/notify changes are ready for review: https://github.com/ceph/ceph/pull/2924 This series does a ton of stuff that should make watch/notify more robust, useful, and reliable. Highlights: - notify can tell who sent the message - notify acks are explicit - notify acks can include a payload that is delivered to the notifier - notifier can see who got the notify (and their ack payload, if any) - various useless arguments are dropped from watch, unwatch, notify calls - client/osd protocol now explicitly checks for watch staleness (i.e., we reliably detect when we may have missed a notify) - clients get an async notification when they were sent a notify but didn't ack it in time (not sure yet if this useful) - clients get an async notification when the watch was disconnected by the osd (timed out or explicitly killed or whatever) - clients have a new watch_check() call that synchronously checks for any pending errors, or tells us how recently we last confirmed watch liveness and notify async delivery. The last bit is the what lets users draw strong conclusions about what notifications they may (not) have received so they can draw real conclusions. Anyway, please take a look! 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