RATATOSKRATATOSK
ログイン

NATS

v2.15.0Networking & Messaging
2026年9月17日

ACTION 1CHECK 1OTHER 16

JetStreamの運用機能と復旧機能が拡充され、性能改善とleafnodeの分離処理の修正も含まれます。コンシューマー上限や機能の既定値も見直された、運用面に関わるリリースです。

要対応 (1)

  • breakingjs_raft_delete_rangeをデフォルトで有効化

    js_raft_delete_rangeがデフォルトで有効になります。

影響確認 (1)

  • breakingStreamsのコンシューマー既定上限を1000に変更

    Streamsを利用している場合に適用されます。

    Streamsのコンシューマー既定上限が1000に設定されます。ストリーム設定またはアカウント上限でmax_consumersを指定した場合は、その値が適用されます。多数のコンシューマーを使用する場合は、適切に高い値を設定します。サーバー全体の既定値は、JetStreamの制限でdefault_max_consumersを指定して変更でき、-1を設定すると無効にできます。既存のコンシューマーには影響せず、削除も行われません。上限によって制限されるのは新しいコンシューマーの作成です。

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

additions (9)

  • - Desired state metalayer (#8432, #8437, #8439, #8443, #8452, #8460, #8476, #8576, #8598, #8602, #8603) - A new desired state reconciliation engine for streams and consumers considerably improves the safety and reliability of asset moves and scales - Updating the placement or replication factor midway through an existing scale/move operation, cancelling an in-flight scale/move, or peer-removing is now much safer - ADR: https://github.com/nats-io/nats-architecture-and-design/blob/main/adr/ADR-62.md
  • - Cancel stream move endpoint (#8476) - An in-flight scale/move operation on a stream can be cancelled and the asset returned to its original placement using the new $JS.API.STREAM.CANCEL_MOVE endpoint - ADR: https://github.com/nats-io/nats-architecture-and-design/blob/main/adr/ADR-62.md
  • - Evacuate endpoints (#8443) - The new $JS.API.SERVER.EVACUATE endpoint can safely evacuate streams, and any consumers on those streams, from a node - The new $JS.API.STREAM.PEER.EVACUATE.* endpoint can safely evacuate a peer, and any consumers on that peer, from a stream - These operations combined allow for maintenance operations with full transfer of data and state without having to peer-remove first - ADR: https://github.com/nats-io/nats-architecture-and-design/blob/main/adr/ADR-62.md
  • - Metalayer rescue for disaster recovery (#8408) - The new $JS.API.META.RESCUE endpoint can temporarily lower the quorum-needed for the metalayer, in order to facilitate the recovery of a system where nodes have been permanently lost and the metalayer cannot reach quorum - ADR: https://github.com/nats-io/nats-architecture-and-design/blob/main/adr/ADR-61.md
  • - Stream backup and restore v2 (#7882, #8584, #8591, #8604) - A new backup format for stream snapshots which reads out per-message rather than per-block - The new backup format also now correctly includes non-replicated consumers on follower nodes - ADR: https://github.com/nats-io/nats-architecture-and-design/blob/main/adr/ADR-63.md
  • - Detect source stream recreation (#8384) - The server now detects a source stream being recreated, restarting the sourcing back from the beginning, ensuring new messages are sourced
  • - Stream source indexing (#8282, #8516, #8283) - Restarts and leader changes previously required expensive backward scans through the stream to find the last sourced indices. These are now persisted in an index for instant lookup.
  • - Domain-prefixed JS API in system account (#8429) - When a system account is bridged between the hub and a leaf node, the domain-prefixed JS API can now be used to operate on the leaf node while directly connected to the hub
  • - JetStream source/mirror reply subjects can now opt-in to be domain/account aware (#8586, contributed by @ayushk-1801)

value changes (6)

  • - 1.27.1 (#8551)
  • - Sync changes for replicated streams (#8447) - When the sync_interval is set to always, replicated streams now sync their WAL entries but no longer sync upper stream layer writes - The synced log allows the stream to recover safely, but removing unnecessary syncs from the upper stream layer dramatically improves performance - Non-replicated R1 streams are not affected by this change and will continue to sync at the stream layer as normal
  • - The no_advertise option no longer includes the hub's own listener address (#8451, contributed by @freakes)
  • - Shorter wait for durable source/mirror consumer resets (#8323) - When using durable consumers for sourcing or mirroring, the heartbeats now short-circuit the recreation backoff
  • - An atomic batch for a single-replica stream run with sync: always now syncs messages as a group (#8539, contributed by @RainyPixel)
  • - QOS 1 published into JetStream are pipelined for increased throughput (#8415, contributed by @levb)

fixes (1)

  • - Leafnode isolation using request_isolation, or with hub-enforced isolate, now works correctly across cluster nodes (#8504)
NATSをスタックに追加

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

スタックに追加