アーティクル - CS363778
ThingWorxプラットフォームでカスタムサービス/サブスクリプションコードを実行すると、「ThingworxPersistenceProviderのトランザクションを作成できませんでした」が繰り返し表示されます
修正日: 13-Mar-2025
適用対象
- ThingWorx Platform 8.5 to 9.3
説明
- 特定のデータベーストランザクションが失敗し、続行されません
- 存在しないstreamEntryIdを使用してDeleteStreamEntryを呼び出すと、後続のクエリがエラーで失敗しますThingworxPersistenceProviderのトランザクションを作成できませんでした
- ThingWorxプラットフォームは、一連のサービスまたはサブスクリプションの実行以外では期待どおりに機能しています
- ThingWorxプラットフォームで再利用されるデータベーストランザクションの失敗につながる、データベースエントリ(ストリームエントリなど)と対話する前にデータベースエントリ(ストリームエントリなど)の存在をチェックしないカスタムコード
- 場合によっては、ThingWorxプラットフォームがトランザクションの失敗を適切に処理しないため、壊れたトランザクションが他のデータベース操作で再利用される可能性があります。
- NullPointerExceptionが原因で失敗したデータベーストランザクションは、ThingWorxプラットフォームで適切に処理されません
- 失敗したデータベーストランザクションは、ThingWorxトランザクションファクトリ内に残され、データベースとの対話を試みる他の操作によって再利用されます。
- カスタムコードの実行が失敗し、ThingworxPersistenceProviderのトランザクションを作成できませんでした
- 以前は機能していたデータベースと対話するカスタムコードが表示されています<永続性プロバイダー名>のトランザクションを作成できませんでした
- <ThingworxStorage>ログにあるThingWorxプラットフォームログに次のログが記録されていることを確認します
- ApplicationLog.log
- [L:エラー] [O:ctppPostgresModelExceptionTranslator] [I:] [U:管理者] [S:] [P:] [T:TWEventProcessor-7] [1,018]データストア不明エラー:[モデルプロバイダーへのアクセス中にエラーが発生しました。]
- ErrorLog.log (LoggingSubsystemでスタックトレースを有効にする)
- [L:エラー] [O:EctppPostgresModelExceptionTranslator] [I:] [U:管理者] [S:] [P:] [T:TWEventProcessor-15] ThingworxPersistenceProviderのトランザクションを作成できませんでした
[L:エラー] [O:EcqlcLogger] [I:] [U:管理者] [S:] [P:] [T:TWEventProcessor-15] [1,018]データストア不明エラー:[モデルプロバイダーへのアクセス中にエラーが発生しました。] java.lang.Exception:トランザクションは失敗状態です。
com.thingworx.persistence.PersistenceProviderTransactionManager.getOrCreateTransaction(PersistenceProviderTransactionManager.java:55)で
..。
ラップ:java.lang.Exception:ThingworxPersistenceProviderのトランザクションを作成できませんでした
com.thingworx.persistence.PersistenceProviderTransactionManager.getOrCreateTransaction(PersistenceProviderTransactionManager.java:81)で
com.thingworx.persistence.PersistenceProviderTransactionManager.getModelProviderTransaction(PersistenceProviderTransactionManager.java:188)で
com.thingworx.persistence.TransactionFactory.getModelProviderTransaction(TransactionFactory.java:71)で
..。
ラップ:com.thingworx.common.exceptions.ModelAccessException:[1,018]データストアの不明なエラー:[モデルプロバイダーへのアクセス中にエラーが発生しました。]
com.thingworx.persistence.postgres.PostgresModelExceptionTranslator.rethrowTranslated(PostgresModelExceptionTranslator.java:31)で
com.thingworx.persistence.postgres.PostgresModelSearchProvider.searchModel(PostgresModelSearchProvider.java:255)で
com.thingworx.persistence.search.MultiSearchProvider.searchModel(MultiSearchProvider.java:81)で
..。
- [L:エラー] [O:EctppPostgresModelExceptionTranslator] [I:] [U:管理者] [S:] [P:] [T:TWEventProcessor-15] ThingworxPersistenceProviderのトランザクションを作成できませんでした
- ApplicationLog.log
最新バージョンはこちらを参照ください CS363778