[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Monotone-devel] Solaris breakage
From: |
Richard Levitte |
Subject: |
Re: [Monotone-devel] Solaris breakage |
Date: |
Tue, 24 Jul 2007 08:39:45 +0200 (CEST) |
In message <address@hidden> on Tue, 24 Jul 2007 16:22:02 +1000, William Uther
<address@hidden> said:
willu.mailingLists> Hi,
willu.mailingLists> Just taking a break from paper editing... I
willu.mailingLists> decided to look at the solaris breakage. It makes
willu.mailingLists> no sense to me at all.
Yup, I'm going nuts trying to understand what's happening...
willu.mailingLists>
willu.mailingLists> The test that is failing is
willu.mailingLists> "clone_warning_with_multiple_heads". The part of
willu.mailingLists> the test that is failing is where the checked out
willu.mailingLists> directory is removed after the failure - the
willu.mailingLists> directory is being left around. In particular,
willu.mailingLists> from the buildbot we get:
Question, are you getting the exact same error in a different Solaris
environment? I'd like to see a "second opinion", so to say. You see,
I'm wondering if zfs is coming into play here:
willu.mailingLists> mtn: choose one with 'mtn checkout -r<id>'
willu.mailingLists> mtn: error: could not remove
'/zfs_space/export/home/mtbldbot/slave-dir/full-sparc-solaris10-sunstudio11/build/tester_dir/clone_warning_with_multiple_heads/test_dir1':
Invalid argument
Especially the "Invalid argument" bullshit (sorry) gives me a number
of red flags. Could there be a special file in there that doesn't get
removed? Could it be that it was removed in a different manner? I've
no clue, I've never played with that file system...
willu.mailingLists> I thought this patch might help illuminate things:
willu.mailingLists>
willu.mailingLists> --- file_io.cc 358fb964dc42e7f936a136342b93bb3a4744d1b3
willu.mailingLists> +++ file_io.cc d91cbbab9f40622e4c264becb0e2067ee218738e
willu.mailingLists> @@ -269,6 +269,9 @@ do_remove_recursive(any_path const & p)
willu.mailingLists> i != subdirs.end(); i++)
willu.mailingLists> do_remove_recursive(p / *i);
willu.mailingLists>
willu.mailingLists> + if (!directory_empty(p))
willu.mailingLists> + W(F("When attempting to remove directory '%s', we were
unsuccessful removing all the files inside it.") % p);
willu.mailingLists> +
willu.mailingLists> do_remove(p.as_external());
willu.mailingLists> }
willu.mailingLists>
willu.mailingLists> but I'm wary of committing that as it will make
willu.mailingLists> failures very verbose and slow down every
willu.mailingLists> recursive remove.
If you're worried about verbosity (what is it with Unixly people and
verbosity?????), make it a debugging thingy, not a warning that get's
output always...
Cheers,
Richard
-----
Please consider sponsoring my work on free software.
See http://www.free.lp.se/sponsoring.html for details.
--
Richard Levitte address@hidden
http://richard.levitte.org/
"When I became a man I put away childish things, including
the fear of childishness and the desire to be very grown up."
-- C.S. Lewis