resources

2019年2月28日 – 警告: 並列デジャーナリングを使用したミラーデータベースキャッチアップでデータ整合性の問題が発生する

 

対象バージョン: Cache および Ensemble 2017.2 以降
InterSystems IRIS データプラットフォーム 2018.1 以降

対象プラットフォーム: すべて

[発生する問題]
ミラーリングで並列デジャーナリングが使用された場合にデータ整合性の問題が発生します。

[問題の詳細]
お使いのシステムでミラーリングを使用し、ミラーリングで並列デジャーナリングが使用されている場合に本問題の影響を受けます。この条件を満たしている場合でも、実際に問題が発生する可能性は低いですが、問題が発生した場合、データベースへの更新の適用順序が不正になり、データ整合性の問題が発生します。

問題が発生するのはミラーデータベースのキャッチアップのみで、以下の場合には問題は発生しません。
* 非ミラーデータベースに対するジャーナルリストア
* ミラーメンバの再接続や再起動時のデジャーナリング

以下の条件すべてを満たす場合に問題が発生します。

* 並列デジャーナルが有効になっている
– 非同期メンバでは、構成で明示的に並列デジャーナリングを有効にする必要があります
– DR 非同期メンバでは、並列デジャーナルはデフォルトで有効です
– フェイルオーバーメンバでは並列デジャーナルは常に有効です

* ホストシステムが並列デジャーナルを使用するのに十分なリソースを持つか、
%SYS ネームスペースの以下の1つ以上のグローバルが 1 以上の値を持つこと
– ^MIRROR(mirrorname,”Config”,”CatchupNumUpdater”)
– ^%SYS(“DEJOURNALING”,”NumUpdater”)
この機能の詳細は、高可用性ガイド、ミラーリング チャプターの
「並列デジャーナリングの構成」をご確認ください。

* キャッチアップが1つの操作で複数のデータベースに対して実施される
これが実際に発生したかどうかは、対象バージョンのインストール時またはアップグレード時からの一連のログを “catchup started for” で検索し、このメッセージに複数データベースのキャッチアップが記録されているかどうかを確認します(ログは、InterSystems IRIS では messages.log, Cache / Ensemble では cconsole.log です)。
条件に該当する期間のすべてのログが保存されており、そこに複数データベースに対する “catchup started for”メッセージが記録されていない場合は、そのシステムに問題は発生していないと言うことができます。

すべての条件を満たす場合、この障害によりデータ整合性の問題が引き起こされた可能性があります。障害は更新適用順序が不正になることのため、論理的なデータの整合性が損なわれる可能性があります。これを識別することは困難です。

本件についてご質問等ございましたら、インターシステムズジャパン・カスタマサポートセンターまでお知らせください。