[ET Trac] [Einstein Toolkit] #1864: Cactus build fails on file systems that do not update timestamps all the time
Einstein Toolkit
trac-noreply at einsteintoolkit.org
Sun Mar 20 14:52:31 CDT 2016
#1864: Cactus build fails on file systems that do not update timestamps all the
time
--------------------+-------------------------------------------------------
Reporter: rhaas | Owner:
Type: defect | Status: new
Priority: major | Milestone:
Component: Cactus | Version: development version
Keywords: |
--------------------+-------------------------------------------------------
Ian and I recently ran into an issue caused by a particular file system
(NFS v4 and also BeeGFS) not updating the file modification time when
doing this:
{{{
: >make.checked
}}}
which is what the build system uses (since
[https://bitbucket.org/cactuscode/cactus/commits/0779c17697d3b4a254065c10836770e355071f41
0779c17697d3b4a254065c10836770e355071f41] "Cactus: Replace "echo" by ":"
in makefile" Thu Nov 27 16:35:13 2014 -0500) to update the marker files
once a directory is finished building. While such a behaviour is not POSIX
compliant (https://bugzilla.kernel.org/show_bug.cgi?id=6127), we'd still
want to work around it.
The simplest solution seems to me to revert
[https://bitbucket.org/cactuscode/cactus/commits/0779c17697d3b4a254065c10836770e355071f41
0779c17697d3b4a254065c10836770e355071f41] and use
{{{
echo "" >make.checked
}}}
again. Erik: since you made the change, would you see any downside to
reverting it?
While investigating this Ian also found that some file systems only offer
1 second granularity in their timestamps (eg ext3 but also possibly XFS
and NFS) which can negatively affect make if a rule takes less than a
second to complete. See https://savannah.gnu.org/bugs/?40056#comment0 and
https://www.gnu.org/software/autoconf/manual/autoconf-2.61/html_node
/Timestamps-and-Make.html . The most conservative approach would be to
(arrange for) {{{sleep 1}}} to execute after each make recipe.
--
Ticket URL: <https://trac.einsteintoolkit.org/ticket/1864>
Einstein Toolkit <http://einsteintoolkit.org>
The Einstein Toolkit
More information about the Trac
mailing list