Skip to content

test(database): verify public service errors and deadlines - #97

Merged
nick2781 merged 4 commits into
mainfrom
test/database-failure-controls
Oct 20, 2026
Merged

nick2781 merged 4 commits into
mainfrom
test/database-failure-controls

Conversation

@nick2781

@nick2781 nick2781 commented Oct 20, 2026 •

Copy link
Copy Markdown
Member

Changes

Add independently runnable C++ acceptance tests for the public coroutine-based Redis and MySQL plugins. The tests exercise authentication failures, MySQL TLS trust rejection, server-observed slow commands, client deadlines and explicit recovery through the public connection pools. Independent observer connections establish that slow commands reached the server before deadline assertions; bounded observations reject duplicate or reappearing slow sessions.

The existing basic service cases remain available. Failure scenarios require explicit runner modes and disposable authenticated services; they do not run against an unspecified database or during ordinary offline regression tests.

Validation

At candidate a4dd1aaf, integrated with accepted main 4c068d85:

  • Local Redis 7.4.2 and MySQL 8.4.11: both failure modes and existing public-service acceptance passed.
  • Both failure modes passed under AddressSanitizer and UndefinedBehaviorSanitizer without diagnostics; leak detection was disabled.
  • check-database, TLS-disabled compilation, whole-project clang-format 18 checks, shell syntax and git diff --check passed.
  • Disposable services shut down successfully; raw evidence and machine details remain local.

These results cover the listed macOS scenarios. Explicit cancellation, server restart, Redis TLS, shared-library unload and deployment capacity remain separate acceptance work. The Linux GCC run exposed an internal compiler error on braced Redis arguments across coroutine awaits. Materialize owning command objects before awaiting; all assertions remain unchanged. The corrected source passed the listed local and real-service checks; Linux GCC and the complete hosted matrix must still pass before merging.

Base automatically changed from test/public-database-services to main October 20, 2026 01:59
@nick2781
nick2781 marked this pull request as ready for review October 20, 2026 03:10
@nick2781
nick2781 enabled auto-merge October 20, 2026 03:10
@nick2781
nick2781 added this pull request to the merge queue Oct 20, 2026
Merged via the queue into main with commit a43906c Oct 20, 2026
8 checks passed
@nick2781
nick2781 deleted the test/database-failure-controls branch October 20, 2026 04:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant