Skip to content

Complete Windows multiprocess WAL port#1

Closed
awakecoding wants to merge 3 commits into
mainfrom
windows-multiprocess-wal-support
Closed

Complete Windows multiprocess WAL port#1
awakecoding wants to merge 3 commits into
mainfrom
windows-multiprocess-wal-support

Conversation

@awakecoding
Copy link
Copy Markdown
Owner

Description

This completes the Windows port for the multiprocess WAL work introduced by tursodatabase#6236.

It updates the Windows IOCP backend so default database opens preserve legacy lock-on-open behavior while .tshm coordination files continue to honor OpenFlags::NoLock. It also fixes the multiprocess worker harness to advance pager IO correctly on StepResult::IO, enables the Windows backend in the CLI defaults, splits cross-platform regression coverage into its own target, and expands Windows CI coverage for the shared-WAL path.

Motivation and context

The shared WAL implementation was functionally available on Unix but incomplete on Windows. This change closes the Windows gap without regressing the .tshm coordination contract or non-Windows behavior.

Validation completed before opening this PR:

  • Windows native: turso_core multiprocess tests, turso_whopper regression_tests, CLI exact regression coverage, and multiprocess startup smoke.
  • Linux/WSL: focused cargo check coverage for turso_core, turso_whopper, and turso_cli, plus regression_tests_cross_platform and the restart regression that reuses persisted .tshm state.

Description of AI Usage

GitHub Copilot was used to review the branch scope, implement the Windows-specific runtime and test changes, and drive validation across Windows and WSL/Linux. The resulting code paths and test results were then verified in-repo with targeted cargo test and cargo check runs before opening this draft PR.

@awakecoding
Copy link
Copy Markdown
Owner Author

Closing this fork-local draft in favor of the upstream draft PR opened at tursodatabase/turso.

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