Merge branch 'ps/reftable-concurrent-writes'
Test fix. * ps/reftable-concurrent-writes: t0610: work around flaky test with concurrent writersmaint
commit
b1c6ed40cd
|
@ -450,15 +450,22 @@ test_expect_success 'ref transaction: retry acquiring tables.list lock' '
|
||||||
)
|
)
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'ref transaction: many concurrent writers' '
|
# This test fails most of the time on Windows systems. The root cause is
|
||||||
|
# that Windows does not allow us to rename the "tables.list.lock" file into
|
||||||
|
# place when "tables.list" is open for reading by a concurrent process.
|
||||||
|
test_expect_success !WINDOWS 'ref transaction: many concurrent writers' '
|
||||||
test_when_finished "rm -rf repo" &&
|
test_when_finished "rm -rf repo" &&
|
||||||
git init repo &&
|
git init repo &&
|
||||||
(
|
(
|
||||||
cd repo &&
|
cd repo &&
|
||||||
# Set a high timeout such that a busy CI machine will not abort
|
# Set a high timeout. While a couple of seconds should be
|
||||||
# early. 10 seconds should hopefully be ample of time to make
|
# plenty, using the address sanitizer will significantly slow
|
||||||
# this non-flaky.
|
# us down here. So we are aiming way higher than you would ever
|
||||||
git config set reftable.lockTimeout 10000 &&
|
# think is necessary just to keep us from flaking. We could
|
||||||
|
# also lock indefinitely by passing -1, but that could
|
||||||
|
# potentially block CI jobs indefinitely if there was a bug
|
||||||
|
# here.
|
||||||
|
git config set reftable.lockTimeout 300000 &&
|
||||||
test_commit --no-tag initial &&
|
test_commit --no-tag initial &&
|
||||||
|
|
||||||
head=$(git rev-parse HEAD) &&
|
head=$(git rev-parse HEAD) &&
|
||||||
|
|
Loading…
Reference in New Issue