Fileshare エラー メッセージは、『Fileshare サーバーのメッセージ』の章で一覧表示します。
ここでは、次の内容を詳細に説明します。
状態コード |
説明 |
---|---|
9/037 | アクセスが拒否されたことを示します。 Fileshare では、通常のエラー原因以外に、次の場合にもこのエラーを返します。
詳細については、『セキュリティ』の章を参照してください。 |
9/100 | アクティブなトランザクション処理で使用するデータファイルで、CLOSE 操作が試行されたこと示します。 詳細については、『データベースの完全性』の章にある『トランザクション処理』の項を参照してください。 |
9/124 | Fileshare クライアントと Fileshare サーバーの間で通信エラーが発生したことを示します。 エラー原因を判断するには、fs_status を呼び出します。 詳細については、『通信エラー』の項を参照してください。 |
9/125 | 次の条件のいずれかが発生したことを示します。
|
9/126 | 入出力操作で使用するレコードサイズが大きく、Fileshare サーバーで処理できない場合。 『構成』の章にある『サーバーの構成』の項で /m オプションの説明を参照してください。 |
9/173 | 仮想ファイルインターフェイスの使用中に、データベース参照ファイルで指定されたプログラム名が見つからない場合。 『高度な操作』の章にある『仮想ファイル ハンドラーインターフェイス』の項を参照してください。 |
入出力操作でのエラー状態 9/124 は、Fileshare クライアントと Fileshare サーバーの間で通信エラーが発生したことを示します。
エラー 9/124 が最もよく発生するのは、プログラムが最初に入出力要求を出すときです。 つまり、Fileshare クライアントが Fileshare サーバーに連絡しようとする時点です。 Fileshare クライアントが Fileshare サーバーに接続できないと、エラー 9/124 が返されます。このエラーが返された場合は、Fileshare の構成を調べて、次の点を確認してください。
Fileshare サーバー側でトレースがアクティブである場合に、接続が正しく行われ、Fileshare クライアントからの要求に Fileshare サーバーがサービスするようになると、要求が表示されます。 詳細については、『高度な操作』の章にある『Fileshare のモニター』の項を参照してください。 これ以降に通信エラーが起きると、エラーコード 9/124 がプログラムに返されます。これは致命的なエラーで、Fileshare クライアントとサーバーとの接続が解除されます。 そのエラー原因を判断するには、ファイル ハンドラーリダイレクタモジュールのエントリポイント fs_status
を呼び出してください。この呼び出し形式は、次のとおりです。
call "fs_status" returning cci-status
この場合のパラメーターは、次のように定義します。
01 cci-status pic x(2) comp-x.
この呼び出しが終了すると、CCI モジュールからファイル ハンドラーリダイレクタモジュールに返された CCI エラーコードが cci-status に格納されます。 CCI エラーコードの詳細については、オンラインマニュアル『CCI の設定』 を参照してください。
エラー 9/124 が返された場合は、追加の呼び出しを行って、詳細なエラー メッセージを入手できます。 このメッセージは、CCI 固有のエラーと補足情報を文字列で表したものです。この呼び出し形式は、次のとおりです。
call "fs_commserr" using by reference buffer by value maxlen by reference actual-len
この場合のパラメーターは、次のように定義します。
01 buffer pic x(n). 01 maxlen pic x(4) comp-5 value length of buffer. 01 actual-len pic x(4) comp-5.
この呼び出しが終了すると、buffer には詳細エラー メッセージが、actual-len にはこのメッセージの長さが含まれます。 エラー メッセージの補足説明には、次の情報が含まれます。
さらに、ファイル ハンドラーリダイレクタモジュールは fhneterr.log というローカルファイルに通信エラーのログを自動的に記録します。 そのログ ファイルに含まれる各エントリの形式は、fs_commserr
呼び出しの結果返されたバッファーと同じです。
アプリケーションで fs_commserr
を呼び出せない場合は、fhneterr.log ファイルで、返された 9/124 エラーに関する詳細情報を確認できます。
このログ ファイルは、Fileshare クライアントによって削除されることはありません。 ただし、ログ ファイルの内容が不要な場合は、そのログ ファイルを削除できます。
COMMIT 操作と ROLLBACK 操作は、多くのデータファイルに作用します。 そのため、1 つのデータファイルのファイル状態を調べるだけでは、COMMIT 操作や ROLLBACK 操作が正常に実行されたかどうかを確認することはできません。 そのかわりに、エントリポイント fs_status
を呼び出して、COMMIT 操作や ROLLBACK 操作の状態を判断します。
この呼び出し形式は、次のとおりです。
call "fs_status" returning t-status
この場合のパラメーターは、次のように定義します。
01 t-status pic x(2) comp-x.
0 以外の値が返された場合は、COMMIT 操作または ROLLBACK 操作が失敗したことを示します。 ネットワークを介して複数のファイルを対象にトランザクション処理を行うことは複雑であるため、Fileshare では、発生したトランザクション処理エラーに関する決定的な情報を返すことはできません。