8.3.21 hrmregdmsg(デッドメッセージの再登録)
(1) 形式
hrmregdmsg {-i デッドメッセージID|-q 移動前キュー名} 〔-S システム名〕
(2) 機能
デッドメッセージを,デッドメッセージキューに移動される前のキューに,新しいメッセージとして再登録します。また,デッドメッセージキュー内の該当のデッドメッセージを削除します。
(3) オプション
- -i デッドメッセージID
-
〜<1〜39文字の識別子>
再登録するデッドメッセージのデッドメッセージID(DMID)を指定します。
指定したDMIDのメッセージがデッドメッセージキュー内にない場合はエラーが発生します。
- -q 移動前キュー名
-
〜<1〜20文字の識別子>
デッドメッセージキューに移動する前にメッセージが存在したキュー名を指定します。
指定したキュー名から移動されたすべてのデッドメッセージが,再登録されます。
- -S システム名
-
〜<先頭が英字の1〜3文字の大文字英字または数字>
コマンドの操作対象となるシステム名(RMSystemNameプロパティ指定値)を指定します。
指定を省略した場合は,HRM_SYSTEM_NAME環境変数に指定したシステム名が設定されます。HRM_SYSTEM_NAME環境変数にもシステム名が指定されていないときはエラーが発生します。
(4) 注意事項
-
対象のデッドメッセージキューは,RMDeadMessageQueueNameプロパティで指定したキューです。
-
キュー間転送時の送信側デッドメッセージキューには,受信側システムに到達しているメッセージが存在する場合があります。このデッドメッセージを再登録すると,受信側で別のメッセージとして受信されます。そのため,受信側システムのメッセージ到達状態を確認してから再登録してください。詳細は,「4.2.4(2) サーバ間転送での注意事項」を参照してください。
-
次に示すデッドメッセージは,再登録できません。また,-qオプションで移動前キュー名を指定した場合,次に示すメッセージは再登録しないで,そのほかのメッセージを再登録します。
-
配信中のメッセージ
-
配信済みのメッセージ
-
移動前キューの最大メッセージ長より大きいメッセージ
-
デッドメッセージキュー移動時と移動前キューの種類が変わっているメッセージ
-
Reliable Messaging 01-01以前にデッドメッセージキューに移動したメッセージ
-
-
移動前キューがメッセージの登録を抑止されている場合,デッドメッセージは再登録できません。メッセージの登録抑止については,「8.3.27 hrmstopque(キューの抑止)」を参照してください。
-
-qオプションで移動前キュー名を指定した場合で,再登録対象のメッセージが複数あるときは,1メッセージごとに再登録処理が繰り返されます。再登録処理の途中で次に示すような処理を続行できない障害が発生した場合,処理が中止され,以降のメッセージは再登録されません。
-
移動前のキューの最大メッセージ数を超えた場合
-
移動前のキューで,DB障害が発生した場合
-
-
デッドメッセージの再登録では,メッセージの再登録処理の順番は保証されません。
-
Reliable Messagingが管理状態の場合,共用キューにデッドメッセージを再登録したとき,共用キューの状態は更新されません(メッセージが登録された状態になりません)。共用キューの状態は次のタイミングで更新されます。
-
Reliable Messagingを実行状態にする
-
Reliable Messagingを再起動する
-
-
デッドメッセージの再登録により追加されたメッセージは,移動前キューのメッセージ取り出しモードがparallel_unit_orderであっても,同一ユニット識別子の配信順序制御の対象とはなりません。また,キューに格納されている時に,メッセージ参照コマンドでユニット識別子は表示されません。ただし,そのメッセージを受信/配信した場合,メッセージにはJMS_HITACHI_UnitIDプロパティは設定されています。