この付録では、Oracle SOA Suiteを使用する際に発生する可能性がある問題のトラブルシューティング方法について説明します。
この付録の内容は、次のとおりです。
使用中のJARファイル数、またはJDK 6/JREによるファイル記述子の使用(あるいはその両方)によっては、実行時またはコンパイル時に、次のエラーが発生する可能性があります。
Message send failed: Too many open files
このエラーを解決するには、ファイル記述子の数を少なくとも4096
に増やします。
descriptors
の値を識別するには、limit
コマンド(C shellの場合)またはulimit
コマンド(Bash shellの場合)を使用します。 通常、1024
の値は低すぎます(特にJDK 6の場合)。
% limit
cputime unlimited
filesize unlimited
datasize unlimited
stacksize 10240 kbytes
coredumpsize unlimited
memoryuse unlimited
vmemoryuse unlimited
descriptors 1024
memorylocked 500000 kbytes
maxproc 46720
root
ユーザーでオペレーティング・システムにログインします。
/etc/security/limits.conf
ファイルを編集してdescriptors
の値を大きくします。
この例の場合、すべてのユーザーについて制限を4096
に増やすと、limits.conf
ファイルは、次のようになります。
#<domain> <type> <item> <value> # #* soft core 0 #* hard rss 10000 #@student hard nproc 20 #@faculty soft nproc 20 #@faculty hard nproc 50 #ftp hard nproc 0 #@student - maxlogins 4 # End of file @svrgroup soft memlock 500000 @svrgroup hard memlock 500000 * soft nofile 4096 * hard nofile 4096
端末を閉じてから再度開き、変更内容を有効にします。 システムの再起動は不要です。
データベース表領域が拡張されていない場合は、実行時処理に影響を与える可能性があります。 メッセージが処理または保持されず、次のような例外エラーがログ・ファイルに表示される可能性があります。 これは、Oracle BPEL Process Managerではインスタンス・データの格納をデータベースに依存しているためです。 データベースが使用可能でない場合は、実行時処理に影響を与えます。
INFO: MediatorServiceEngine returning after processing the request for operation = processResponse [EL Warning]: 2009.01.14 11:46:16.783--UnitOfWork(32372128)--Exception [EclipseLink-4002] (Eclipse Persistence Services - 1.1 (Build SNAPSHOT-20081007)): org.eclipse.persistence.exceptions.DatabaseException Internal Exception: java.sql.BatchUpdateException: ORA-01691: unable to extend lob segment SH_SOAINFRA.SYS_LOB0000145067C00007$$ by 1024 in tablespace SH_SOAINFRA Error Code: 1691 Query: InsertObjectQuery(com.collaxa.cube.persistence.dto.AuditTrail@199b33d) [EL Warning]: 2009.01.14 11:46:16.782--UnitOfWork(32372128)--Exception [EclipseLink-4002] (Eclipse Persistence Services - 1.1 (Build SNAPSHOT-20081007)): org.eclipse.persistence.exceptions.DatabaseException Internal Exception: java.sql.BatchUpdateException: ORA-01691: unable to extend lob segment SH_SOAINFRA.SYS_LOB0000145067C00007$$ by 1024 in tablespace SH_SOAINFRA . . . . . .
表領域は、サイズ制限に達したときに、それ自体が指定のサイズだけ拡張するように設定してください。 自動拡張を有効にしない場合は、表領域がクリティカルまたは警告のしきい値サイズに達したことを示すアラートが生成されたときに、必ず対応してください。 サイズ・アラートには、表領域サイズを手動で大きくすることで対応できます。
次のような状況では、接続タイムアウト・エラーが発生する可能性があります。
処理に30秒以上かかる大きなペイロードのSOAコンポジット・アプリケーションを実行する場合。
Oracle Enterprise Manager Fusion Middleware Controlコンソールの「Webサービスのテスト」ページから、大きいペイロードを使用してストレス・テストを起動している場合。
ファイル・アダプタ・サービスを使用して、コンポジットに大量のメッセージ・ファイル(100万)を渡している場合。
トランザクション・タイムアウト・プロパティを増加して、タイムアウト・エラーの発生を回避する手順は、次のとおりです。
Oracle WebLogic管理コンソールにログインします。
「JTA」をクリックします。
「タイムアウト」の値を変更します(デフォルトは30
です)。
「保存」をクリックします。
Oracle WebLogic Serverを再起動します。