Skip to content

Add pool poison recovery integration coverage #539

Description

@lodyai

Summary

Milestone 4 added direct unit coverage for client::pool::sync::lock_or_recover, but the deeper integration contract should be tested separately: a panic during pool scheduler or slot bookkeeping recovery should not permanently corrupt subsequent scheduler behaviour.

Acceptance criteria

  • Add an integration or module-level test that simulates poison during a waiter-table or slot-bookkeeping update.
  • Recover through lock_or_recover.
  • Run the next scheduler or slot operation and assert consistency is re-established: waiter counts remain coherent, fairness order is preserved where applicable, and no waiter is lost.
  • Keep the test focused on pool bookkeeping; do not apply poison recovery to connection, protocol, lifecycle, serializer, or user state.

Context

This was identified during the CodeRabbit review for PR #534 while implementing the code-base audit plan in docs/execplans/code-base-audit-2026-06-05.md.

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