Bug 20999 – autotester for Darwin_64_64 randomly times out and fails
Status
RESOLVED
Resolution
WONTFIX
Severity
normal
Priority
P3
Component
dmd
Product
D
Version
D2
Platform
x86_64
OS
Mac OS X
Creation time
2020-07-01T08:43:57Z
Last change time
2023-01-17T10:22:46Z
Keywords
TestSuite
Assigned to
No Owner
Creator
Walter Bright
Comments
Comment #0 by bugzilla — 2020-07-01T08:43:57Z
What it should do instead is retry it at least once. This one passed when I manually deprecated it so it would retry.
Here's the log:
-------------------------------------------------
HOST_DC=/Users/braddr/sandbox/at-client/release-build/dmd-2.079.0/osx/bin/dmd
make -C src -f posix.mak auto-tester-build ENABLE_RELEASE=1
posix.mak:75: ========== Use HOST_DMD instead of HOST_DC ==========
/Users/braddr/sandbox/at-client/release-build/dmd-2.079.0/osx/bin/dmd -of../generated/build -g build.d
Warning: Syncing file access because of OSX!
../generated/build HOST_DMD="/Users/braddr/sandbox/at-client/release-build/dmd-2.079.0/osx/bin/dmd" CXX="c++" OS=osx BUILD=release MODEL=64 AUTO_BOOTSTRAP="" DOCDIR="" STDDOC="" DOC_OUTPUT_DIR="" MAKE="make" --called-from-make auto-tester-build
(TX) VERSION
(TX) SYSCONFDIR
(DC) BACKEND
==== Toolchain Information ====
SYSTEM (uname): Darwin macair 15.6.0 Darwin Kernel Version 15.6.0: Thu Jun 21 20:07:40 PDT 2018; root:xnu-3248.73.11~1/RELEASE_X86_64 x86_64
MAKE (make): GNU Make 3.81
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
This program built for i386-apple-darwin11.3.0
SHELL (/bin/sh): GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin15)
Copyright (C) 2007 Free Software Foundation, Inc.
HOST_DMD (/Users/braddr/sandbox/at-client/release-build/dmd-2.079.0/osx/bin/dmd): DMD64 D Compiler v2.079.0
Copyright (C) 1999-2018 by The D Language Foundation, All Rights Reserved written by Walter Bright
HOST_CXX (c++): Apple LLVM version 8.0.0 (clang-800.0.42.1)
Target: x86_64-apple-darwin15.6.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
ld (ld): @(#)PROGRAM:ld PROJECT:ld64-274.2
configured to support archs: i386 x86_64 x86_64h armv6 armv7 armv7s armv7m armv7k arm64 (tvOS)
LTO support using: LLVM version 8.0.1
gdb (gdb): <Not available>
==== Toolchain Information ====
(DC) LEXER
(TX) DMD_CONF
(GIT) DLANG/TOOLS
(CXX) CXX-FRONTEND
(RUN) checkwhitespace
(DC) DMD
(DMD) CXX-UNITTEST
(RUN) CXX-UNITTEST
Success
/Applications/Xcode.app/Contents/Developer/usr/bin/make -C src -f posix.mak all
posix.mak:75: ========== Use HOST_DMD instead of HOST_DC ==========
../generated/build HOST_DMD="/Users/braddr/sandbox/at-client/release-build/dmd-2.079.0/osx/bin/dmd" CXX="c++" OS=osx BUILD=release MODEL=64 AUTO_BOOTSTRAP="" DOCDIR="" STDDOC="" DOC_OUTPUT_DIR="" MAKE="/Applications/Xcode.app/Contents/Developer/usr/bin/make" --called-from-make dmd
timed out after 1800 seconds, step failed
Comment #1 by dlang-bugzilla — 2020-08-05T10:58:25Z
This sucks, it looks like it's hitting a deadlock right away. Might indicate a real race condition somewhere. I think in case of timeout, we should print the stack trace of all threads/processes, or something like that.
Comment #2 by moonlightsentinel — 2020-08-05T14:52:14Z
(In reply to Vladimir Panteleev from comment #1)
> This sucks, it looks like it's hitting a deadlock right away. Might indicate
> a real race condition somewhere. I think in case of timeout, we should print
> the stack trace of all threads/processes, or something like that.
IIRC it's a file locking issue somewhere inside phobos/the system library triggered by the second invocation of `build.d`. I implemented a workaround when we finalized the transition to `build.d` which apparently stopped working some time ago.
I'll try to find a better solution.