tree removal issue with zfs on Blade 1500/PC rack server IDE disk
All systems tested are current as of beginning of the week I wrote this (patch state).
I have observed the following issue: when I try to remove with
rm -rf dir
a whole directory tree named dir, only the regular files will be removed on Solaris 10 u2 (2006/06) when doing so on a ZFS file system residing on an IDE disk, but not the sub directories it is okay, when doing the same command on a SCSI disk.
Details: the directory traversal is malfunctioning or out of sync with the IDE disk, I fear, because if I do the following afterwads
find dir -depth -exec rmdir {} \;
the remaining, now aside from sub directories empty directories are removed silently and successfully. And this is exactly okay when using the -depth option only, because this guarantees the "right" directory traversal, where the exec is applied only on the leaves first and afterwards on the higher nodes.
If I rm -rf as root it works too, but as normal user it doesn't, though the directory masks are okay (755 for the owning user trying to remove). The too generic error message is
rm: cannot determine if this is an ancestor of the current working directory
(in German(auf Deutsch): rm: Es kann nicht ermittelt werden, ob dies ein Vorg鋘ger des aktuellen Arbeitsverzeichnisses ist:)
and I fear too, that this is an outcome of the already described IDE/ZFS issue in Solaris 10. But it is the strangest thing when trying to remove a directory tree I ever happened to see on Unix in 15 years experience and a truely nasty bug.
Is this already fixed in OpenSolaris resp. Nevada and/or can it be expected, that the near Sol10u3 release will solve this issue in a satisfactorily manner? And SATA isn't also affected, is it?

