2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

IBM i - QCCSID 5026 での STRSAVSYNC がエラー

Posted at

IBM i の同期保管コマンド STRSAVSYNC をある環境で使ったら上手くいかない。
IBM の SWMA と数ヶ月すったもんだしてましたが、ようやく解決しました。( 2025年5月27日時点 )

環境

  • IBM i (S1014) V7R5M0
  • QCCSID : 5026

参考リンク

その前に、 STRSAVSYNC 意外と知られていないので、簡単に...
STRSAVSYNC を使うと並行して実施している SAVE 系コマンドに対して、同じチェックポイント(保管点)を取ることができます。

詳細は割愛しますが、概ね以下の流れです

  • ①STRSAVSYNCで任意の 保管 ID と保管コマンド 実施回数(例えば2回) を指定して同期保管の開始を宣言
  • 保管 ID を指定して ライブラリをSAVLIB(SAVE 1回目)を SBMJOB して待機します
  • 保管 ID を指定して IFSディレクトリをSAV(SAVE 2回目)を SBMJOB して待機します
  • ④ 実施回数を満たしたので、同じ保管点で、一斉に保管処理が開始されます

それは、さておきこれが STRSAVSYNC ①の時点で上手くいかず。ここから数ヶ月やりとりが始まりました。
結果的に、QCCSID 5026 指定だと駄目な不具合 Known Issues - DT435894 だった様で、JOB CCSID を 5035 にしても解決しない件でした。もちろん、JOB CCSID 5026 でも駄目だったようです。

エラーは以下の様なポート 9662 で立ち上がっているサービスと接続できない的な感じの内容でした。エラー発生時に 9662 はリッスンしておりました。

DSPJOBLOG
 > 通信エラーが起こりました
                             追加のメッセージ情報

 メッセージ ID  . . . . :   CPF37C6       重大度 . . . . . . . . :   40
 メッセージ・タイプ . . :    エスケープ
  送信日付  . . . . . . :   24/12/17       送信時刻  . . . . . . :   18:40:37

  メッセージ . . :    通信エラーが起こりました。
  原因--ポート 9662 の通信試行中にエラーが発生しました,理由 3 。
     1  -- ソケット作成が正常に実行されなかった。
     2  -- SOCK オプションの設定に失敗した。
     3  -- 接続に失敗した。
     4  -- 受信に失敗した。
     5  -- 送信に失敗した。
     6  -- バインドに失敗した。
     7  -- LISTEN に失敗した。
     8  -- 予期しない応答。
     9  -- IOCTL が失敗した。

その後テスト PTF を導入し、実施したところ正常に同期 SAVE ができる様になりました。
正式な PTF がもうすぐ出るそうで、QCCSID 5026 で上手くいかない方は PTF を当ててみて下さい。

savsample
# テスト
STRSAVSYNC SYNCID(SAVE01) NUMSYNC(2) STRSAVWAIT(60)

SBMJOB CMD(
    SAVOBJ OBJ(QRPGSRC) LIB(USHIDA) DEV(*SAVF)
        SAVF(USHIDA/USAVE01) CLEAR(*REPLACE)
        SAVACT(*SYNCLIB) SYNCID(SAVE01)
        SAVACTMSGQ(USHIDA/USAVEMSGQ)
)
JOB(SAVE01_01)

SBMJOB CMD(
    SAV DEV('/QSYS.LIB/USHIDA.LIB/USAVE02.FILE')
        OBJ(('/WWW/CS2/ETC'))
        SAVACT(*SYNC) SYNCID(SAVE01)
        SAVACTMSGQ('/QSYS.LIB/USHIDA.LIB/USAVEMSGQ.MSGQ')  
        DTACPR(*YES)
        CLEAR(*REPLACE)
)
JOB(SAVE01_02)

-------------------
# MSGQ
-------------------
                               メッセージ表示                            
                                                  システム :   CSC2023   
待ち行列 . . . :   USAVEMSGQ                プログラム . . :   *DSPMSG   
  ライブラリー :     USHIDA                   ライブラリー :             
重大度 . . . . :   00                       転送 . . . . . :   *HOLD     
                                                                         
応答を入力して(必要な場合),実行キーを押してください。                 
  同期 ID SAVE01 のすべての操作が開始するのを待っています。              
 1 個のライブラリー中の 0 個が処理された。 25/05/30 17:51:32 で USHIDA を
    開始しました。                                                       
  活動状態保管チェックポイントの処理が進行中です。                       
  活動状態保管チェックポイントの処理が完了した。                         
  活動状態保管チェックポイントの処理が完了した。                         
2
0
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?