Skip to main content
TOAST 컬럼, replication slot, publication, 스키마 변경, 데이터 타입 매핑 등 Postgres 복제의 작동 방식과 관련된 많은 질문은 ClickPipes for Postgres FAQ에서 다룹니다. 해당 정보는 ClickHouse Managed Postgres 마이그레이션에도 적용됩니다.

복제 중 “enum의 입력 값이 잘못되었습니다” 오류가 표시됩니다

이 오류는 원본 Postgres에 있는 enum 값이 대상 ClickHouse Managed Postgres에는 없을 때 발생합니다. 논리적 복제는 ALTER TYPE ... ADD VALUE 명령을 자동으로 전파하지 않으므로, 초기 스키마 설정 후 원본에 추가된 새 enum 값 때문에 대상에서 삽입이 실패합니다. 이 문제를 해결하려면 대상 Postgres의 enum 유형에 누락된 값을 추가하십시오:
your_enum_type을 enum 유형 이름으로, 'new_value'를 오류 메시지에 표시된 누락된 값으로 바꾸십시오.

복제 중 고유 제약 조건 또는 검사 제약 조건 위반 오류가 발생합니다

논리적 복제 중 복제 순서가 대상의 기존 제약 조건과 충돌하면 제약 조건 위반이 발생할 수 있습니다.
  • 고유 제약 조건: 변경 사항은 프라이머리 키별 최신 값을 기록하는 일괄 MERGE/UPSERT 작업으로 적용되므로, 특정 키의 작업 순서가 고유 인덱스에서 예상하는 순서와 일치하지 않을 수 있습니다. 이로 인해 MERGE가 완료된 후에는 제약 조건이 충족되더라도 트랜잭션 내에서는 일시적으로 UNIQUE 제약 조건을 위반할 수 있습니다. Postgres는 외래 키처럼 고유 인덱스 검사를 지연할 수 없으므로, 검사를 트랜잭션 종료 시점까지 미룰 방법이 없습니다. 이는 데이터 일관성에 영향을 주지 않습니다. 행 아이덴티티는 프라이머리 키로 정의되며, MERGE 로직도 동일한 프라이머리 키를 기준으로 하기 때문입니다.
  • 검사 제약 조건: 대상의 검사 제약 조건이 원본보다 더 엄격할 수 있으며, 일괄 MERGE 중간 상태가 최종 상태에서는 제약 조건을 충족하더라도 일시적으로 이를 충족하지 못할 수 있습니다. 고유 제약 조건과 마찬가지로, MERGE는 행 아이덴티티를 정의하는 프라이머리 키를 기준으로 하므로 이는 데이터 일관성에 영향을 주지 않습니다.
복제를 재개하려면 대상 Postgres에서 문제가 되는 제약 조건을 삭제하십시오:
오류 메시지에 표시된 이름으로 제약 조건의 세부 정보를 확인할 수 있습니다:
복제가 완료되고 원본가 더 이상 활성 상태가 아니면 전환 시 제약 조건을 다시 추가하십시오:
마지막 수정일 2026년 8월 14일