Well, since the file hadn't been recently modified, I wasn't able to come up with any scenario that could apply. It looks more likely that the NetApp was sent an incorrect file handle (or didn't receive the correct one).
What level of consistency checking does NFS v2 over UDP provide?
"Consistency checking" in what sense?
Linux 2.1.x (x > 42) also has a directory/file name cache that hashes names to "dentries" that include a pointer to the inode structure.
What value of "x" is the value for the system on which you saw this problem?
A quick look at 2.1.95 (as per mail I just sent, although not to the list) *seems* to indicate that in this *particular* case it'll properly re-do a lookup if the inode it got back from a directory name lookup cache (DNLC) lookup happened to refer to something that, when it did a "revalidate inode" operation, got an ESTALE - and, from the kernel messages, that appeared to be what happened.
However, an earlier kernel might not have done the right thing.