RATATOSKRATATOSK
로그인

Vitess

v23.0.6Storage & Data
2026년 9월 3일

ACTION 2CHECK 1PLAN 1OTHER 35

정확성 수정과 의존성 업데이트를 중심으로 한 유지보수 릴리스입니다. `VRLog` 제거와 새로 적용된 안전성 제한은 관련 기능을 사용하는 운영자의 확인이 필요합니다.

조치 필요 (2)

  • breaking스트리밍 재귀 CTE 경로의 재귀 깊이 제한 적용

    스트리밍 재귀 CTE 경로에 재귀 깊이 제한을 적용합니다.

    vitess#20468

  • breaking스트리밍 CALL 경로의 저장 프로시저 안전성 검사 적용

    스트리밍 CALL 경로에 저장 프로시저 안전성 검사를 적용합니다.

    vitess#20423

영향 확인 (1)

  • breaking/debug/vrlog 엔드포인트 제거

    /debug/vrlog를 사용하는 경우에 적용됩니다.

    /debug/vrlog 엔드포인트가 더 이상 존재하지 않습니다.

미리 준비 (1)

  • deprecated--vreplication-enable-http-log 플래그 사용 중단v26에서 제거 예정

    --vreplication-enable-http-log를 설정한 경우에 적용됩니다.

    --vreplication-enable-http-log 플래그는 이제 아무 동작도 하지 않는 사용 중단 상태이며, v26에서 제거됩니다.

그 외 기록된 변경 35건 전체fixes 29 · value changes 4 · constraints 1 · defaults 1

fixes (29)

  • reparentutil: order reparent candidates by GTID dominance for a consistent sort (#20728) [#20757](https://github.com/vitessio/vitess/pull/20757)
  • mysql/json: fix MarshalTo discarding accumulated output for nested blob and bit values (#20625) [#20655](https://github.com/vitessio/vitess/pull/20655)
  • VDiff: stop pre-seeding a bogus category in TableDiffPhaseTimings (#20713) [#20716](https://github.com/vitessio/vitess/pull/20716)
  • Properly handle vstream filter predicates with multi-col PKs (#20858) [#20864](https://github.com/vitessio/vitess/pull/20864)
  • vstreamer: don't drop a SET column's 64th member (#20450) [#20455](https://github.com/vitessio/vitess/pull/20455)
  • VReplication: reconcile in-memory workflow state metric from the persisted row (#20442) [#20500](https://github.com/vitessio/vitess/pull/20500)
  • binlog: escape JSON diff paths when generating diff SQL (#20461) [#20528](https://github.com/vitessio/vitess/pull/20528)
  • workflow: escape tenant id and column name in getTenantClause (#20413) [#20532](https://github.com/vitessio/vitess/pull/20532)
  • VReplication: Avoid sending mixed batch of row changes to bulk insert or bulk delete in vplayer batch mode (#20565) [#20587](https://github.com/vitessio/vitess/pull/20587)
  • VReplication: only build a bulk-delete plan for insertNormal table plans (#20889) [#20920](https://github.com/vitessio/vitess/pull/20920)
  • VReplication: don't count throttled time in the vplayer stall deadline (#20925) [#20949](https://github.com/vitessio/vitess/pull/20949)
  • Preserve query hints in field/impossible queries (#20366) [#20398](https://github.com/vitessio/vitess/pull/20398)
  • vtgate: copy bindVars per source in streaming Concatenate (#20436) [#20490](https://github.com/vitessio/vitess/pull/20490)
  • evalengine: don't append a NUL byte to TO_BASE64 output at exact 57 byte multiples (#20474) [#20502](https://github.com/vitessio/vitess/pull/20502)
  • mysql: encode zero DATE/DATETIME/TIMESTAMP values as zero-length in the binary protocol (#20460) [#20506](https://github.com/vitessio/vitess/pull/20506)
  • vtgate: copy execute options per scatter call for FetchLastInsertId (#20439) [#20523](https://github.com/vitessio/vitess/pull/20523)
  • vtgate: do not autocommit per-chunk in streaming insert-select (#20497) [#20525](https://github.com/vitessio/vitess/pull/20525)
  • evalengine: round DOUBLE ties half to even in ROUND() like MySQL (#20476) [#20530](https://github.com/vitessio/vitess/pull/20530)
  • grpcvtgateconn: stop mutating shared dial options slice (#20580) [#20583](https://github.com/vitessio/vitess/pull/20583)
  • Fix ExecuteMulti timeout context reuse (#20445) [#20606](https://github.com/vitessio/vitess/pull/20606)
  • evalengine: stop RPAD growing its operand in place (#20697) [#20707](https://github.com/vitessio/vitess/pull/20707)
  • evalengine: stop the binary bitwise operators writing over and marking their result (#20696) [#20709](https://github.com/vitessio/vitess/pull/20709)
  • evalengine: collapse the VM stack when a later LOCATE or SUBSTRING operand is NULL (#20645) [#20714](https://github.com/vitessio/vitess/pull/20714)
  • vttablet: roll back canceled schema reload on a non-cancelable context (#20385) [#20400](https://github.com/vitessio/vitess/pull/20400)
  • vreplication: prevent vttablet panic on malformed RowChange images (#20377) [#20408](https://github.com/vitessio/vitess/pull/20408)
  • txthrottler: don't panic on target_replication_lag_sec of 1 (#20554) [#20558](https://github.com/vitessio/vitess/pull/20558)
  • vttablet: perform an initial heartbeat read when opening the heartbeat reader (#20868) [#20905](https://github.com/vitessio/vitess/pull/20905)
  • reparentutil: keep nil-alias tablets out of candidate ordering (#20762) [#20767](https://github.com/vitessio/vitess/pull/20767)
  • evalengine: use MySQL 1-based ordinal for ENUM in numeric context (#20454) [#20458](https://github.com/vitessio/vitess/pull/20458)

value changes (4)

  • Upgrade the Golang version to go1.25.12 [#20519](https://github.com/vitessio/vitess/pull/20519)
  • Upgrade the Golang version to go1.25.13 [#20835](https://github.com/vitessio/vitess/pull/20835)
  • go/mysql: streaming errors no longer surface as connection loss (#20383) [#20540](https://github.com/vitessio/vitess/pull/20540)
  • go/mysql: send ERR instead of teardown after an OK carrying SERVER_MORE_RESULTS_EXISTS (#20563) [#20666](https://github.com/vitessio/vitess/pull/20666)

constraints (1)

  • vtgate: support prepared statements with a leading WITH clause (#20665) [#20705](https://github.com/vitessio/vitess/pull/20705)

defaults (1)

  • mysqlctl: force TZ=UTC for mysqlbinlog during point-in-time restore (#20463) [#20508](https://github.com/vitessio/vitess/pull/20508)
Vitess 스택에 추가

조치가 필요한 릴리스가 나왔을 때 주간 메일로 알려드립니다. 이번 릴리스의 브레이킹 체인지 같은 것들입니다.

스택에 추가