Skip to content

MySQL/MariaDB adapter — deferred follow-ups #35

@ihistand

Description

@ihistand

The MySQL/MariaDB adapter shipped in 1.5.0 (PR #34) with a deliberately minimal surface: portable MySQL DDL (table CTAS, CREATE OR REPLACE VIEW, incremental ON DUPLICATE KEY UPDATE upsert), information_schema introspection, and EXPLAIN-based evaluate, validated against MySQL 8 + MariaDB 11.

These four items were scoped out of the MVP and tracked here as follow-ups (each can be split into its own issue when picked up):

  • mysql: {} config block — first-class engine/charset, secondary indexes, table options, and partitioning, parallel to postgres: {}. Today these require raw MySQL DDL in operations/post_operations. This is the largest item.
  • Materialized views — currently type: "view", materialized: true throws on MySQL (MySQL has no native matviews). Decide on an emulation strategy (table + scheduled refresh) or keep the explicit error.
  • COMMENT metadatadescription: / columns: compile but setMetadata is a no-op on MySQL; wire them to COMMENT ON/ALTER TABLE ... COMMENT and read them back via information_schema (mirrors the Postgres path).
  • introspect for MySQL sources — let MySQL be a named cross-warehouse source. Note the FDW bridge is Postgres-only today, so this needs a separate mechanism.

Context: PR #34, the design spec (sqlanvil-private/planning/specs/2026-06-17-mysql-mariadb-adapter-design.md), and the V2 roadmap umbrella #16. Authoring guidance documents all four as "deferred" in AGENTS.md / the sqlanvil-engineering-fundamentals skill.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions