Postプロセスが停止した場合、以下のようなエラーがevent_logに出力されます。
Info 2011-01-14 19:11:27.546419 26993 1 Poster exited with code=1, pid = 27948 (posting from SID1, queue queue_name, to SID2)
Error 2011-01-14 19:11:27.515512 27948 1 Poster stopped: Internal error encountered; cannot continue (posting from SID1, queue queue_name, to SID2)
Error 2011-01-14 19:11:27.498093 27948 1 Poster: 15010 - Error reading pre-sync'd objcache for datasource objectcache_name, actid 4 (posting from SID1, queue queue_name, to SID2) [module opo]
Error 2011-01-14 19:11:27.484628 27948 1 Poster: 17006 - Cannot open object cache: Input/output: /u00/splex/var/state/0x0a01009c+PP+server+sp_opst+o.SID1-o.SID2-objcache_sp_opst.4: open() failed \ (posting from SID1, queue queue_name, to SID2) [module osp]
Info 2011-01-14 19:11:20.075846 27948 1 Poster launched, pid = 27948 (posting from SID1, queue queue_name, to SID2)
オブジェクトキャッシュの破損が起因して上記のエラーがevent_logに出力されPostプロセスが停止します。
ソース側のオブジェクトキャッシュを使ってターゲット側にオブジェクトキャッシュを作成することで本現象を回避することが可能です。
以下手順にて実施してください。
1. ソース側で Capture プロセスを停止します。
sp_ctrl から status コマンドを実行し、"stopping" ではなく "stopped by user" が表示されていることを確認します。
2. Capture プロセスを起動します。
3. Shareplex 管理者ユーザで Source側のデータベースに接続し、Shareplex_actid テーブルの actid 列の値を確認します。
4. Source 側の vardir/state ディレクトリにある *objcache_sp_ocap.のファイルを探します。
5. Target 側の vardir/state ディレクトリに Step.4 のファイルをコピーします。
6. コピーしたファイルを event_log に記載されるオブジェクトキャッシュと同じファイル名に変更します。
mv * objcache_sp_ocap.
0x0a01009c+PP+server+sp_opst+o.SID1-o.SID2-objcache_sp_opst.4
7. 該当ファイルについて、/vardir/state ディレクトリにある他のファイルと同じ所有者、権限に変更します。
8. Post プロセスを起動します。
© ALL RIGHTS RESERVED. Feedback 利用規約 プライバシー Cookie Preference Center