Skip to content

test: feature_llmq_signing.py --spork21 intermittent timeout in wait_for_sigs #7255

@thepastaclaw

Description

@thepastaclaw

Summary

feature_llmq_signing.py --spork21 intermittently fails with a wait_until() timeout in wait_for_sigs(). The failure is timing-dependent and not reproducible — the same test passes on develop and the non---spork21 variant passes consistently on the same CI run.

Failure Details

Test: feature_llmq_signing.py --spork21
Error: AssertionError: Predicate '' not true after N seconds
Location: feature_llmq_signing.py:111wait_for_sigs(True, False, True, 15) (15s timeout)
Traceback:

File "feature_llmq_signing.py", line 111, in run_test
    wait_for_sigs(True, False, True, 15)
File "feature_llmq_signing.py", line 60, in wait_for_sigs
    self.wait_until(lambda: check_sigs(hasrecsigs, isconflicting1, isconflicting2), timeout = timeout)
AssertionError: Predicate '' not true after <timeout> seconds

Retry behavior: Failed all 3 CI retry attempts (attempt 1: 128s, attempt 2: 114s, attempt 3: 131s)

CI Log Links

Evidence of Flakiness

  1. The non---spork21 variant (feature_llmq_signing.py) passed on the exact same CI run
  2. The --spork21 variant passed on develop after the PR was merged (CI run 23505322590)
  3. PR fix: register shareman recovery interface in ActiveContext #7244 only modifies src/active/context.cpp (adds shareman->RegisterRecoveryInterface()) — no test files or LLMQ signing logic changed

Root Cause Analysis

The 15-second timeout in wait_for_sigs() appears insufficient for the multiprocess test environment under CI load. The --spork21 variant likely exercises a slightly different code path that takes marginally longer, hitting the timeout under resource contention.

Suggested Fix

Consider increasing the timeout in wait_for_sigs() calls within the --spork21 path, or using self.options.timeout_factor to scale timeouts appropriately for CI environments.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions