docs(experiment): oliphaunt/pglite-oxide as a lightweight dev-mode database (WIN-2130)#9967
Draft
rubenfiszel wants to merge 1 commit into
Draft
Conversation
Deploying windmill with
|
| Latest commit: |
8e7c1ce
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://40b02100.windmill.pages.dev |
| Branch Preview URL: | https://ruben-win-2130-experiment-ol.windmill.pages.dev |
3 tasks
Contributor
Author
|
The migration-bootstrap fix in this PR has been broken out as a standalone, independently-mergeable PR: #9970. That's the durable, broadly-useful change (it also helps connection-constrained managed Postgres / PgBouncer) and can merge on its own. This PR (#9967) remains the full WIN-2130 experiment — the |
938d85a to
30f9bdb
Compare
… (WIN-2130) Standalone dev/embedded-db harness (boots embedded pglite Postgres, execs windmill against it; plus a schema-compat probe) and a write-up of the experiment. The enabling migration-bootstrap fix landed separately in #9970 (now on main). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
30f9bdb to
8e7c1ce
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The WIN-2130 experiment: can Windmill run against
oliphaunt/pglite-oxide— embedded Postgres 17.5 (WASIX, no Docker, no install) — as a lightweight dev mode?Yes. With the migration-bootstrap fix (merged separately in #9970, now on
main), a full Windmill server+worker boots on the embedded single-connection database and runs scripts and flows:This PR is now just the experiment — the enabling code fix has landed on its own. It adds:
docs/experiments/oliphaunt-lightweight-dev-mode.md— the write-up: the single-connection ≡max_connections=1insight, why the runtime needs only one connection, the three migration-bootstrap sites that didn't, the fix (fix(migrations): run bootstrap housekeeping on the migrator's held connection #9970), caveats, and how to reproduce/isolate.dev/embedded-db/— standalone harness (deliberately not a backend-workspace member; it pulls the heavy wasmer/alpha-pinned tree that must not leak into the backend lockfile):wm-embedded-db— boots embedded pglite, exportsDATABASE_URL, execs a child (e.g. the windmill binary).schema-compat— applies Windmill's full 1182-migration set on a single connection (~950 ms) to prove schema compatibility.Cargo.lockwith the requiredvirtual-net = 0.702.0-alpha.3pin (elsewasmer-wasixwon't compile).It is an experiment / build-it-yourself dev tool, not a release artifact (
publish = false): pglite-oxide 0.5.1 pins alpha wasmer crates and is 32-bit/single-connection, so it's not something to ship in a supported release yet.Caveats
uuid-osspis the only extension pglite lacks and Windmill doesn't need it (already stripped inOVERRIDDEN_MIGRATIONS; schema usesgen_random_uuid()).Test plan
cd dev/embedded-db && cargo run --bin schema-compat→ all 1182 migrations apply on one connection in ~950 ms.cargo run -- ../../backend/target/debug/windmill(windmill frommain, incl. fix(migrations): run bootstrap housekeeping on the migrator's held connection #9970) → migrations apply, server+worker boot, a script and a 2-step flow complete onPostgreSQL 17.5 on wasm32-unknown-wasix.Fixes WIN-2130. Depends on #9970 (merged).
🤖 Generated with Claude Code