Oracle データベースで jBPM 7.41 ビジネス アプリケーションを使用します。高負荷下では、トランザクションのタイムアウトが検出され、arjuna はロールバックのマークを付けます。次に、jBPM エグゼキュータ スレッドは同じトランザクションを再利用し、繰り返し例外「アクティブなトランザクションがありません...」をスローします。jBPM は最初は機能していますが、数分の作業の後、アクティブな JTA トランザクションはありません。例外をスローする単純なコマンドで非同期エグゼキューターを使用します。プロセスは正常に実行されますが、Arjuna トランザクション リーパーがトランザクションをキャンセルするとすぐに、エグゼキューター スレッドは同じ例外「JTA トランザクションに明示的に参加するには JTA トランザクションが必要です」をスローします。
JtaTransactionManager で行われたのと同じ修正が KieSpringTransactionManager にも必要であると考えています。
ここでチケットhttps://issues.redhat.com/browse/JBPM-9450を作成し、問題を説明し、それを再現できるようにログとプロジェクトを添付しました。
Narayana を Atomikos と Bitronix に、Oracle を PostgreSQL に置き換えていくつかのオプションを試しましたが、問題は同じです。
ここで説明されているのと同じ問題が発生しているようです: https://issues.redhat.com/plugins/servlet/mobile#issue/RHBPMS-4621。
前もって感謝します、
を使用しております:
- スプリング ブート: 2.2.2.RELEASE
- Kie サーバー: 7.45.0.Final
- ナラヤナ: 5.9.0.Final
ログ: https://issues.redhat.com/secure/attachment/12501068/logs.txt
ここで入手できる問題を再現するためのサンプル プロジェクト: https://issues.redhat.com/secure/attachment/12501190/jbpm-perfs-oracle.zip