Re: [i2rs] Call for Input from WG: I2RS error handling simplification for initial I2RS protocol

Joe Clarke <jclarke@cisco.com> Thu, 15 October 2015 15:05 UTC

Return-Path: <jclarke@cisco.com>
X-Original-To: i2rs@ietfa.amsl.com
Delivered-To: i2rs@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 67AF01B3341 for <i2rs@ietfa.amsl.com>; Thu, 15 Oct 2015 08:05:40 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.511
X-Spam-Level:
X-Spam-Status: No, score=-14.511 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Ty7KD-I8L2rt for <i2rs@ietfa.amsl.com>; Thu, 15 Oct 2015 08:05:38 -0700 (PDT)
Received: from alln-iport-3.cisco.com (alln-iport-3.cisco.com [173.37.142.90]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id DAC861B2FFA for <i2rs@ietf.org>; Thu, 15 Oct 2015 08:05:37 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=2327; q=dns/txt; s=iport; t=1444921537; x=1446131137; h=subject:to:references:cc:from:message-id:date: mime-version:in-reply-to:content-transfer-encoding; bh=Dgedp6tDEGFrQS+yk+bWBwwwXxZv+7OwYVQrLOxfu9g=; b=ITetEWOWyu1B3DreJQ7YkCCb1j9+eMpMHScsfKtQsq59bNq3/PEwXKgt zLSr4BouavFFRXYqC1SbihnHPwy54Irfiua77Zm0euh6XGGdDBV+GwgIT BW/ZNioIqLbM3iM+64j3H9WTiMKGs7/4Ubgb+rfq7ou/r/0kPiW0dtf29 g=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0D2AQA8wB9W/4YNJK1egyaBQr09AQ2BWYYcAoEzOBQBAQEBAQEBgQqEJgEBAQMBHRtAAQwECw4DAQMBAQEJFggHCQMCAQIBNAMGCAYBDAYCAQGIIgjDQAEBAQEBAQEBAQEBAQEBAQEBAQEBAReGdoR+hQ0HBoQoAQSSVoNFjRuJE5J8HwEBQoJEgVsiM4VnAQEB
X-IronPort-AV: E=Sophos;i="5.17,686,1437436800"; d="scan'208";a="197822204"
Received: from alln-core-12.cisco.com ([173.36.13.134]) by alln-iport-3.cisco.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 15 Oct 2015 15:05:37 +0000
Received: from [10.82.217.52] (rtp-vpn3-306.cisco.com [10.82.217.52]) by alln-core-12.cisco.com (8.14.5/8.14.5) with ESMTP id t9FF5amH001815; Thu, 15 Oct 2015 15:05:36 GMT
To: Susan Hares <shares@ndzh.com>, i2rs@ietf.org
References: <005901d10595$3f1fce10$bd5f6a30$@ndzh.com> <561CFF59.3020604@cisco.com> <01b601d106f8$69c836c0$3d58a440$@ndzh.com>
From: Joe Clarke <jclarke@cisco.com>
Organization: Cisco Systems, Inc.
Message-ID: <561FC0C1.5070704@cisco.com>
Date: Thu, 15 Oct 2015 11:05:37 -0400
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:38.0) Gecko/20100101 Thunderbird/38.3.0
MIME-Version: 1.0
In-Reply-To: <01b601d106f8$69c836c0$3d58a440$@ndzh.com>
Content-Type: text/plain; charset="windows-1252"; format="flowed"
Content-Transfer-Encoding: 7bit
Archived-At: <http://mailarchive.ietf.org/arch/msg/i2rs/sAfDIxQL2NiTm-BEzYolWjmzLic>
Cc: jhaas@pfrc.org, 'Alia Atlas' <akatlas@gmail.com>
Subject: Re: [i2rs] Call for Input from WG: I2RS error handling simplification for initial I2RS protocol
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: "Interface to The Internet Routing System \(IRS\)" <i2rs.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/i2rs>, <mailto:i2rs-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/i2rs/>
List-Post: <mailto:i2rs@ietf.org>
List-Help: <mailto:i2rs-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/i2rs>, <mailto:i2rs-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 15 Oct 2015 15:05:40 -0000

On 10/14/15 23:20, Susan Hares wrote:
> Joe:
>
> There will be some groups of data model have dependencies between objects.
> Some Client interactions will be orthogonal to each other.   If there are
> groupings, then the dependencies may leave the I2RS agent and routing system
> in an unknown state.

Sure.

>
> The "all-or-nothing" is the normal case for NETCONF/RESTCONF. If clients are
> based on the Netconf/RESTCONF code base, this will be the simple upward
> change.

RESTCONF does do all-or-none, but typically operations apply to one data 
element at a time.  Clients would need to include multiple 
sub-operations for a, say, a PATCH.  So, if I understand correctly, 
there would be burden on the Client that uses RESTCONF and 
multi-messages for a single "transaction" to handle the backout?

Joe

>
> The I2RS agent needs to provide notification for error on writing for
> priority conflict, and for other errors.   The Stop-on-error would also need
> to provide this input.
>
> Sue
>
> -----Original Message-----
> From: Joe Clarke [mailto:jclarke@cisco.com]
> Sent: Tuesday, October 13, 2015 8:56 AM
> To: Susan Hares; i2rs@ietf.org
> Cc: jhaas@pfrc.org; 'Alia Atlas'
> Subject: Re: [i2rs] Call for Input from WG: I2RS error handling
> simplification for initial I2RS protocol
>
> On 10/13/15 04:57, Susan Hares wrote:
>> Currently the I2RS requirements have error handling having three parts:
>>
>> 1)"all-or-nothing",
>>
>> 2)"continue-on-error", and
>>
>> 3)"stop-on-error".
>>
>> To provide an easier first step for the I2RS Agent for the first
>> implementation of an I2RS protocol,  the I2RS protocol design team
>> suggests reduce this to the "all-or-nothing" for the initial version.
>> Later versions of the I2RS protocol can provide the "continue-on-error"
>> or "stop-on-error" error handling.  The earlier decision in the I2RS
>> architecture was to support all 3 error handling pieces.
>
> It seems to me the latter two would be easier to implement as the Client
> continues to fire (until not told to do so in the stop-on-error case) and
> the Agent wouldn't have to track all operations for rollback.
>
> Is the assumption that most I2RS transactions will have mutual dependencies,
> and this is the most common error case?
>
> Joe
>