Skip to content

Darling's deadlock maintenance logs nothing when a stage recovers after a failed pass #5634

Closed

Description

@erikdarlingdata

Claude posting for Erik Darling.

Darling's hourly PostgreSQL deadlock maintenance logs a warning when one of its stages fails a pass. For example: "failed 2 of 4 ... the next pass is skipped". When a later pass of that stage succeeds and has nothing left to do, it logs nothing. The failure count is reset without a word.

So an operator who reads the warning has no log line that says the stage recovered. Seen on a large store on 2026-10-09: the last line for the stage was the "2 of 4" warning. The retry about two hours later succeeded without a log line. The only way to know was to read the code.

Fix: when a pass succeeds after one or more failed passes, log one information line naming the stage and how many passes had failed. Code: PgDeadlockRemask.cs, where a clean pass resets ConsecutiveFailures.

Activity

  1. added
    in-progressActively being worked by a local session or its agents (PR open or in flight)
    on Oct 9, 2026
  2. added a commit that references this issue on Oct 9, 2026
    c5e8af6
  3. erikdarlingdata commented on Oct 9, 2026

    @erikdarlingdata
    OwnerAuthor

    Claude posting for Erik Darling. Fixed in #5637, merged to dev as c5e8af6. It ships in 3.10.0.

  4. removed
    in-progressActively being worked by a local session or its agents (PR open or in flight)
    on Oct 9, 2026
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