Flaky test runs on macOS
I'm not sure this is the appropriate place to report this, but I've been getting a lot of flaky test runs with the new 23.9.9 ECL release on macOS (via github actions). The errors usually include thread_suspend failed at some point in the test run:
/Users/runner/.roswell/bin/run-fiveam
thread_suspend failed
An error occurred during initialization:
COMPILE-FILE-ERROR while compiling #<cl-source-file "fiveam" "utils">.
An error occurred during initialization:
Stream cannot be closed
C library explanation: Invalid argument..
[package trivial-with-current-source-form]........
thread_suspend failed
An error occurred during initialization:
Error code 6 when executing
(EXT:RUN-PROGRAM "gcc" ("-o"
"/Users/runner/.cache/common-lisp/ecl-23.9.9-macosx-x64/Users/runner/work/cl-duckdb/cl-duckdb/.qlot/dists/ultralisp/software/scymtym-esrap-20230426192616/src/conditions-tmpTBLAFORI.fas"
"-L/Users/runner/.roswell/impls/x86-64/darwin/ecl/23.9.9/lib/"
"-bundle"
"/private/var/folders/24/8k48jl6d249_n_qfxwsl6xvm0000gn/T/eclinitX4P5ps.o"
"/Users/runner/.cache/common-lisp/ecl-23.9.9-macosx-x64/Users/runner/work/cl-duckdb/cl-duckdb/.qlot/dists/ultralisp/software/scymtym-esrap-20230426192616/src/conditions.o"
"-Wl,-rpath,/Users/runner/.roswell/impls/x86-64/darwin/ecl/23.9.9/lib/"
"-lecl" "-lgmp" "-lffi" "-lpthread" "-lm")):
.
[package esrap].
Error: Process completed with exit code 1.
/Users/runner/.roswell/bin/run-fiveam
Unhandled QUICKLISP-CLIENT:SYSTEM-NOT-FOUND in thread #<SB-THREAD:THREAD "main thread" RUNNING
{1004788003}>:
System "duckdb/test" not found
Backtrace for: #<SB-THREAD:THREAD "main thread" RUNNING {1004788003}>
0: (SB-DEBUG::DEBUGGER-DISABLED-HOOK #<QUICKLISP-CLIENT:SYSTEM-NOT-FOUND {1003DA9DF3}> #<unused argument> :QUIT T)
1: (SB-DEBUG::RUN-HOOK SB-EXT:*INVOKE-DEBUGGER-HOOK* #<QUICKLISP-CLIENT:SYSTEM-NOT-FOUND {1003DA9DF3}>)
2: (INVOKE-DEBUGGER #<QUICKLISP-CLIENT:SYSTEM-NOT-FOUND {1003DA9DF3}>)
3: (CERROR "Try again" QUICKLISP-CLIENT:SYSTEM-NOT-FOUND :NAME "duckdb/test")
4: ((LABELS QUICKLISP-CLIENT::RECURSE :IN QUICKLISP-CLIENT::COMPUTE-LOAD-STRATEGY) "duckdb/test")
5: (QL-DIST::CALL-WITH-CONSISTENT-DISTS #<FUNCTION (LAMBDA NIL :IN QUICKLISP-CLIENT::COMPUTE-LOAD-STRATEGY) {1003D9940B}>)
6: (QUICKLISP-CLIENT::COMPUTE-LOAD-STRATEGY "duckdb/test")
7: (QUICKLISP-CLIENT::AUTOLOAD-SYSTEM-AND-DEPENDENCIES "duckdb/test" :PROMPT NIL)
8: ((:METHOD QL-IMPL-UTIL::%CALL-WITH-QUIET-COMPILATION (T T)) #<unused argument> #<FUNCTION (FLET QUICKLISP-CLIENT::QL :IN QUICKLISP-CLIENT:QUICKLOAD) {1003D9929B}>) [fast-method]
9: ((:METHOD QL-IMPL-UTIL::%CALL-WITH-QUIET-COMPILATION :AROUND (QL-IMPL:SBCL T)) #<QL-IMPL:SBCL {1004EC4713}> #<FUNCTION (FLET QUICKLISP-CLIENT::QL :IN QUICKLISP-CLIENT:QUICKLOAD) {1003D9929B}>) [fast-method]
10: ((:METHOD QUICKLISP-CLIENT:QUICKLOAD (T)) ("duckdb/test") :PROMPT NIL :SILENT NIL :VERBOSE NIL) [fast-method]
11: (QL-DIST::CALL-WITH-CONSISTENT-DISTS #<FUNCTION (LAMBDA NIL :IN QUICKLISP-CLIENT:QUICKLOAD) {1003D8C7BB}>)
12: (MAIN "-e" "t" "-l" "duckdb/test" ":duckdb")
Running the tests again from scratch seems to solve the issue. I'm reporting this here since it appeared with the new release. It doesn't seem to be related to the project (cl-duckdb) since it happens even before running the project-specific tests. I understand this might be difficult to reproduce based on this, so please let me know if I can provide additional information.