← 活動記録一覧

FACTUAL ACTIVITY RECORD · 実際の作業をもとにした活動記録

Connector同期の障害をroot単位へ局所化する

環境別stateとroot別outboxで、一つの障害がほかの会話を止めない同期境界を作る

対象期間:

目的

一つのrootのblocked状態や再試行待ちが全同期を止めず、Developmentのresetやservice操作がProductionへ影響しない構成が必要だった。

実装

SQLite outboxをrootごとの最新request一件へ分割し、retry、backoff、blocked隔離、offline resend、強制再同期をroot単位にした。設定、socket、database、log、service identityも環境別directoryへ分離し、Control Centerには選択rootだけを再同期する操作を追加した。

一つのrootの失敗を他rootへ波及させないdelivery flow

図を描画しています…

確認したこと

確認結果

別rootのpending状態を変えず、選択rootだけを最新snapshotへ置換できるtestが追加された。

同期境界は対象へ反映された。実際のProduction serviceを用いた継続運用はcutoff時点で未確認だった。

完了とした根拠

root別outbox、環境別local state、選択rootの強制再同期を実装し、隔離・再試行・互換経路のtestを揃えたことをもって完了とした。