* [pynfs PATCH] TESTS: fix DELEG9
@ 2010-09-14 1:06 J. Bruce Fields
2010-09-14 1:08 ` J. Bruce Fields
0 siblings, 1 reply; 2+ messages in thread
From: J. Bruce Fields @ 2010-09-14 1:06 UTC (permalink / raw)
To: iisaman; +Cc: linux-nfs
From: J. Bruce Fields <bfields@redhat.com>
The new server doesn't have a recall callback setup, so will never send
the delegreturn. (Doing it by hand at the end as attempted here doesn't
work well, as the open that precedes that final delegreturn needs the
delegreturn before it can succeed.)
Also, we need to set c.cb_server for _verify_cb_occurred to get the
correct count.
After this patch, the test passes against the Linux server.
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
---
lib/nfs4/servertests/st_delegation.py | 5 ++---
1 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/lib/nfs4/servertests/st_delegation.py b/lib/nfs4/servertests/st_delegation.py
index 5fc4fad..14a1d32 100644
--- a/lib/nfs4/servertests/st_delegation.py
+++ b/lib/nfs4/servertests/st_delegation.py
@@ -396,9 +396,11 @@ def testChangeDeleg(t, env, funct=_recall):
deleg_info, fh, stateid = _get_deleg(t, c, c.homedir + [t.code], funct, NFS4_OK)
# Create new callback server
new_server = CBServer(c)
+ new_server.set_cb_recall(c.cbid, funct, NFS4_OK);
cb_thread = threading.Thread(target=new_server.run)
cb_thread.setDaemon(1)
cb_thread.start()
+ c.cb_server = new_server
env.sleep(3)
# Switch to using new server
res = c.compound([_set_clientid(c, id, new_server)])
@@ -415,9 +417,6 @@ def testChangeDeleg(t, env, funct=_recall):
count = new_server.opcounts[OP_CB_RECALL]
fh2, stateid2 = _cause_recall(t, env)
_verify_cb_occurred(t, c, count)
- ops = c.use_obj(fh) + [c.delegreturn_op(deleg_info.read.stateid)]
- res = c.compound(ops)
- check(res)
--
1.7.0.4
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [pynfs PATCH] TESTS: fix DELEG9
2010-09-14 1:06 [pynfs PATCH] TESTS: fix DELEG9 J. Bruce Fields
@ 2010-09-14 1:08 ` J. Bruce Fields
0 siblings, 0 replies; 2+ messages in thread
From: J. Bruce Fields @ 2010-09-14 1:08 UTC (permalink / raw)
To: iisaman; +Cc: linux-nfs
On Mon, Sep 13, 2010 at 09:06:30PM -0400, bfields wrote:
> From: J. Bruce Fields <bfields@redhat.com>
>
> The new server doesn't have a recall callback setup, so will never send
> the delegreturn. (Doing it by hand at the end as attempted here doesn't
> work well, as the open that precedes that final delegreturn needs the
> delegreturn before it can succeed.)
>
> Also, we need to set c.cb_server for _verify_cb_occurred to get the
> correct count.
>
> After this patch, the test passes against the Linux server.
This patch, plus the other fixes I need to get usable results against
the Linux server, are also available from
git://linux-nfs.org/~bfields/pynfs.git
(and, for 4.1, at:
git://linux-nfs.org/~bfields/pynfs41.git
).
--b.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2010-09-14 1:09 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-09-14 1:06 [pynfs PATCH] TESTS: fix DELEG9 J. Bruce Fields
2010-09-14 1:08 ` J. Bruce Fields
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox