[Netconf] lock and commit operations

Andy Bierman <andy@netconfcentral.com> Thu, 30 July 2009 16:43 UTC

Return-Path: <andy@netconfcentral.com>
X-Original-To: netconf@core3.amsl.com
Delivered-To: netconf@core3.amsl.com
Received: from localhost (localhost []) by core3.amsl.com (Postfix) with ESMTP id 6F4FF28C2A1 for <netconf@core3.amsl.com>; Thu, 30 Jul 2009 09:43:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.442
X-Spam-Status: No, score=-2.442 tagged_above=-999 required=5 tests=[AWL=0.157, BAYES_00=-2.599]
Received: from mail.ietf.org ([]) by localhost (core3.amsl.com []) (amavisd-new, port 10024) with ESMTP id NCJVYFxXL1OQ for <netconf@core3.amsl.com>; Thu, 30 Jul 2009 09:43:05 -0700 (PDT)
Received: from n20.bullet.mail.mud.yahoo.com (n20.bullet.mail.mud.yahoo.com []) by core3.amsl.com (Postfix) with SMTP id 8A0DE3A6BC1 for <netconf@ietf.org>; Thu, 30 Jul 2009 09:43:05 -0700 (PDT)
Received: from [] by n20.bullet.mail.mud.yahoo.com with NNFMP; 30 Jul 2009 16:43:04 -0000
Received: from [] by t8.bullet.mud.yahoo.com with NNFMP; 30 Jul 2009 16:43:04 -0000
Received: from [] by omp401.mail.mud.yahoo.com with NNFMP; 30 Jul 2009 16:43:04 -0000
X-Yahoo-Newman-Id: 334000.65860.bm@omp401.mail.mud.yahoo.com
Received: (qmail 39018 invoked from network); 30 Jul 2009 16:43:03 -0000
Received: from unknown (HELO ? (andy@ with plain) by smtp110.sbc.mail.sp1.yahoo.com with SMTP; 30 Jul 2009 16:43:03 -0000
X-YMail-OSG: 6Osxb3YVM1mDIER6wx8AZ1eJzUtyqAwm8qGrTZr2MUxW2Wb0erec.p9gVjDHNlFqjS5EGA8V9xCFPlNbHoA.NnCxbGPoOekVaFC99LgPBm7JxlR4sFJ9cmVw9x1szITdFyJPXnazDuwn3_pLG4r.P8iIkP7xhtHynKqqojoz55wrlvqXco9QnyygG8VNcEelLEd4iDampvHWuN1GbF39rY2arF_fmETgt8ZU.x.5.WfbJnvdv.T2hkzuRI76jXjlMSvBLkR2OcAtGg--
X-Yahoo-Newman-Property: ymail-3
Message-ID: <4A71CD21.6040909@netconfcentral.com>
Date: Thu, 30 Jul 2009 09:41:05 -0700
From: Andy Bierman <andy@netconfcentral.com>
User-Agent: Thunderbird (X11/20090608)
MIME-Version: 1.0
To: NETCONF <netconf@ietf.org>
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 7bit
Subject: [Netconf] lock and commit operations
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Network Configuration WG mailing list <netconf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/netconf>, <mailto:netconf-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/netconf>
List-Post: <mailto:netconf@ietf.org>
List-Help: <mailto:netconf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netconf>, <mailto:netconf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 30 Jul 2009 16:43:06 -0000


A careful reading of 4741bis, sec. 7.5, para 4 reveals
that the the "candidate" portion of the database architecture
is seriously broken.

The <lock> operation does not affect the <commit> operation at all.
Martin already pointed this out.  Even if I lock every database
on the box, anybody can just login at anytime and issue <commit>,
and ruin the 'database transaction' I am trying to complete.
(Note the quotes, as to not offend any database experts
out there who know NETCONF does not support real transactions.)

If I am doing a confirmed-commit, anybody who logs in and invokes <commit>
will confirm my commit, instead of letting me decide
to keep or cancel the recent changes to running.
Even though I have every database globally locked.

Since <partial-lock> does not work on the candidate database at all,
there is no need to worry about how <commit> works with partial locking.

I don't think a :confirmed-commit.1.1 capability can fix
all these problems.