RFR: 8337283: configure.log is truncated when build dir is on different filesystem

Christoph Langer clanger at openjdk.org
Tue Jul 30 08:39:34 UTC 2024


On Fri, 26 Jul 2024 16:21:33 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

> I noticed that `build/$confname/configure.log` was truncated on some of my build nodes. Turns out, we are moving configure.log from tree root to that place a bit prematurely.
> 
> We move `configure.log` here:
> https://github.com/openjdk/jdk/blob/4f194f10a1481cdc9df4e6338f6cabd07a34c84c/make/autoconf/basic.m4#L594-L618
> 
> ...and that is called here:
> https://github.com/openjdk/jdk/blob/4bcb8f04ed3623da7c84dda28017f473cbc97e53/make/autoconf/configure.ac#L314-L321
> 
> Or, before we print configuration summary.
> 
> Now, this works most of the time by accident: when root dir and build dir are on the same filesystem, the file move does not interfere with inodes/FDs, and we are still able to write to the same file _after_ we moved. But if build dir is on _another_ filesystem, then we miss writing the configuration summary when file moves away.
> 
> Apparently, my systems fall into that trap, since build dir is on RAM disk.

Marked as reviewed by clanger (Reviewer).

-------------

PR Review: https://git.openjdk.org/jdk/pull/20356#pullrequestreview-2207039369


More information about the build-dev mailing list