Loading

Tableau Cloud 사이트를 온프레미스 Tableau Server로 가져올 때 "insert or update on table "users" violates foreign key constraint" 오류 발생

게시 일자: Jul 20, 2023
상세 설명
Tableau Cloud 사이트를 온프레미스 Tableau Server로 가져올 때 "insert or update on table "users" violates foreign key constraint" 오류 발생

다음과 유사한 메시지가 tabadmin.log에 기록됩니다.

2018-04-09 10:08:02.168 -0700_FATAL_<IP_Address>:<HOST_NAME>_:_pid=5332_0x1b7a52dd__user=__request=__ org.springframework.orm.jpa.JpaSystemException: org.hibernate.TransactionException: commit failed; nested exception is javax.persistence.PersistenceException: org.hibernate.TransactionException: commit failed
2018-04-09 10:08:02.168 -0700_DEBUG_<IP_Address>:<HOST_NAME>_:_pid=5332_0x1b7a52dd__user=__request=__ NativeException: org.springframework.orm.jpa.JpaSystemException: org.hibernate.TransactionException: commit failed; nested exception is javax.persistence.PersistenceException: org.hibernate.TransactionException: commit failed
 

다음과 유사한 메시지가 tabsvc - tabadmin -java.log 파일에 기록됩니다.

Caused by: org.postgresql.util.PSQLException: ERROR: insert or update on table "users" violates foreign key constraint "users_system_user_id_fkey"
Detail: Key (system_user_id)=(-39840) is not present in table "system_users".

Cause

사용자가 Tableau Cloud 원본 사이트에 존재하지만 대상 사이트의 Active Directory에 존재하지 않기 때문에 "insert or update on table "users" violates foreign key constraint("users" 테이블에 대한 삽입 또는 업데이트가 외래 키 제약 조건을 위반함)" 오류가 발생합니다.
솔루션
대상 인스턴스에서 Tableau Server 리포지토리에 대한 액세스를 사용하도록 설정하고 Tableau Desktop을 사용하여 Tableau Server(PostgreSQL) 리포지토리에 연결합니다. 자세한 내용은 Tableau Server 리포지토리를 사용한 데이터 수집을 참조하십시오.
      
Tableau Server 리포지토리에 연결되면 다음 단계를 수행합니다.
  1. "system_users" 테이블을 데이터 패널로 끌어옵니다.
  2. 다른 데이터 원본을 추가하려면 "추가" 단추를 클릭합니다.
  3. 원본 Tableau Cloud 사이트에서 사용자 매핑 파일에 대한 연결을 추가합니다.
  4. 매핑 파일의 "Target Name" 간에 "Name"(Postgres에 위치)에 대한 Left 조인을 만듭니다.
  5. "시트 1"을 클릭하고 "Name" 및 "Target Name"을 행으로 끌어옵니다.
  6. 왼쪽 열(Name)에서 "Null" 값을 찾습니다.
  7. 이러한 사용자는 Active Directory에 존재하지 않습니다.

1. 가능한 경우 추가 Tableau Cloud 사용자를 기존 Active Directory 계정에 매핑하거나 매핑을 위해 임시 Active Directory 계정을 만듭니다.
  • 가져온 후 콘텐츠를 다시 할당하고 계정을 제거할 수 있습니다.
2. Tableau Cloud 사이트에서 추가 사용자를 제거하고 추가 사이트 내보내기를 요청합니다.
추가 자원
기존 사용자에 매핑할 수 있는 경우 고객 솔루션 부서에서 다른 사이트 가져오기를 요청하는 것보다 시간이 더 적게 걸릴 수 있습니다. 


Knowledge 기사 번호

001471452

 
로드 중
Salesforce Help | Article