From 285ece01806f82aaa5a613188098adb8a50a91f0 Mon Sep 17 00:00:00 2001 From: Jernej Kos Date: Fri, 5 Feb 2021 11:46:23 +0100 Subject: [PATCH] e2e/runtime/txsource: Allow one straggler, reduce timeouts When long node restarts are enabled (e.g., nodes can be stopped for 10 min) it can happen that the backup worker is stopped together with one of the primary workers. Since we only have a single backup this will prevent discrepancy resolution and cause rounds to always fail. --- go/oasis-test-runner/scenario/e2e/runtime/txsource.go | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/go/oasis-test-runner/scenario/e2e/runtime/txsource.go b/go/oasis-test-runner/scenario/e2e/runtime/txsource.go index 41128b08298..1c7537f8e7e 100644 --- a/go/oasis-test-runner/scenario/e2e/runtime/txsource.go +++ b/go/oasis-test-runner/scenario/e2e/runtime/txsource.go @@ -437,10 +437,13 @@ func (sc *txSourceImpl) Fixture() (*oasis.NetworkFixture, error) { // One executor can be offline. f.Runtimes[1].Executor.GroupSize-- f.Runtimes[1].Executor.MinPoolSize-- + // Allow one straggler to handle the case where the backup and primary worker are offline + // at the same time. + f.Runtimes[1].Executor.AllowedStragglers = 1 // Lower proposer and round timeouts as nodes are expected to go offline for longer time. - f.Runtimes[1].TxnScheduler.ProposerTimeout = 5 - f.Runtimes[1].Executor.RoundTimeout = 15 + f.Runtimes[1].TxnScheduler.ProposerTimeout = 4 + f.Runtimes[1].Executor.RoundTimeout = 10 } if sc.nodeRestartInterval > 0 || sc.nodeLongRestartInterval > 0 {