Skip to content

bytebase

v3.18.0 Breaking

This release includes 3 breaking changes for platform teams planning a safe upgrade.

Published 20d GitOps
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

ci-cd data-masking data-security database-access dbeaver security
+13 more
flyway gitops liquibase mongodb mysql oracle pam postgresql schema-migrations snowflake sql-client sqlserver tidb

Affected surfaces

auth breaking_upgrade

ReleasePort's take

Moderate signal
editorial:auto 13d

Bytebase 3.18.0 includes breaking API changes: require_2fa→require_mfa, plan_spec_update→plan_update, ApprovalStatus moved to top-level. Terraform provider 3.18.0 required.

Why it matters: Update API clients and Terraform provider before upgrading. Test renamed endpoints and ApprovalStatus enum in dev. Plan 2-3 hours validation time.

Summary

AI summary

require_2fa renamed to require_mfa, plan_spec_updateplan_update, and Issue.ApprovalStatus moved to top-level.

Changes in this release

Breaking Medium

API: plan_spec_update renamed to plan_update with restructured payload

API: plan_spec_update renamed to plan_update with restructured payload

Source: llm_adapter@2026-05-21

Confidence: high

Breaking Medium

API: require_2fa renamed to require_mfa in WorkspaceProfileSetting

API: require_2fa renamed to require_mfa in WorkspaceProfileSetting

Source: llm_adapter@2026-05-21

Confidence: high

Breaking Medium

API: Issue.ApprovalStatus moved to top-level ApprovalStatus enum

API: Issue.ApprovalStatus moved to top-level ApprovalStatus enum

Source: llm_adapter@2026-05-21

Confidence: high

Breaking Medium

Terraform provider 3.18.0 required; adds sensitive fields and header blocks

Terraform provider 3.18.0 required; adds sensitive fields and header blocks

Source: llm_adapter@2026-05-21

Confidence: low

Feature Medium

Bytebase Cloud now supports multi-tenant SaaS architecture with workspace switching

Bytebase Cloud now supports multi-tenant SaaS architecture with workspace switching

Source: llm_adapter@2026-05-21

Confidence: low

Feature Medium

Global SSO supports Google, GitHub, and custom IdP authentication

Global SSO supports Google, GitHub, and custom IdP authentication

Source: llm_adapter@2026-05-21

Confidence: low

Feature Medium

Audit logs restored for Login, Signup, ExchangeToken events

Audit logs restored for Login, Signup, ExchangeToken events

Source: llm_adapter@2026-05-21

Confidence: low

Feature Medium

Passwordless email code sign-in available for Bytebase Cloud

Passwordless email code sign-in available for Bytebase Cloud

Source: llm_adapter@2026-05-21

Confidence: low

Feature Medium

Self-serve subscription plan upgrade and cancellation in app

Self-serve subscription plan upgrade and cancellation in app

Source: llm_adapter@2026-05-21

Confidence: low

Feature Medium

Retry issue approval via new RetryIssueApproval API

Retry issue approval via new RetryIssueApproval API

Source: llm_adapter@2026-05-21

Confidence: low

Feature Medium

CosmosDB support for cross-partition queries

CosmosDB support for cross-partition queries

Source: llm_adapter@2026-05-21

Confidence: low

Feature Medium

TiDB DataSource connection parameters including packet compression

TiDB DataSource connection parameters including packet compression

Source: llm_adapter@2026-05-21

Confidence: low

Feature Medium

AWS RDS IAM authentication for metadata PostgreSQL database

AWS RDS IAM authentication for metadata PostgreSQL database

Source: llm_adapter@2026-05-21

Confidence: low

Feature Medium

MariaDB supports DML rollback and prior-backup matching MySQL

MariaDB supports DML rollback and prior-backup matching MySQL

Source: llm_adapter@2026-05-21

Confidence: low

Feature Medium

OAuth redirect URIs whitelisted in dynamic client registration

OAuth redirect URIs whitelisted in dynamic client registration

Source: llm_adapter@2026-05-21

Confidence: low

Feature Medium

Plan edits now appear as comments in issue activity

Plan edits now appear as comments in issue activity

Source: llm_adapter@2026-05-21

Confidence: low

Feature Medium

Bytebase Action custom headers flag for CI/CD proxies

Bytebase Action custom headers flag for CI/CD proxies

Source: llm_adapter@2026-05-21

Confidence: low

Feature Medium

Google Chat webhook integration added for project notifications

Google Chat webhook integration added for project notifications

Source: llm_adapter@2026-05-21

Confidence: low

Feature Low

Bytebase Cloud now supports multi‑tenant SaaS with workspace switcher, self‑serve leave/delete, passwordless email sign‑in, global SSO (Google/GitHub/IdP), and subscription plan management in app

Bytebase Cloud now supports multi‑tenant SaaS with workspace switcher, self‑serve leave/delete, passwordless email sign‑in, global SSO (Google/GitHub/IdP), and subscription plan management in app

Source: granite4.1:30b@2026-05-22-audit

Confidence: low

Feature Low

RetryIssueApproval API allows retrying stuck issue approvals in CHECKING state

RetryIssueApproval API allows retrying stuck issue approvals in CHECKING state

Source: granite4.1:30b@2026-05-22-audit

Confidence: low

Feature Low

Audit logs restored for Login, Signup, ExchangeToken events; added retry approval and email‑code/password‑reset paths

Audit logs restored for Login, Signup, ExchangeToken events; added retry approval and email‑code/password‑reset paths

Source: granite4.1:30b@2026-05-22-audit

Confidence: low

Bugfix Medium

PIPELINE_COMPLETED webhook event fixed when tasks skipped

PIPELINE_COMPLETED webhook event fixed when tasks skipped

Source: llm_adapter@2026-05-21

Confidence: high

Bugfix Medium

Multi-change plans targeting same database group now accepted

Multi-change plans targeting same database group now accepted

Source: llm_adapter@2026-05-21

Confidence: high

Bugfix Medium

PostgreSQL query span bugs fixed for masking and analysis

PostgreSQL query span bugs fixed for masking and analysis

Source: llm_adapter@2026-05-21

Confidence: high

Bugfix Medium

Per-sheet plan check summary preserved during approval checks

Per-sheet plan check summary preserved during approval checks

Source: llm_adapter@2026-05-21

Confidence: high

Bugfix Medium

Databricks SQL Editor applies user-selected row limit

Databricks SQL Editor applies user-selected row limit

Source: llm_adapter@2026-05-21

Confidence: low

Bugfix Medium

SQL analysis reliability improved across PostgreSQL, MySQL, MSSQL

SQL analysis reliability improved across PostgreSQL, MySQL, MSSQL

Source: llm_adapter@2026-05-21

Confidence: low

Bugfix Medium

PostgreSQL and CockroachDB schema diff reliability improved

PostgreSQL and CockroachDB schema diff reliability improved

Source: llm_adapter@2026-05-21

Confidence: low

Refactor Medium

MongoDB driver replaced with native Go implementation

MongoDB driver replaced with native Go implementation

Source: llm_adapter@2026-05-21

Confidence: low

Other Medium

SQL Editor default role set to least-privileged select

SQL Editor default role set to least-privileged select

Source: llm_adapter@2026-05-21

Confidence: low

Other Medium

TiDB SQL Editor Ctrl+Enter runs cursor statement

TiDB SQL Editor Ctrl+Enter runs cursor statement

Source: llm_adapter@2026-05-21

Confidence: low

Other Medium

ClickHouse errors suggest using -Merge and finalizeAggregation

ClickHouse errors suggest using -Merge and finalizeAggregation

Source: llm_adapter@2026-05-21

Confidence: low

Full changelog

☁️ Bytebase Cloud Upgrade

Bytebase Cloud is now a true multi-tenant SaaS.

  • One account, many workspaces — with a workspace switcher and self-serve leave/delete.
  • Passwordless sign-in by email code (no more passwords in Cloud).
  • Global SSO — sign in with Google, GitHub, or your org's IdP without picking a workspace first.
  • Self-serve subscription plan upgrade and cancel from inside the app.
  • Pro plan: unlimited users.

🔔 Other Notable Changes

  • Plan edits surfaced in issue activity — Plan edits now appear as audit comments in the issue activity feed for approver visibility.

  • API breaking changesrequire_2farequire_mfa, plan_spec_updateplan_update (restructured payload), and Issue.ApprovalStatus moved to top-level. See Change Details.

  • Terraform provider 3.18.0 required — Adds write-only sensitive fields and a provider-level custom_header block. Requires Terraform CLI 1.11+. See Migration Guide.

🚀 Features

  • AWS RDS IAM auth for the Bytebase metadata database — Authenticate the metadata PostgreSQL via AWS RDS IAM tokens.

  • Google Chat webhook integration — Add Google Chat as a project webhook destination.

  • Bytebase Action custom headers — Add --custom-header flag for header-based access proxies in CI/CD pipelines.

  • Retry issue approval — Issues stuck in CHECKING can be retried via a new RetryIssueApproval API.

  • CosmosDB — Support cross-partition queries.

  • MariaDB — Support DML rollback / prior-backup, matching MySQL behavior.

  • TiDB — Support extra DataSource connection parameters, including connection packet compression.

🎄 Enhancements

  • Improve SQL analysis reliability across PostgreSQL, MySQL, and MSSQL for advisor rules, query span, completion, and schema diff.

  • Improve PostgreSQL and CockroachDB metadata-backed schema diff reliability.

  • Show gh-ost start/end events in task run logs.

  • Show DDL/DML environment warnings across role grant, role request, and issue creation flows.

  • Show expired roles inline in the members table and member detail panel.

  • Show database group titles in plan selectors and human-readable instance/database names in member-role scopes.

  • Whitelist redirect URIs in OAuth dynamic client registration.

  • Restore audit logs for Login / Signup / ExchangeToken; add audit events for retry approval and email-code / password-reset paths.

  • Default the SQL Editor query role to the least-privileged SQL select role.

  • Improve the SQL statement matching for JIT access grants.

  • MongoDB — Replace mongosh with the native Go driver.

  • TiDB — SQL Editor Ctrl+Enter now runs the cursor statement, matching MySQL / PostgreSQL behavior.

  • ClickHouseAggregateFunction(...) errors from SELECT * now suggest using -Merge + GROUP BY or finalizeAggregation().

🐞 Bug Fixes

  • Fix multi-change plans targeting the same database group being rejected.

  • Fix PIPELINE_COMPLETED webhook event missing when failed tasks are skipped.

  • Fix per-sheet plan check summary preservation during approval checks.

  • PostgreSQL — Fix query span bugs affecting masking and query analysis.

  • Databricks — Apply user-selected row limit to SQL Editor queries.

📃 Change Details

API Breaking Changes

1. require_2fa renamed to require_mfa

The field on WorkspaceProfileSetting reflects the broader MFA scope (no longer 2FA-only).

| Field | Before | After |
| --- | --- | --- |
| WorkspaceProfileSetting.require_2fa | require_2fa (bool) | require_mfa (bool) |

Affected routes: any caller updating workspace profile settings via SettingService.UpdateSetting writing WorkspaceProfileSetting. Update references in your config or IaC.

2. IssueComment.plan_spec_update renamed to plan_update

The per-spec event (single sheet replacement) is replaced by a before/after snapshot of Plan.Spec[], so the comment carries the full diff of every plan spec change in one event.

| Field | Before | After |
| --- | --- | --- |
| IssueComment.plan_spec_updatePlanSpecUpdate { spec, from_sheet, to_sheet } (single spec/sheet change) | IssueComment.plan_updatePlanUpdate { from_specs, to_specs } (repeated Plan.Spec) |

Affected routes: any consumer of IssueService.ListIssueComments or issue activity events that previously read plan_spec_update. Update to read plan_update.from_specs / to_specs.

3. Issue.ApprovalStatus moved to top-level ApprovalStatus

Nested enum Issue.ApprovalStatus is removed; the same enum now lives at the top level in common.proto and is referenced by both Issue.approval_status and Plan.approval_status. Enum values and ordinals are unchanged (CHECKING=1, PENDING=2, APPROVED=3, REJECTED=4, SKIPPED=5).

| Type | Before | After |
| --- | --- | --- |
| Enum location | bytebase.v1.Issue.ApprovalStatus | bytebase.v1.ApprovalStatus |

Affected routes: clients that referenced the nested enum type by name (for example, generated Go or TS types). Update imports or type references; wire format is unchanged.

https://github.com/bytebase/bytebase/compare/3.17.1...3.18.0

Before upgrading: 1) Back up the metadata — in-place downgrade is not supported. 2) Do not run multiple containers on the same data directory. 3) Terraform users: upgrade Bytebase server first, then apply the new Terraform config.

Breaking Changes

  • `require_2fa` → `require_mfa` in `WorkspaceProfileSetting`
  • `IssueComment.plan_spec_update` → `plan_update` (restructured payload)
  • `Issue.ApprovalStatus` enum moved from nested to top-level

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track bytebase

Get notified when new releases ship.

Sign up free

About bytebase

World's most advanced database DevSecOps solution for Developer, Security, DBA and Platform Engineering teams. The GitHub/GitLab for database DevSecOps.

All releases →

Related context

Earlier breaking changes

  • v3.18.1 The `--demo` server flag has been removed.

Beta — feedback welcome: [email protected]