Object Broker C++ で発生する例外ごとに、マイナーコード別の原因と対策を一覧にしています。
1025
ホスト名が正しくない。あるいはhosts ファイル、DNS などでIP アドレスを知ることができない。
オブジェクトリファレンスに含まれているホスト名がクライアント側でIP アドレスに変換できていない可能性があります。ネットワークの設定を確認してください。 オブジェクトリファレンスには"マシン名.ドメイン名"で登録されている状態で、クライアントを起動したホストが"マシン名"でなければ変換できない設定になっているなどが考えられます。
1186
コネクションがリセットされた(ECONRESET)
高負荷によりconnect に失敗している可能性があります。 サーバ側のオプション設定でListenBackLog の値を大きくしてください。
1036
accept 用ソケット作成に失敗した。
ポート番号が他のプロセスで使用されていないかを確認してください。 問題ない場合、ホスト名が正しく指定されているか、DNS などによるホスト名解決で正しく検索可能かを確認してください。
1159
要求を行ったクライアントホストからのサーバプロセスの自動起動は禁止されている。
クライアントマシンからの自動起動が許可されていません。 サーバマシンのoad の設定を変更してください(actallow ファイルにクライアントマシン名を追加します)。
1160
このサーバプログラムの自動起動は禁止されている。
ObjectBroker は、conf ディレクトリの下にあるexeallow というファイルなどによって自動起動を制限することができます。設定を変更してください。 自動起動についての設定をしていない場合にはサーバが異常終了している可能性があります。 該当するサーバプロセスの確認を行い、サーバが終了している場合には再起動を行ってください。
1161
自動起動サーバで相対パスは許されていない。
SSL サーバへの接続時にも発生する場合あり(ポート番号が未指定のサーバの場合)サーバが起動しているかを確認してください) サーバへのパスに"/../"を含んでいる可能性があります。 オプション設定のOadAllowRelativePath にtrue を設定すれば回避できますが、絶対パスによる指定に変更することをおすすめします。 パスの指定方法を間違っている可能性があります。たとえばWindows 上で動作するオブジェクトに/dir1/dir2/servernameのようなパスを指定した可能性があります。パスの指定方法が合っているか確認してください。
1027
コネクションが失われた。ネットワーク不通、サーバホストダウン、サーバプロセス終了など。
活性化通知後、サーバがダウンしたか、もしくは、終了した可能性があります。パーシステントサーバならば再起動してください。 ソケットを再利用する設定になっていた場合、サーバ終了後にクライアントが行った最初のオブジェクト呼び出しがエラーになります。 この場合、再度呼び出すと正常に通信が行われます。
1080
指定されたホスト上にインプリメンテーションが存在しない。 あるいは、ブロードキャストを用いて探したけれどもインプリメンテーションが見つからなかった。
指定されたホスト上で名前サーバが起動しているか確認して下さい。
1141
コネクションの作成でタイムアウトした。
呼び出したパーシステントサーバを起動していない可能性があります。サーバが動作しているか確認してください。 サーバが起動しているかを確認してください。起動している場合は、コネクションタイムアウトの設定を変更してください。
1148
recv でタイムアウトした。
ネットワークの設定が間違っている可能性があります。ホスト名からIP アドレスが参照できるようにネットワーク(/etc/hosts 等)の設定を行ってください。 サーバの処理が滞っていないか、またはサーバが動作しているかを確認してください。問題がなければ、タイムアウト時間の設定を変更してください。
サーバがコネクションをクローズした。
send やrecv でWSAECONNRESET 例外が発生しました。活性化通知後、サーバがダウンしたか、もしくは、終了した可能性があります。 パーシステントサーバならば再起動してください。ソケットを再利用する設定になっている場合、サーバ終了後にクライアントが行った最初のオブジェクト呼び出しがエラー になります。 この場合、再度呼び出すと正常に通信が行われます。
1211
コネクションがリセットされた(ECONRESET)。
サーバからのCloseConnection メッセージを受信しました。 サーバが停止している可能性があります。
1140
サーバの起動に失敗した。
自動起動サーバの実行ファイルがない可能性があります。実行ファイル削除したり、ディレクトリや実行ファイルの名前を変更していないか確認してください。 インプリメンテーション登録時に、自動起動サーバの実行ファイルへのパスを間違えた可能性があります。 パスが間違っていないか確認してください。間違っている場合は登録しなおしてください。
トラブルシューティング(障害解析)