Xref: utzoo comp.unix.ultrix:6310 comp.protocols.nfs:1810 Path: utzoo!utgpu!watserv1!watmath!att!bellcore!uunet!samsung!umich!dgsi!brian From: brian@cimage.com (Brian Kelley) Newsgroups: comp.unix.ultrix,comp.protocols.nfs Subject: Ultrix 4.1 NFS bug Message-ID: <1991Feb21.172023.19905@cimage.com> Date: 21 Feb 91 17:20:23 GMT Organization: Cimage Corp, Ann Arbor, MI Lines: 71 We seem to have found a bug in the Ultrix (RISC) 4.1 NFS. I'm not an NFS expert, so if this is a feature, please clue me in. Ultrix NFS seems to cache inodes (at least that's what I would call it). Given: Filesystem /c2 is remotely NFS mounted from fileserver dgsi. euler is a Sun Sparc which NFS mounts /c2. fifo is a DecSystem 5400 which also NFS mounts /c2. On fifo, create a file on /c2/tmp: fifo>touch /c2/tmp/foo.dec On euler, do the same: euler>touch /c2/tmp/foo.sun From both hosts, an ls -l /c2/tmp/foo.* looks the same: -rw-r--r-- 1 brian 0 Feb 21 12:02 foo.dec -rw-r--r-- 1 brian 0 Feb 21 12:02 foo.sun Now, on the Sun, I do the following: euler>/usr/5bin/touch 01010101 /c2/tmp/foo.sun euler>ls -l /c2/tmp/foo.* -rw-r--r-- 1 brian 0 Feb 21 12:02 foo.dec -rw-r--r-- 1 brian 0 Jan 1 01:01 foo.sun Looks good. But when I do an ls -l /c2/tmp/foo.* from the DEC: fifo>ls -l /c2/tmp/foo.* -rw-r--r-- 1 brian 0 Feb 21 12:02 /c2/tmp/foo.dec -rw-r--r-- 1 brian 0 Feb 21 12:02 /c2/tmp/foo.sun The DEC machine is wrong. It is caching the inode(?). And then: fifo>touch 01010101 foo.dec fifo>ls -l foo.* -rw-r--r-- 1 brian 0 Feb 21 12:02 foo.dec -rw-r--r-- 1 brian 0 Feb 21 12:02 foo.sun Gee, that didn't seem to work. And bouncing back over to the Sun: euler>ls -l foo.* -rw-r--r-- 1 brian 0 Jan 1 01:01 foo.dec -rw-r--r-- 1 brian 0 Jan 1 01:01 foo.sun So the touch command on the DEC did change the inode, but even that wasn't enough to invalidate the cache. Yuck!! Looks like a bug to me. For software development with NFS and make, it causes some pain. Or is something else happening? -Brian --- brian@cimage.com Brought to you by Super Global Mega Corp .com