On Thu, Aug 04, 2022 at 03:23:44PM +0000, Chuck Lever III wrote: > Hi Bruce- > > I'm running DELEG21 to unit-test delegations, and this message comes > out at the end: > > Making sure b'DELEG21-1' is writable: operation OP_SETATTR should return NFS4_OK, instead got NFS4ERR_DELAY > > I guess there's no callback service running during the test's clean-up phase. > > Then if I run the test again immediately: > > [cel@morisot pynfs]$ sudo nfs4.0/testserver.py manet:/export/tmp --maketree --rundeps -v cel > Initialization failed, no tests run. > Perhaps you need to use the --secure option or configure server to allow connections from high ports > Traceback (most recent call last): > File "/home/cel/src/pynfs/nfs4.0/testserver.py", line 394, in <module> > main() > File "/home/cel/src/pynfs/nfs4.0/testserver.py", line 346, in main > env.init() > File "/home/cel/src/pynfs/nfs4.0/servertests/environment.py", line 150, in init > c.clean_dir(self.opts.path) > File "/home/cel/src/pynfs/nfs4.0/nfs4lib.py", line 579, in clean_dir > check_result(res, "Making sure %s is writable" % repr(e.name)) > File "/home/cel/src/pynfs/nfs4.0/nfs4lib.py", line 906, in check_result > raise BadCompoundRes(resop, res.status, msg) > nfs4lib.BadCompoundRes: Making sure b'DELEG21-1' is writable: operation OP_SETATTR should return NFS4_OK, instead got NFS4ERR_DELAY > > And I think this condition persists until the old lease expires and > the server permits the client to delete that file. DELEG21 should pass on any recent kernel. But possibly cleanup should also be better. I'm not sure what the right fix is. --b.