mqaconvertキューファイルのコンバート

形式

mqaconvert 〔-b バッファサイズ〕
    コンバート元ファイル名  コンバート先ファイル名

機能

旧バージョンのmqabkupコマンドでバックアップしたキューファイル(メッセージ情報管理ファイル(キューファイル名.cnt),およびメッセージファイル(キューファイル名.msg))を,OpenTP1ファイルシステム上の最新バージョンのキューファイルへコンバートします。

このコマンドでコンバートできるのは,TP1/Message Queue 05-00以降で作成したバックアップファイルです。

オプション

● -b バッファサイズ

 ~((2048~200000000))《65536》(単位:バイト)

キューファイルのコンバート時に使用するバッファサイズ(プロセス領域サイズ)を指定します。

なお,バッファサイズがキューファイルのレコード長の2倍未満である場合,KFCA31112-Eメッセージを出力して終了します。そのためバッファサイズを指定する場合は,KFCA31112-Eメッセージのレコード長の2倍以上の値を指定してください。

コマンド引数

● コンバート元ファイル名

 ~<パス名>

旧バージョンのmqabkupコマンドでバックアップしたキューファイルの名称を完全パス名で指定します。

● コンバート先ファイル名

 ~<1~59文字の文字列>

コンバート先のファイル名称を完全パス名で指定します。ファイルは,OpenTP1ファイルシステム上のファイルを指定してください。同一ファイル名のファイルがある場合はエラーになります。事前に削除してください。

注意事項

  1. TP1/Message Queue 05-13以前のキューファイルから,TP1/Message Queue 05-14以降のキューファイルへコンバートすると,次の場合に,キューファイルのサイズが大きくなることがあります。
    • コンバート元のキューファイルのメッセージ数が1で,メッセージ長が次に示す計算式よりも大きいとき

    レコード長-520(単位:バイト)

    • コンバート先のキューファイルシステムのセクタ長が,コンバート元のキューファイルシステムのセクタ長よりも大きいとき
    • コンバート元のキューファイルに長さが0バイトのメッセージが多数格納されているとき
  2. TP1/Message Queue 05-13以前のキューファイルから,TP1/Message Queue 05-14以降のキューファイルへコンバートすると,次の場合に,コンバート先のキューファイルのメッセージ数(mqainitコマンドの-mオプションに相当するキューファイルに登録できるメッセージの最大数)が多くなることがあります。
    • コンバート元のキューファイルに長さが0バイトのメッセージが多数格納されているとき
    • コンバート元のキューファイルのメッセージ長(mqainitコマンドの-sオプションに相当するキューファイルに登録できるメッセージの平均メッセージ長)がレコード長-520バイト以下で指定されていて,次に示す範囲に該当するメッセージ長のメッセージが多数格納されているとき

    (レコード長-8)×N ~ (レコード長-8)×N-512+1(単位:バイト)

    注※
    N:正の整数
    なお,コンバート先のキューファイルのメッセージ数を確認するには,OpenTP1のfillsコマンドで「コンバート先のキューファイル名.msg」のファイルのレコード数を参照してください。
  3. TP1/Message Queue 05-13以前のキューファイルから,TP1/Message Queue 05-14以降のキューファイルへコンバートすると,次の場合に,メッセージが使用するレコード数が一つ多くなります。
    • コンバート元のキューファイルのメッセージ長(mqainitコマンドの-sオプションに相当するキューファイルに登録できるメッセージの平均メッセージ長)がレコード長-520バイト以下で指定されていて,次に示す範囲に該当するメッセージ長のメッセージが格納されているとき

    (レコード長-8)×N ~ (レコード長-8)×N-512+1(単位:バイト)

    注※
    N:正の整数
    必要に応じてMQAサービス定義のmqa_max_msg_recnumオペランドの値を変更してください。
  4. TP1/Message Queue 06-00以前のキューファイルから,06-01以降のキューファイルへコンバートすると,メッセージ情報管理ファイルに1レコード追加されます。