From: Scott Kostyshak Date: Sun, 15 Nov 2020 22:40:02 +0000 (-0500) Subject: ctests: fix race condition for parallel testing X-Git-Tag: 2.4.0-alpha3~745 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=dbb72a37;p=lyx.git ctests: fix race condition for parallel testing The unicode tests would often fail when tested in parallel because we were not exporting to unique file names. From what I understand, a variant similar to the following race condition occurred: 1. Thread A exports to file blah.pdf. 2. Thread B exports to file blah.pdf. 3. Thread A confirms file blah.pdf exists. 4. Thread A deletes exported file blah.pdf to clean up. 5. Thread B fails to find file blah.pdf and reports a failure. --- diff --git a/development/autotests/export.cmake b/development/autotests/export.cmake index d2a03565ff..1384800317 100755 --- a/development/autotests/export.cmake +++ b/development/autotests/export.cmake @@ -74,7 +74,9 @@ if(format MATCHES "dvi|pdf") if(NOT _erg) message(FATAL_ERROR "Export failed while converting") endif() - set(result_file_name ${file}_${_ft}.${extension}) + # We only need "_${ENCODING}" for unicode tests (because multiple encodings + # are tested with the same format), but doesn't hurt to include for all. + set(result_file_name ${file}_${_ft}_${ENCODING}.${extension}) else() message(STATUS "Converting with perl ${Perl_Script}") set(LYX_SOURCE "${TempDir}/${file}.lyx")