Subject: [nfsv4] 3530bis Issue 40: NFS4ERR_LEASE_MOVED trumps NFS4ERR_CB_PATH_DOWN

From: Robert Thurlow <[email-masked]>
Date: Wed, 06 Oct 2010 14:19:14 -0600

Hi folks,

This is issue 40 from http://github.com/loghyr/3530bis/blob/master/tasklist.txt.

In implementing NFSv4 migration support, we see a need to
clarify what happens when a server is in a position to return
both NFS4ERR_LEASE_MOVED and NFS4ERR_CB_PATH_DOWN, e.g. the
server knows it cannot make a callback to the client and it
knows the client is unaware of a migration event.

Our proposed wording change would require a server to hand
out NFS4ERR_LEASE_MOVED first, since the scope of the
condition involves another server which the client may
not know about yet.  Also, if the client handles the
NFS4ERR_CB_PATH_DOWN condition first by re-establishing the
callback path, it can get a recall it cannot respond to since
even DELEGRETURN will still fail with NFS4ERR_LEASE_MOVED.
This appears to lead to trying to handle recovery while
doing recovery, which does not seem good.

On the 3530bis call, some were not sure of the need to
mandate an ordering.  If that is your position, please let
us know why you don't agree with the above.

Thanks,
Rob T