Part of #54.
Goal
Complete the MySQL dialect entry point and bind approved definitions to a host-owned common Drizzle MySQL database.
Change
- Implement
bindMysqlStore, DrizzleMysqlBindingError, Oracle MySQL version and engine checks, active transaction and InnoDB probes, Statement conversion, result normalization, Collection operations, candidate-key selection, stored-value readback, root mutation transactions, and structured conflict mapping.
- Preserve the exact MySQL Drizzle result type and the approved literal or runtime transaction return types.
- Compose Thread definitions through the existing generic
createThreadStore seam.
Acceptance
- All 28 MySQL-focused scenarios pass.
- Base Store, SQL Statement, SQL Store, Transaction Store, combined SQL/Collection transaction, and plain plus transactional Core Runtime conformance pass.
- Scheduled Job composition and a direct Drizzle Kit export smoke test pass.
- Oracle MySQL 8.4+ is accepted; incompatible engines and unsafe key or table paths reject exactly as specified.
- The adapter uses only public Drizzle APIs, creates no client, performs no DDL, and has no MySQL runtime Store tier or Thread binder.
- Documentation, applicable changeset, focused Node.js and Bun checks, and
pnpm run verify pass.
Source authority
Non-goals
No MariaDB or MySQL-compatible promise, native driver binder, host index creation, migration, preparation, streaming, batching, cancellation, or session-lock support.
Part of #54.
Goal
Complete the MySQL dialect entry point and bind approved definitions to a host-owned common Drizzle MySQL database.
Change
bindMysqlStore,DrizzleMysqlBindingError, Oracle MySQL version and engine checks, active transaction and InnoDB probes, Statement conversion, result normalization, Collection operations, candidate-key selection, stored-value readback, root mutation transactions, and structured conflict mapping.createThreadStoreseam.Acceptance
pnpm run verifypass.Source authority
Non-goals
No MariaDB or MySQL-compatible promise, native driver binder, host index creation, migration, preparation, streaming, batching, cancellation, or session-lock support.