Bill and all:
This is one of those Twilight-Zone problems.
We use a set of directory layout conventions for numerous different
projects that involves using a symbolic link from a set of off-web,
project-related directories to connect with the appropriate
sub-web-tree. What's relevant is that this always results in swish-e
being run against a filesystem tree whose root is a symbolic link, eg.
swish-e -i /usr/local/projects/anncon/httpd
which without the symlink would be
swish-e -i /var/www/html/anncon/
because /usr/local/projects/anncon/httpd -> /var/www/html/anncon
Ordinarily, this works fine, and has for years. Now I've created a new,
linked structure of this kind, and it doesn't work at all. Indexing via
the "real" path (/var/www/html/anncon) works fine; indexing via the
symlink doesn't-- it acts as though there are no files in the target
directory (or that it can't access them). The only difference seems to
be that (for reasons we're still investigating) the I
extended-filesystem attribute is set on this symlink but not on any of
the other similar symlinks associated with other projects (these similar
setups all work fine, just as they always have). Stracing swish-e is
unhelpful; a call to lstat on the symlink seems to succeed fine.
The chattr man page happily states that:
The 'I' attribute is used by the htree code to indicate that a directory
is behind indexed using hashed trees. It may not be set or reset using
*chattr <http://annys.eines.info/cgi-bin/man/man2html?1+chattr>*(1),
although it can be displayed by *lsattr
<http://annys.eines.info/cgi-bin/man/man2html?1+lsattr>*(1).
We have no idea why the system should have set the "I" bit on this
symlink, uniquely among all symlinks ever created on the machine, but
we're investigating that. We have tentatively concluded that it has
been cursed by the Giant Space Ants, but will no doubt revise our
conclusions once we figure out what the hell use the "I" attribute might
actually have for someone other than the Giant Space Ants. The
question, though, is why it should then break swish-e.
Obviously, there are 10E8 workarounds for this but now it's a grudge
match. Any takers?
t.
--
+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+
Thomas R. Bruce (trb2@cornell.edu)
Director, Legal Information Institute
Cornell Law School
http://www.law.cornell.edu/
"We had a knob. All we had to do was turn it."
-- Les Paul
+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+
*********************************************************************
Due to deletion of content types excluded from this list by policy,
this multipart message was reduced to a single part, and from there
to a plain text message.
*********************************************************************
Received on Mon Jun 20 08:38:50 2005