Re: [nfsv4] possible minor corrections of federated-fs-admin-05

James Lentini <jlentini@netapp.com> Fri, 24 September 2010 01:18 UTC

Return-Path: <jlentini@netapp.com>
X-Original-To: nfsv4@core3.amsl.com
Delivered-To: nfsv4@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 967E23A6900 for <nfsv4@core3.amsl.com>; Thu, 23 Sep 2010 18:18:45 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.891
X-Spam-Level:
X-Spam-Status: No, score=-5.891 tagged_above=-999 required=5 tests=[AWL=0.708, BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id xK-miyDi0JzT for <nfsv4@core3.amsl.com>; Thu, 23 Sep 2010 18:18:44 -0700 (PDT)
Received: from mx2.netapp.com (mx2.netapp.com [216.240.18.37]) by core3.amsl.com (Postfix) with ESMTP id A7E8D3A68FA for <nfsv4@ietf.org>; Thu, 23 Sep 2010 18:18:44 -0700 (PDT)
X-IronPort-AV: E=Sophos;i="4.57,226,1283756400"; d="scan'208";a="456942201"
Received: from smtp1.corp.netapp.com ([10.57.156.124]) by mx2-out.netapp.com with ESMTP; 23 Sep 2010 18:18:50 -0700
Received: from jlentini-linux.hq.netapp.com (jlentini-linux.hq.netapp.com [10.97.16.21]) by smtp1.corp.netapp.com (8.13.1/8.13.1/NTAP-1.6) with ESMTP id o8O1InwO011033; Thu, 23 Sep 2010 18:18:50 -0700 (PDT)
Date: Thu, 23 Sep 2010 21:18:49 -0400
From: James Lentini <jlentini@netapp.com>
X-X-Sender: jlentini@jlentini-linux.nane.netapp.com
To: Chuck Lever <chuck.lever@oracle.com>
In-Reply-To: <92784C19-36B1-47CA-AA26-CE04A63EE7DA@oracle.com>
Message-ID: <alpine.LFD.2.00.1009232058360.21841@jlentini-linux.nane.netapp.com>
References: <18218677-5DBE-4ABB-9FF9-E737AC458533@oracle.com> <alpine.LFD.2.00.1009230935110.21841@jlentini-linux.nane.netapp.com> <D661DECC-FF90-47F7-B880-6104D98DCA27@oracle.com> <alpine.LFD.2.00.1009231621280.21841@jlentini-linux.nane.netapp.com> <92784C19-36B1-47CA-AA26-CE04A63EE7DA@oracle.com>
User-Agent: Alpine 2.00 (LFD 1167 2008-08-23)
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset="US-ASCII"
Cc: NFSv4 Working Group <nfsv4@ietf.org>
Subject: Re: [nfsv4] possible minor corrections of federated-fs-admin-05
X-BeenThere: nfsv4@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: NFSv4 Working Group <nfsv4.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/nfsv4>, <mailto:nfsv4-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/nfsv4>
List-Post: <mailto:nfsv4@ietf.org>
List-Help: <mailto:nfsv4-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/nfsv4>, <mailto:nfsv4-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 24 Sep 2010 01:18:45 -0000

On Thu, 23 Sep 2010, Chuck Lever wrote:

> 
> On Sep 23, 2010, at 4:43 PM, James Lentini wrote:
> 
<snip> 
> > Speaking of that, it doesn't appear that anyone proposed 
> > names/definitions for those errors during the 9/2/10 FedFS meeting (if 
> > there was a proposal, I apologize for leaving it out of the meeting 
> > minutes). Do these definitions capture what we agreed to at that 
> > meeting?
> > 
> > 
> >   FEDFS_ERR_NO_CACHE:  The fileserver does not implement an FSN-to-FSL
> >      cache.
> > 
> >   FEDFS_ERR_UNKOWN_CACHE:  The software receiving the ONC RPC request
> >      is unaware if the fileserver implements an FSN-to-FSL cache or
> >      unable to communicate with the FSN-to-FSL cache if it exists.
> 
> Then FEDFS_OK MUST mean that the file server's cache now matches the 
> results returned by FEDFS_LOOKUP_JUNCTION?

These error codes are for when FEDFS_LOOKUP_JUNCTION is called with 
the FEDFS_RESOLVE_CACHE argument.

For the case you are asking about, when FEDFS_LOOKUP_JUNCTION is 
called with the FEDFS_RESOLVE_NSDB argument, we'll need another error 
code or another result value (as you suggest below).

> Are these new error codes returned with a FedFsFsl list, or are they 
> returned with no results?

No results.

> It might make more sense to treat these like the returned 
> ResolveType, instead of using them as the operation's result code, 
> imo.

I was thinking of an error code to indicate that the NSDB resolution 
was successful but the FSN-to-FSL cache was not updated 
(FEDFS_NO_CACHE_UPDATE?). Something like this:

    /// struct FedFsLookupResOk {
    ///         FedFsFsn               fsn;
    ///         FedFsFsl               fsl<>;
    /// };
    ///
    /// struct FedFsLookupResReferralVal {
    ///         FedFsNsdbName          targetNsdb;
    ///         unsigned int           ldapResultCode;
    /// };
    ///
    /// union FedFsLookupRes switch (FedFsStatus status) {
    ///  case FEDFS_OK:
    ///  case FEDFS_ERR_NO_CACHE_UPDATE:
    ///         FedFsLookupResOk           resok;
    ///  case FEDFS_ERR_NSDB_LDAP_VAL:
    ///         unsigned int               ldapResultCode;
    ///  case FEDFS_ERR_NSDB_LDAP_REFERRAL:
    ///  case FEDFS_ERR_NSDB_PARAMS_LDAP_REFERRAL:
    ///         FedFsNsdbName              targetNsdb;
    ///  case FEDFS_ERR_NSDB_LDAP_REFERRAL_VAL:
    ///         FedFsLookupResReferralVal  resReferralVal;
    ///  default:
    ///         void;
    /// };