[
https://issues.apache.org/jira/browse/HDFS-13082?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17154055#comment-17154055
]
Daniel Howard edited comment on HDFS-13082 at 7/9/20, 6:16 PM:
---------------------------------------------------------------
I found a comment that implies that Linux doesn't handle cookie verification:[1]
{quote}This discussion comes up pretty much every time someone writes a new NFS
server and/or filesystem. The thing that neither RFC1813, RFC3530, or RFC5661
have done is come up with sane semantics for how a NFS client is supposed to
recover from the above scenario. What do I do with things like
telldir()/seekdir() cookies? How do I recover my 'current position' in the
readdir() stream?
IOW: how do I fake up POSIX semantics to the applications?
Until the recovery question is answered, the Linux client will continue to
ignore the whole "cookie verifier" junk...
{quote}
[1]:
[https://linuxlists.cc/l/17/linux-nfs/t/2933109/readdir_from_linux_nfs4_client_when_cookieverf_is_no_longer_valid]
Here is a reference to cookieverf being removed from an Android kernel:
[https://gitlab.incom.co/CM-Shield/android_kernel_nvidia_shieldtablet/commit/c3f52af3e03013db5237e339c817beaae5ec9e3a]
was (Author: dannyman):
I found a comment that implies that Linux doesn't handle cookie verification:[1]
bq. This discussion comes up pretty much every time someone writes a new NFS
server and/or filesystem. The thing that neither RFC1813, RFC3530, or RFC5661
have done is come up with sane semantics for how a NFS client is supposed to
recover from the above scenario. What do I do with things like
telldir()/seekdir() cookies? How do I recover my 'current position' in the
readdir() stream?
bq. IOW: how do I fake up POSIX semantics to the applications?
bq.
bq. Until the recovery question is answered, the Linux client will continue to
ignore the whole "cookie verifier" junk...
[1]:
https://linuxlists.cc/l/17/linux-nfs/t/2933109/readdir_from_linux_nfs4_client_when_cookieverf_is_no_longer_valid
Here is a reference to cookieverf being removed from an Android kernel:
https://gitlab.incom.co/CM-Shield/android_kernel_nvidia_shieldtablet/commit/c3f52af3e03013db5237e339c817beaae5ec9e3a
> cookieverf mismatch error over NFS gateway on Linux
> ---------------------------------------------------
>
> Key: HDFS-13082
> URL: https://issues.apache.org/jira/browse/HDFS-13082
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: hdfs
> Affects Versions: 2.7.3
> Reporter: Dan Moraru
> Priority: Minor
>
> Running 'ls' on some directories over an HDFS-NFS gateway sometimes fails to
> list the contents of those directories. Running 'ls' on those same
> directories mounted via FUSE works. The NFS gateway logs errors like the
> following:
> 2018-01-29 11:53:01,130 ERROR org.apache.hadoop.hdfs.nfs.nfs3.RpcProgramNfs3:
> cookieverf mismatch. request cookieverf: 1513390944415 dir cookieverf:
> 1516920857335
> Reviewing
> hadoop-hdfs-project/hadoop-hdfs-nfs/src/main/java/org/apache/hadoop/hdfs/nfs/nfs3/RpcProgramNfs3.java
> suggested that these errors can be avoided by setting
> nfs.aix.compatibility.mode.enabled=true, and that is indeed the case. The
> documentation lists https://issues.apache.org/jira/browse/HDFS-6549 as a
> known issue, but also goes on to say that "regular, non-AIX clients should
> NOT enable AIX compatibility mode. The work-arounds implemented by AIX
> compatibility mode effectively disable safeguards to ensure that listing of
> directory contents via NFS returns consistent results, and that all data sent
> to the NFS server can be assured to have been committed." Server and client
> is this case are one and the same, running Scientific Linux 7.4.
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]