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

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions