Loading

Tableau Server サイトをインポートするときのエラー "commit failed; nested exception is org.hibernate.TransactionException: commit failed"

公開日: Dec 9, 2022
説明

Tableau Server サイトをインポートするときに、インポートに失敗し、コマンド ラインに次のエラー メッセージが表示される場合があります。

"An error occurred on the server while trying to import site <Site Name>.
This job failed due to an error.
commit failed; nested exception is org.hibernate.TransactionException: commit failed - 'violates foreign key constraint' (サイト <Site Name> のインポートを試行しているときに、サーバーでエラーが発生しました。このジョブは、エラーのために失敗しました。コミットに失敗しました; ネストされた例外は org.hibernate です。TransactionException: コミットに失敗しました - '外部キー制約に違反しています')"

Cause

マッピング ファイルのコンテンツにエラーまたは省略があります。
解決策

オプション 1

エラーや省略がないかマッピング コンテンツを確認してください。大文字/小文字も一致する必要があることに注意してください。

オプション 2

以下に記載されたエラーに類似したエラーが発生した場合は、siteimportexport_<node>.log を確認してください。
"Caused by: org.postgresql.util.PSQLException: ERROR: insert or update on table "<table name>" violates foreign key constraint "<key name>"
  Detail: Key <identifier> is not present in table "<table name>". (原因: org.postgresql.util.PSQLException: エラー: テーブル "<table name>" で挿入または更新することは、外部キー制約 "<key name>" に違反しています 詳細: キー <identifier> がテーブル "<table name>" にありません。)"

上記のエラーは、system_users などの別のテーブルも参照する可能性があります。このエラーに類似したエラーが見つかった場合、ユーザーまたはスケジュールのマッピング ファイルに不適切なマッピング コンテンツが含まれていることを強く示唆しています。
Tableau Desktop を使用して PostgreSQL リポジトリに結合し (以下で説明しています)、マッピング ファイルの正確性を完全に検証することを検討してください。

 
その他のリソース
このトピックに関する詳細については、Tableau コミュニティの「サイト移行を使用して Tableau Server をローカル認証から Active Directory に移行する方法」を参照してください。このドキュメントには、エラー メッセージとエラーを修正する方法について詳しく記載されています。
「単一の ... マッピングが無効な場合でもインポート全体が失敗します。手動で正確に検証することが困難な多数のユーザー マッピングが含まれるシステムの場合、Tableau Desktop を活用して、マッピング ファイルの正確性をマシンで検証するのが最善です。(インポートするのに時間がかかる大規模なサイトの場合、この手順を使用すると、インポートが最後に失敗して時間が無駄になることはありません。) mappingsSystemUserNameMapper.csv の準備ができたら、Tableau Desktop の CSV データ ソース メソッドを使用して接続し、ターゲット システムの PostgreSQL リポジトリ (具体的には、マッピングされた各 Active Directory ユーザーのエントリが含まれるようになる system_users テーブル) に結合してみてください。mappingsSystemUserNameMapper.csv と system_users の間で左外部結合を確立し、この結合を使用して新しいシートを作成します。次に、このシートを使用して、新しい各ローカル ユーザーの [ターゲット名] 列に、system_users 内の有効な一致する Active Direcotry アカウント名が実際にあることを検証します。」
 
ナレッジ記事番号

001472270

 
読み込み中
Salesforce Help | Article