RE: Atomic operations - Comments Please

New Message Reply About this list Date view Thread view Subject view Author view Attachment view

From: Boris Z. (boris@conley.com)
Date: 07/16/98-12:45:36 PM Z


Message-ID: <01BDB0A6.DE2E5500.boris@conley.com>
From: "Boris Z." <boris@conley.com>
Subject: RE: Atomic operations - Comments Please
Date: Thu, 16 Jul 1998 10:45:36 -0700

Is BEGIN/END ATOMIC an attempt to add server based transaction 
atomicity to compound requests? 
If it just an isolation of client requests, how is it different from adding 
"NLM_SHARE(?, DENY_RW),?, restore Share level" to a compound request?


On Thursday, July 16, 1998 3:43 AM, Carl Beame [SMTP:beame@mail1.tinet.ie] wrote:
> 
> I'd like to just throw out the following possible procedures for
> comment:
> 
> 
> Procedure xx: BEGIN ATOMIC - Start atomic operation on file
> 
> 
>    SYNOPSIS
> 
>       (cfh) -> -
> 
>    ARGS
> 
>    RESULTS
> 
>       status: uint32
> 
>    DESCRIPTION
> 
>       BEGIN ATOMIC is used in a compound request and instructs the server
>       that no operation be performed on the current file handle other 
>       then those following the BEGIN ATOMIC. The atomisity ends when an 
>       END ATOMIC procedure is called or when the compound request completes
>       regardless for what reason. Only one BEGIN ATOMIC can be active in
>       a compound request at a time and the error NFS4ERR_DUP is returned 
>       if one is already active.
> 
>    ERRORS
> 
>       NFS4ERR_DUP
> 
>       NFS4ERR_NOENT
> 
>       NFS4ERR_IO
> 
>       NFS4ERR_ACCES
> 
>       NFS4ERR_XDEV
> 
>       NFS4ERR_INVAL
> 
>       NFS4ERR_ROFS
> 
>       NFS4ERR_NOTSUPP
> 
>       NFS4ERR_SERVERFAULT
> 
> 
> ======================================================
> Or ...
> 
> Procedure xx: BEGIN MUTEX - Start mutex operation on file
> 
> 
>    SYNOPSIS
> 
>       (cfh) -> -
> 
>    ARGS
> 
>    RESULTS
> 
>       status: uint32
> 
>    DESCRIPTION
> 
>       BEGIN MUTEX is used in a compound request and instructs the server
>       that no other BEGIN MUTEX can complete on the current file handle 
>       before an END MUTEX is executed. The mutex finishes when an 
>       END MUTEX procedure is called or when the compound request completes
>       regardless for what reason. Only one BEGIN MUTEX can be active in
>       a compound request at a time and the error NFS4ERR_DUP is returned 
>       if one is already active.
>       
> 
> 
>    SYNOPSIS
> 
>       (cfh) -> -
> 
>    ARGS
> 
>    RESULTS
> 
>       status: uint32
> 
>    DESCRIPTION
> 
>       BEGIN ATOMIC is used in a compound request and instructs the server
>       that no operation be performed on the current file handle other 
>       then those following the BEGIN ATOMIC. The atomisity ends when an 
>       END MUTEX procedure is called or when the compound request
>       completes regardless for what reason. Only one BEGIN ATOMIC can
>       be active at a time and the error NFS4ERR_DUP is returned if on 
>       is already active.
> 
> ERRORS 
>       NFS4ERR_DUP
> 
>       NFS4ERR_NOENT
> 
>       NFS4ERR_IO
> 
>       NFS4ERR_ACCES
> 
>       NFS4ERR_XDEV
> 
>       NFS4ERR_INVAL
> 
>       NFS4ERR_ROFS
> 
>       NFS4ERR_NOTSUPP
> 
>       NFS4ERR_SERVERFAULT
> 
> 
> 
> 
> 
>    ERRORS
> 
>       NFS4ERR_DUP
> 
>       NFS4ERR_NOENT
> 
>       NFS4ERR_IO
> 
>       NFS4ERR_ACCES
> 
>       NFS4ERR_XDEV
> 
>       NFS4ERR_INVAL
> 
>       NFS4ERR_ROFS
> 
>       NFS4ERR_NOTSUPP
> 
>       NFS4ERR_SERVERFAULT
> 
> ==========================================
> I should note that if the Mutex is used, that there are rules defined
> for specific filesystem operations like APPEND, SHARED CREATE,
> NONDESTRUCTIVE RENAME ...


New Message Reply About this list Date view Thread view Subject view Author view Attachment view

This archive was generated by hypermail 2.1.2 : 03/04/05-01:45:58 AM Z CST