Re: [dispatch] Proposal for Per Resource Events Protocol

worley@ariadne.com Tue, 22 August 2023 19:28 UTC

Return-Path: <worley@alum.mit.edu>
X-Original-To: dispatch@ietfa.amsl.com
Delivered-To: dispatch@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3C58EC151087 for <dispatch@ietfa.amsl.com>; Tue, 22 Aug 2023 12:28:57 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.692
X-Spam-Level:
X-Spam-Status: No, score=-1.692 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HEADER_FROM_DIFFERENT_DOMAINS=0.249, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_SOFTFAIL=0.665, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=comcastmailservice.net
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Q4X7FqozsajI for <dispatch@ietfa.amsl.com>; Tue, 22 Aug 2023 12:28:51 -0700 (PDT)
Received: from resdmta-c1p-023853.sys.comcast.net (resdmta-c1p-023853.sys.comcast.net [96.102.19.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B283DC14F749 for <dispatch@ietf.org>; Tue, 22 Aug 2023 12:28:51 -0700 (PDT)
Received: from resomta-c1p-023411.sys.comcast.net ([96.102.18.231]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 256/256 bits) (Client did not present a certificate) by resdmta-c1p-023853.sys.comcast.net with ESMTP id YQhYqNkUohn8ZYX1eqhzFh; Tue, 22 Aug 2023 19:26:50 +0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=comcastmailservice.net; s=20211018a; t=1692732410; bh=ORB1eCEwPbKGrk9fzUqFAUgIRmUTC4F6OZcgIoclCQ0=; h=Received:Received:Received:Received:From:To:Subject:Date: Message-ID:Xfinity-Spam-Result; b=wmpgEvLZYg9Hk0OM4PuWq/d+xuenMIiioSCctqfMurVBc3pD5CD77AR7RWv/KZamB YPFlHewN7fnP8qK0Oz8QrFVEnTj8kS3D4sNTRTGbSiE9L6lRupyuC4SRv/A0QC5rPT oSb+hNfctpIvj1Rqowuf3MQNBzWd56hKu8oup5oXza/BYPj5KtgjK1vr1hisPSn3W7 8+iAa32xA3ZzKAjuuLeT5iX4keK8Sf1t2peY9b2WQ1lVd2+z4ixlpNcEIIRQ+Qpo7s HHdX0fignUUMcSymWjYY/kR4ZMNkuS0yjOghEqTp8HDErYbqWI7duzApgZhHGknjF1 zlSzP7HIjLJ8A==
Received: from hobgoblin.ariadne.com ([IPv6:2601:192:4a00:430::57f5]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 256/256 bits) (Client did not present a certificate) by resomta-c1p-023411.sys.comcast.net with ESMTPA id YX1cqTEfeFilfYX1cqXs1l; Tue, 22 Aug 2023 19:26:49 +0000
X-Xfinity-VAAS: gggruggvucftvghtrhhoucdtuddrgedviedruddvuddgudefiecutefuodetggdotefrodftvfcurfhrohhfihhlvgemucevohhmtggrshhtqdftvghsihdpqfgfvfdppffquffrtefokffrnecuuegrihhlohhuthemuceftddunecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenucfjughrpefhvfevufgjshestddttddttddttdenucfhrhhomhepfihorhhlvgihsegrrhhirggunhgvrdgtohhmucdlffgrlhgvucftrdcuhghorhhlvgihmdenucggtffrrghtthgvrhhnpeejteeugeetkeehvefgtdekieejheeftefffedvheeljeekveeuueehjeehleejffenucfkphepvdeitddumeduledvmeegrgdttdemgeeftdemmeehjehfheenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhephhgvlhhopehhohgsghhosghlihhnrdgrrhhirggunhgvrdgtohhmpdhinhgvthepvdeitddumeduledvmeegrgdttdemgeeftdemmeehjehfhedpmhgrihhlfhhrohhmpeifohhrlhgvhiesrghluhhmrdhmihhtrdgvughupdhnsggprhgtphhtthhopeehpdhrtghpthhtohepthhoohhmihhmsehgmhgrihhlrdgtohhmpdhrtghpthhtohepthgsrhgrhiesthgvgihtuhgrlhhithihrdgtohhmpdhrtghpthhtoheptgigrhgvshepgedtphhrohhtohhnmhgrihhlrdgtohhmsegumhgrrhgtrdhivghtfhdrohhrghdprhgtphhtthhopeguihhsphgrthgthhesihgvthhfrdhorhhgpdhrtghpthhtohepfi horhhlvgihsegrrhhirggunhgvrdgtohhm
X-Xfinity-VMeta: sc=-100.00;st=legit
Received: from hobgoblin.ariadne.com (localhost [127.0.0.1]) by hobgoblin.ariadne.com (8.16.1/8.16.1) with ESMTPS id 37MJQlCc1023942 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Tue, 22 Aug 2023 15:26:47 -0400
Received: (from worley@localhost) by hobgoblin.ariadne.com (8.16.1/8.16.1/Submit) id 37MJQkCB1023939; Tue, 22 Aug 2023 15:26:46 -0400
X-Authentication-Warning: hobgoblin.ariadne.com: worley set sender to worley@alum.mit.edu using -f
From: worley@ariadne.com
To: Michael Toomim <toomim@gmail.com>
Cc: worley@ariadne.com, dispatch@ietf.org, cxres=40protonmail.com@dmarc.ietf.org, tbray@textuality.com
In-Reply-To: <c075c776-f3fd-0f6e-915a-fe8f24de3f4e@gmail.com> (toomim@gmail.com)
Sender: worley@ariadne.com
Date: Tue, 22 Aug 2023 15:26:46 -0400
Message-ID: <87sf8ayj2h.fsf@hobgoblin.ariadne.com>
Archived-At: <https://mailarchive.ietf.org/arch/msg/dispatch/GOq3FdQYsoBwqqUdr8SNsLQBnSE>
Subject: Re: [dispatch] Proposal for Per Resource Events Protocol
X-BeenThere: dispatch@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: DISPATCH Working Group Mail List <dispatch.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dispatch>, <mailto:dispatch-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dispatch/>
List-Post: <mailto:dispatch@ietf.org>
List-Help: <mailto:dispatch-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dispatch>, <mailto:dispatch-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 22 Aug 2023 19:28:57 -0000

Michael Toomim <toomim@gmail.com> writes:
> Ah, yes, now I know precisely what you are referring to!
>
> These "events" are semantic labels for transitioning a state machine 
> through various states. This is a very common way to implement data 
> synchronization across a set of modules, but it has drawbacks:

I was thinking about this a bit more, and sometimes it's about
synchronizing state across a set of modules, but at other times it's
about "logging", and whoever designed the system doesn't have a clear
concept of state in mind.  One should design in terms of state when
possible, but my experience suggests there are many exceptions.

>> My reflex was to say "Certainly, given the elaborateness of the XML
>> system, there must be a way to specify that!", though I know *nothing*
>> about XPath.  [...]

> Wow, indeed. Having to specify:
>
>     /bar[position() >= 100 and not(position() > 200)]
>
> Instead of:
>
>     /bar[100:200]
>
> ...certainly leaves a lot to be desired. I think we can do better for an 
> XML range unit.

My memory is that few or none of the SIP event types that support
partial updates consider the state to be divided into a sequence.
Usually, it's a set of key/value pairs, where the key is a string that
identifies the component of the overall state (e.g., the identifier of a
particular call) and the value is some complex structure.  So if you're
considering partial updates, start with having a way to specify
modifying the values for individual keys.  Indeed, you may need little
more than that in practice.

Dale