Skip to content

v1.11.0-ce — MySQL wire protocol + introspection

Released: 2026-07-18 · Tag: v1.11.0-ce · Docker: synapcores/community:v1.11.0-ce

v1.10.0 made SynapCores speak the MySQL dialect. v1.11.0 makes it answer the phone like MySQL: a wire-protocol listener so existing apps, IDEs, and BI tools connect with just a connection string — no SDK, no adapter, no query rewrite — and GENERATE() / EMBED() / AGENT_RUN() run inside every one of them.

MySQL wire protocol (S3)

A new front-end bridges MySQL clients to the same live execution path the REST API uses. Verified against JDBC / Connector-J (Metabase, DBeaver, DataGrip), Node mysql2, PHP mysqli, mysql-connector-python, and the mysql CLI.

Enable it in gateway.toml (off by default, loopback bind):

[mysql_wire]
enabled = true
bind    = "127.0.0.1"
port    = 3306

Then connect out of the box with the admin credentials printed at first boot — no API key required:

mysql -h 127.0.0.1 -P 3306 -u admin -p<admin-password>

For scoped/non-admin access, create an API key (on v1.11.0+) and use it as the password. Authentication is mysql_native_password.

JDBC example (Metabase / DBeaver / any Java app):

jdbc:mysql://127.0.0.1:3306/?useSSL=false&allowPublicKeyRetrieval=true
  user=admin  password=<admin-password>

MySQL introspection (S4)

So IDEs and ORMs browse the schema unmodified:

  • SHOW CREATE TABLE (MySQL-faithful DDL), SHOW INDEX / KEYS, SHOW [FULL] COLUMNS, SHOW TABLE STATUS, SHOW FULL TABLES
  • information_schema.{SCHEMATA, STATISTICS, TABLE_CONSTRAINTS, VIEWS, ROUTINES, TRIGGERS, PARTITIONS}

Why it matters

Your MySQL-shaped tools become SynapCores clients on day one: point Metabase or Grafana at the columnstore for analytics, browse in DBeaver, keep mysqldump for egress. The SQL underneath is already MySQL-faithful (v1.10.0), so exposing the wire is the seamless- migration lever.

Validation

On the published artifact: feature_validator 88/88 (native REST/SDK path unchanged), wire_smoke 17/17, MySQL-parity through the wire 56/56, driver matrix 6/6 (incl. JDBC), OOB admin login, objdump ZMM=0, non-AVX-512 canary EMBED with no illegal-instruction.

Known limitation

mysql-connector-python server-side prepared statements under high connection concurrency may rarely (~2%) return a spurious 1210 — a timing edge in the protocol library layer; retry-safe, and JDBC/Connector-J, PHP, Node, Go, and the mysql CLI are unaffected.

Install

docker pull synapcores/community:v1.11.0-ce
# or:
curl -fsSL https://get.synapcores.com | SYNAPCORES_VERSION=v1.11.0-ce sh

Drop-in from v1.10.0 — no schema migration. The wire listener is opt-in; the native REST/WebSocket/SDK path is unchanged.