Mercurial > hg
view tests/test-absorb-phase.t @ 49214:eca367970253 stable
run-tests: send the test result after freeing the channel
Sending the message about the test being "done" signals to the main thread that
a new test can be started. Before this changeset, we sent this signal before
freeing the channel, there is room for a race condition where a new test would
search for a channel before the old test freed the one it used.
This is an example of the failure it would produce:
https://foss.heptapod.net/mercurial/mercurial-devel/-/jobs/552404
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Tue, 24 May 2022 09:57:53 +0200 |
parents | 31dfa7dac4c9 |
children |
line wrap: on
line source
$ cat >> $HGRCPATH << EOF > [extensions] > absorb= > drawdag=$TESTDIR/drawdag.py > EOF $ hg init $ hg debugdrawdag <<'EOS' > C > | > B > | > A > EOS $ hg phase -r A --public -q $ hg phase -r C --secret --force -q $ hg update C -q $ printf B1 > B $ hg absorb -aq $ hg log -G -T '{desc} {phase}' @ C secret | o B draft | o A public