# HG changeset patch # User Pierre-Yves David # Date 2023-02-18 00:21:51 # Node ID 889d2a2e9326b8476f307b38488cd93d498c7084 # Parent ca9d65d69c274551d46770af2d8aa7012e24d356 test-chg: use a different log to avoid flakyness The test was deleting the log file to start anew. However a trailing working process might still be alive at this time, and recreate the very same log on exit. We see the trace of such worker in the expected content of server.log (see the trace modified by this patch). This is flaky because we don't know *when* the worker will write to the file and there is a race with the `hg init cached` command. A much simpler and reliable way to start anew without having such race is… to write to a different log file. No reuse β†’ no conflict, no conflict β†’ no race, no race β†’ no flakiness. diff --git a/tests/test-chg.t b/tests/test-chg.t --- a/tests/test-chg.t +++ b/tests/test-chg.t @@ -352,11 +352,10 @@ remove foo repository cache ---------------- - $ rm log/server.log* $ cp $HGRCPATH.unconfigured $HGRCPATH $ cat <<'EOF' >> $HGRCPATH > [cmdserver] - > log = $TESTTMP/log/server.log + > log = $TESTTMP/log/server-cached.log > max-repo-cache = 1 > track-log = command, repocache > EOF @@ -420,9 +419,7 @@ shut down servers and restore environmen check server log: - $ cat log/server.log | filterlog - YYYY/MM/DD HH:MM:SS (PID)> worker process exited (pid=...) - YYYY/MM/DD HH:MM:SS (PID)> worker process exited (pid=...) (?) + $ cat log/server-cached.log | filterlog YYYY/MM/DD HH:MM:SS (PID)> init cached YYYY/MM/DD HH:MM:SS (PID)> id -R cached YYYY/MM/DD HH:MM:SS (PID)> loaded repo into cache: $TESTTMP/cached (in ...s)