RATATOSKRATATOSK
ログイン

Vitess

v24.0.4Storage & Data
2026年10月1日

ACTION 6CHECK 1PLAN 1OTHER 13

TLSの証明書失効確認とテーブルACLの適用が強化され、不要なHTTP APIが削除された保守リリースです。圧縮設定の解釈や運用メトリクスにも変更があり、アップグレード順序や互換性を確認する必要がある変更を含みます。

要対応 (6)

  • securityCRL設定時のgRPC接続方式

    --tablet-grpc-crl、--vtgate-grpc-crl、--vtctld-grpc-crlなどの*-grpc-crlフラグを設定し、クライアント証明書もCAも指定していないgRPCクライアントは、平文ではなくTLSで接続します。サーバー証明書はシステムのルート証明書で検証されます。

  • security読み取り処理のテーブルACLチェック

    厳格なテーブルACL(--queryserver-config-strict-table-acl)では、各読み取りを同じテーブルに対する通常のSELECTとしてチェックします。ドライランと除外ACLの扱いも、ほかのテーブルACLチェックと同じです。

  • securityvtctldの/api/ HTTP API削除

    vtctldが/api/で提供していたHTTP APIは削除されました。

  • breakingCRL設定の起動時検証

    TLS設定の構築時、起動時に、設定どおりCRLを適用できない構成は拒否されます。

  • breakingvtctld Go APIの削除

    Goパッケージを利用して構築する場合、vtctld.InitVtctld、vtctld.ActionRepository、vtctld.ActionResult、vtctld.TabletWithURLは利用できません。

  • breakingサブクエリを含む設定の拒否

    厳格なテーブルACLでは、式にサブクエリを含む設定をvttabletが拒否します。

影響確認 (1)

  • breaking対象付きSET文のアップグレード時制約

    vttabletをvtgateより先にアップグレードする場合に適用されます。

    vttabletをvtgateより先にアップグレードする場合は、すべてのvtgateのアップグレードが完了するまで、対象付きのSET文でサブクエリを使わない運用が必要です。vtgateを先にアップグレードすることもできます。

事前準備 (1)

  • deprecatedコマンドラインフラグの非推奨化v26で削除予定

    --cell、--proxy-tablets、--action-timeout、--tablet-health-keep-aliveは非推奨になり、v26で削除されます。

その他の記録済み変更 13 件すべてfixes 16 · value changes 6 · constraints 2 · additions 1

fixes (16)

  • A SET of a system variable in a session targeted at a shard (use ks:-80) is now evaluated once on the target shard
  • mysql/json: read numbers the way MySQL does
  • fix(vdiff): map source PK columns to their SELECT positions in getSourcePKCols
  • vreplication: Fix --config-overrides silently erasing existing config keys
  • use tablet db name override when reading current sequence value in SwitchTraffic dry run
  • flagutil: keep the first value passed to StringSetFlag.Set
  • vtadmin: send a non-empty :authority so gRPC works behind a proxy
  • sqlparser: fix panic on WITH followed by parenthesized query
  • vtorc: pass a heartbeat interval to SetReplicationSource only for ReplicaMisconfigured
  • vttablet: reset connection settings with the DEFAULT keyword
  • smartconnpool: re-check capacity after getNew's CAS
  • vttablet: reset foreign_key_checks and unique_checks settings to the global value
  • tabletenv: Fix infinite recursion in OltpConfig.UnmarshalJSON
  • VTTablet: discard a transaction's connection after a CALL ran on it
  • vttablet: derive table ACL permissions the way MySQL resolves CTE names
  • vttestserver: fail, don't panic, on a vschema missing a table or vindex

value changes (6)

  • The exported planbuilder.BuildPermissions now returns a second result, tablesUndetermined bool, alongside the permissions.
  • The lz4 compression engine now uses the pierrec/lz4/v4 library instead of pierrec/lz4 v2.
  • vtgate: report RowsAffected for stored-procedure calls over the streaming path
  • vtgate: list the session's SET_VAR hint variables in a fixed order
  • Upgrade the Golang version to go1.26.8
  • vtgate: only scan shard records for MoveTables state when routing rules reference the keyspace

constraints (2)

  • VDiff: accept a target primary key that extends a unique source key
  • Only negotiate multi statement support on connections that send batches

additions (1)

  • now reports its connections by transport, tls or plaintext, in two new stats: GrpcOptionalTlsOpenConnections
Vitessをスタックに追加

対応が必要なリリースが出たときに、週次メールでお知らせします。 今回のセキュリティパッチと破壊的変更も、その一例です。

スタックに追加 →