Skip to content

test: E2E sqlite3 CLI seeding has no busy timeout (flaky 'database is locked') #606

Closed

Description

@dborup

test-region-scope-approval-e2e.js failed on master (CI run 40205480480, E2E shard 3) with:

Error: stepping, database is locked (5)
test-region-scope-approval-e2e.js: FAIL — Error: Command failed: sqlite3 … INSERT INTO observer_neighbors(…)

The test seeds rows with the sqlite3 CLI (execFileSync('sqlite3', [env.db, statement]), line 137) while the ingestor may hold a write lock. The CLI has no busy timeout, so it fails at once instead of waiting.

Fix: give the CLI a busy timeout (for example ['-cmd', '.timeout 5000', env.db, statement]) and check other E2E/test helpers that shell out to sqlite3 against a live DB for the same pattern. Add a regression check (e.g. a static test that every sqlite3 CLI call in E2E helpers sets a timeout).

Activity

  1. dborup commented on Oct 25, 2026

    @dborup
    OwnerAuthor

    Fixed by #607 (merged as c682051a288ab30888bd8e443ad389a80dc3aafc).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions