Skip to contentSkip to conversation

pynfs pull request

DISCUSSION Frank Filz 3 participants 6 messages Jul 28, 2016 – Oct 24, 2016 2 messages not in the archive

Subsystems (2)
lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): [email protected]

A message that is not in the archive (sent off-list or not yet received): 20160728193855.GF4732@pad

Frank Filz

author
#2 lore raw
Quoted 5 lines · Frank Filz
Quoted 4 lines

Bruce, could you pull:

https://github.com/ffilz/pynfs/commits/master

Quoted 8 lines
Quoted 6 lines

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

Quoted 1 line

from? I mean, I assume I can track down the repo url's from the github

url's

Quoted 1 line

and pull from master in each, but it'd be simpler for me in future and I'd

be

Quoted 3 lines

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

Quoted 1 line

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

#3 lore raw
Quoted 20 lines · Frank Filz
Quoted 5 lines · Frank Filz
Quoted 4 lines

Bruce, could you pull:

https://github.com/ffilz/pynfs/commits/master

Quoted 8 lines
Quoted 6 lines

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

Quoted 1 line

from? I mean, I assume I can track down the repo url's from the github

url's

Quoted 1 line

and pull from master in each, but it'd be simpler for me in future and I'd

be

Quoted 2 lines

sure I was getting what you intended....

Quoted 7 lines
Quoted 1 line

And a cc: to linux-nfs with the pull requests would be useful too. I

don't think

Quoted 1 line

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!

Quoted 9 lines

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.

author
#4 lore raw
Quoted 38 lines · Frank Filz
Quoted 23 lines
Quoted 7 lines · Frank Filz
Quoted 6 lines

Bruce, could you pull:

https://github.com/ffilz/pynfs/commits/master

Also, Ajay submitted a pull request to me

Quoted 7 lines
Quoted 4 lines

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

Quoted 2 lines

from? I mean, I assume I can track down the repo url's from the github

url's

Quoted 2 lines

and pull from master in each, but it'd be simpler for me in future and I'd

be

Quoted 2 lines

sure I was getting what you intended....

Quoted 8 lines
Quoted 2 lines

And a cc: to linux-nfs with the pull requests would be useful too. I

don't think

Quoted 1 line

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!

Quoted 3 lines

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

Quoted 7 lines
Quoted 5 lines

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

Quoted 1 line

try to claim pynfs shouldn't be the place for server-dependent

information,

Quoted 1 line

but this isn't the first, and I can see how it's convenient and I don't

see it as a

Quoted 1 line

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...

Quoted 2 lines

The reason knfsd gave up on the utf8 tests was complaints from people with filesystems with non-utf8 encodings. Given a preexisting filesystem

neither

Quoted 4 lines

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-

Quoted 3 lines
Quoted 1 line

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...

Quoted 1 line

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

#5 lore raw
Quoted 11 lines
Quoted 2 lines

The reason knfsd gave up on the utf8 tests was complaints from people with filesystems with non-utf8 encodings. Given a preexisting filesystem

neither

Quoted 4 lines

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-

Quoted 3 lines
Quoted 1 line

NFSv4 upgrade.

But maybe non-utf8 is less common now.

Quoted 2 lines · Frank Filz

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.

#6 lore raw
In reply to Frank Filz
Quoted 7 lines · Frank Filz
Quoted 7 lines · Frank Filz
Quoted 6 lines

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.

author
#7 lore raw
Quoted 12 lines · Frank Filz
Quoted 9 lines
Quoted 9 lines · Frank Filz
Quoted 8 lines

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

Quoted 1 line

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