Skip to content

Bug: deterministic simulator stack overflow hides DB divergence #2214

Description

@yupme-bot

Deterministic repro. Happens 100% of runs.

Reproduction

cargo run --bin limbo_sim -- --seed 123 --maximum-time 20 --doublecheck --keep-files

Environment

Commit: 57a2e66d44da8c5a479d585e9217bdbbb958121c

Rust: rustc 1.88.0

Cargo: cargo 1.88.0

OS: Windows 10 x64

Observed Behavior

With seed 123 and --doublecheck, I consistently observe two problems:

ParseError("table affectionate_lacazeduthiers_27 already exists") appears twice (likely once per pass: main + doublecheck).

Shortly after, the process terminates with:

thread 'main' has overflowed its stack
(exit code 0xc00000fd, STATUS_STACK_OVERFLOW)

Notes

The ParseError suggests the doublecheck pass may not be starting from a clean state (or state is leaking between passes).
However, I haven’t confirmed whether the stack overflow is independent or triggered by error handling/logging.

Artifacts include:

  • seed123_full.txt
  • test.db
  • doublecheck.db
  • screenshot.png

Expected Behavior

Simulator should complete without stack overflow and report divergence cleanly.

seed123_bug_report.zip

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    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