2016-07-28 21:09:39

by Frank Filz

[permalink] [raw]
Subject: RE: pynfs pull request

> On Wed, Jul 27, 2016 at 08:46:18AM -0700, Frank Filz wrote:
> > Bruce, could you pull:
> >
> > https://github.com/ffilz/pynfs/commits/master
> >
> > Also, Ajay submitted a pull request to me
> >
> > https://github.com/ffilz/pynfs/pull/1
> >
> > Could you pull that also (or would you prefer I merge it into my
> > branch and then have you pull everything from my branch)?
>
> I'm fine either way, but would you mind just giving me a git:// url to
pull
> from? I mean, I assume I can track down the repo url's from the github
url's
> and pull from master in each, but it'd be simpler for me in future and I'd
be
> sure I was getting what you intended....
>
> And a cc: to linux-nfs with the pull requests would be useful too. I
don't think
> anyone else reviews those, but maybe somebody will some day.

Ok, I merged Ajay's patch (had to replace a checklist with check) and
verified the test fails without the Ganesha fix and succeeds with, so looks
like a good test case addition.

Pull master branch from: git://github.com/ffilz/pynfs.git

6c6ecec ajay nair Added WRT19 to check WRITE operation with incorrect
permissions and somebody else's stateid
03f0aee Frank S. Filz Add WRT18 to test 4 writes in single compound updates
change each time
2fe404f Frank S. Filz Make ACL tests check for support of FATTR4_ACL
2750cbd Frank S. Filz Add ganesha flag to tests that Ganesha passes

Thanks

Frank



---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus



2016-07-29 21:30:14

by J. Bruce Fields

[permalink] [raw]
Subject: Re: pynfs pull request

On Thu, Jul 28, 2016 at 02:09:26PM -0700, Frank Filz wrote:
> > On Wed, Jul 27, 2016 at 08:46:18AM -0700, Frank Filz wrote:
> > > Bruce, could you pull:
> > >
> > > https://github.com/ffilz/pynfs/commits/master
> > >
> > > Also, Ajay submitted a pull request to me
> > >
> > > https://github.com/ffilz/pynfs/pull/1
> > >
> > > Could you pull that also (or would you prefer I merge it into my
> > > branch and then have you pull everything from my branch)?
> >
> > I'm fine either way, but would you mind just giving me a git:// url to
> pull
> > from? I mean, I assume I can track down the repo url's from the github
> url's
> > and pull from master in each, but it'd be simpler for me in future and I'd
> be
> > sure I was getting what you intended....
> >
> > And a cc: to linux-nfs with the pull requests would be useful too. I
> don't think
> > anyone else reviews those, but maybe somebody will some day.
>
> Ok, I merged Ajay's patch (had to replace a checklist with check) and
> verified the test fails without the Ganesha fix and succeeds with, so looks
> like a good test case addition.

Thanks!

>
> Pull master branch from: git://github.com/ffilz/pynfs.git
>
> 6c6ecec ajay nair Added WRT19 to check WRITE operation with incorrect
> permissions and somebody else's stateid
> 03f0aee Frank S. Filz Add WRT18 to test 4 writes in single compound updates
> change each time
> 2fe404f Frank S. Filz Make ACL tests check for support of FATTR4_ACL
> 2750cbd Frank S. Filz Add ganesha flag to tests that Ganesha passes

So, those are tests beyond those in "all", that Ganesha passes? OK. I
could try to claim pynfs shouldn't be the place for server-dependent
information, but this isn't the first, and I can see how it's convenient
and I don't see it as a problem at least for now.

The reason knfsd gave up on the utf8 tests was complaints from people
with filesystems with non-utf8 encodings. Given a preexisting
filesystem neither knfsd nor probably Ganesha has any way to determine
the encoding, so we're left just injecting unhelpful errors when we come
across something that doesn't look like utf-8. Which just annoyed
people with those filesystems, didn't really help anyone else, and
changed behavior on NFSv3->NFSv4 upgrade.

But maybe non-utf8 is less common now.

Anyway, patches look fine, applying.

--b.

2016-07-29 21:55:34

by Frank Filz

[permalink] [raw]
Subject: RE: pynfs pull request

> On Thu, Jul 28, 2016 at 02:09:26PM -0700, Frank Filz wrote:
> > > On Wed, Jul 27, 2016 at 08:46:18AM -0700, Frank Filz wrote:
> > > > Bruce, could you pull:
> > > >
> > > > https://github.com/ffilz/pynfs/commits/master
> > > >
> > > > Also, Ajay submitted a pull request to me
> > > >
> > > > https://github.com/ffilz/pynfs/pull/1
> > > >
> > > > Could you pull that also (or would you prefer I merge it into my
> > > > branch and then have you pull everything from my branch)?
> > >
> > > I'm fine either way, but would you mind just giving me a git:// url
> > > to
> > pull
> > > from? I mean, I assume I can track down the repo url's from the
> > > github
> > url's
> > > and pull from master in each, but it'd be simpler for me in future
> > > and I'd
> > be
> > > sure I was getting what you intended....
> > >
> > > And a cc: to linux-nfs with the pull requests would be useful too.
> > > I
> > don't think
> > > anyone else reviews those, but maybe somebody will some day.
> >
> > Ok, I merged Ajay's patch (had to replace a checklist with check) and
> > verified the test fails without the Ganesha fix and succeeds with, so
> > looks like a good test case addition.
>
> Thanks!
>
> >
> > Pull master branch from: git://github.com/ffilz/pynfs.git
> >
> > 6c6ecec ajay nair Added WRT19 to check WRITE operation with incorrect
> > permissions and somebody else's stateid 03f0aee Frank S. Filz Add
> > WRT18 to test 4 writes in single compound updates change each time
> > 2fe404f Frank S. Filz Make ACL tests check for support of FATTR4_ACL
> > 2750cbd Frank S. Filz Add ganesha flag to tests that Ganesha passes
>
> So, those are tests beyond those in "all", that Ganesha passes? OK. I
could
> try to claim pynfs shouldn't be the place for server-dependent
information,
> but this isn't the first, and I can see how it's convenient and I don't
see it as a
> problem at least for now.

There are a few ganesha specific tests. Some are where it needs to form a
bad stateid. These are useful tests for servers, but obviously need to be
server specific. The rest are tests that are not part of all but it's handy
to document the ones Ganesha is expected to pass (and makes it easier for me
to instruct QA folks which tests to run.. run all ganesha... otherwise they
only run all...).

Maybe down the road it would be nice to have a better way of specifying what
tests should be run for certain servers so rather than having the ganesha
flag on a bunch of tests, there is some single file we list additional tests
to be added to the "all" bucket if some flag indicating ganesha is specified
on the command line. Such a mechanism could even add the tests to various
flags (so for example, any lock tests Ganesha passes would be added to the
all AND lock flags).

I'd love to see evidence that other servers are considering pynfs for spec
validation testing...

> The reason knfsd gave up on the utf8 tests was complaints from people with
> filesystems with non-utf8 encodings. Given a preexisting filesystem
neither
> knfsd nor probably Ganesha has any way to determine the encoding, so
> we're left just injecting unhelpful errors when we come across something
> that doesn't look like utf-8. Which just annoyed people with those
> filesystems, didn't really help anyone else, and changed behavior on
NFSv3-
> >NFSv4 upgrade.
>
> But maybe non-utf8 is less common now.

Hmm, I can see that point. It would be interesting to see if we could just
lump utf8 tests into all now...

> Anyway, patches look fine, applying.

Glad you also picked up the additional patch I added today with the exit
code on failed tests. Hmm, that change actually probably should be made to
nfs4.1/testserver.py also...

Thanks

Frank


---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus


2016-08-01 14:43:50

by J. Bruce Fields

[permalink] [raw]
Subject: Re: pynfs pull request

> > The reason knfsd gave up on the utf8 tests was complaints from people with
> > filesystems with non-utf8 encodings. Given a preexisting filesystem
> neither
> > knfsd nor probably Ganesha has any way to determine the encoding, so
> > we're left just injecting unhelpful errors when we come across something
> > that doesn't look like utf-8. Which just annoyed people with those
> > filesystems, didn't really help anyone else, and changed behavior on
> NFSv3-
> > >NFSv4 upgrade.
> >
> > But maybe non-utf8 is less common now.

On Fri, Jul 29, 2016 at 02:55:19PM -0700, Frank Filz wrote:
> Hmm, I can see that point. It would be interesting to see if we could just
> lump utf8 tests into all now...

In our case we'd have to reintroduce some sort of utf8 enforcement in
knfsd, or only test with filesystems that will do that for us. The
cases where that would cause problems are probably rarer now, but I'm
still not ready to do that.

--b.

2016-10-21 15:53:31

by J. Bruce Fields

[permalink] [raw]
Subject: Re: pynfs pull request

On Fri, Jul 29, 2016 at 02:55:19PM -0700, Frank Filz wrote:
> > On Thu, Jul 28, 2016 at 02:09:26PM -0700, Frank Filz wrote:
> > > Pull master branch from: git://github.com/ffilz/pynfs.git
> > >
> > > 6c6ecec ajay nair Added WRT19 to check WRITE operation with incorrect
> > > permissions and somebody else's stateid 03f0aee Frank S. Filz Add
> > > WRT18 to test 4 writes in single compound updates change each time
> > > 2fe404f Frank S. Filz Make ACL tests check for support of FATTR4_ACL

By the way, Kaleb just noticed that the sense of ACL0 is reversed--it
fails when ACLs are supported. I've added the missing "not".

--b.

2016-10-24 18:13:30

by Frank Filz

[permalink] [raw]
Subject: RE: pynfs pull request

> On Fri, Jul 29, 2016 at 02:55:19PM -0700, Frank Filz wrote:
> > > On Thu, Jul 28, 2016 at 02:09:26PM -0700, Frank Filz wrote:
> > > > Pull master branch from: git://github.com/ffilz/pynfs.git
> > > >
> > > > 6c6ecec ajay nair Added WRT19 to check WRITE operation with
> > > > incorrect permissions and somebody else's stateid 03f0aee Frank S.
> > > > Filz Add
> > > > WRT18 to test 4 writes in single compound updates change each time
> > > > 2fe404f Frank S. Filz Make ACL tests check for support of
> > > > FATTR4_ACL
>
> By the way, Kaleb just noticed that the sense of ACL0 is reversed--it
fails
> when ACLs are supported. I've added the missing "not".

Yea, sorry...

The test "works" for me because Ganesha always advertises ACL support even
when a given filesystem doesn't (either because ACLs aren't enabled on it,
or the FSAL doesn't support ACLs at all). Since my testing is all on
environments that don't support ACLs, it appears to give correct results,
none of the other ACL tests run, and thus they list as omitted rather than
as failures...

Frank


---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus