DynamoDB ReplicaNotFoundException

TL;DR — 업데이트하거나 제거하려는 지역 복제본이 이 전역 테이블의 일부가 아닙니다. 일반적으로 잘못된 지역 이름, 이미 제거된 복제본 또는 다른 진행 중인 복제본 업데이트를 경쟁하는 호출입니다. DescribeTable로 현재 복제본을 확인한 다음 존재하는 복제본을 대상으로 삼습니다.

무엇을 의미하는가

ReplicaNotFoundException: The specified replica is no longer part of the global table.

전역 테이블 작업(UpdateGlobalTable 또는 ReplicaUpdates/Delete이 포함된 UpdateTable)은 AWS 리전별로 복제본을 처리합니다. 이 HTTP 400은 이름을 지정한 지역이 현재 전역 테이블의 복제본이 아님을 의미합니다. 실제 복제본을 대상으로 할 때까지 클라이언트 측에서 재시도할 수 없습니다.

왜 발생하는가

  • 잘못된 지역 코드 — 복제본이 us-east-1에 있거나 추가된 적이 없는 지역인 경우 us-east-2입니다.
  • 복제본이 이미 제거됨 — 이전 업데이트가 이미 테이블에서 삭제된 지역에 대한 삭제입니다.
  • 중복 복제본 변경 — 테이블이 이전 변경으로부터 아직 UPDATING인 동안에는 UpdateTable을 실행할 수 없으며, AWS는 각 복제본 추가/제거에 대해 별도의 요청을 발행할 것을 권장합니다. 레이싱 자동화는 이미 제거된 다른 작업의 복제본을 대상으로 할 수 있습니다.
  • 기본 테이블과 복제본 혼동 — 이 테이블의 복제본을 호스팅하지 않는 지역에서 작동합니다.
  • 버전 혼동 — 레거시 버전 2017.11.29(GlobalTable)과 현재 2019.11.21(replica-on-table) API를 혼합합니다.

어떻게 해결하는가

  1. 현재 복제본과 해당 상태를 나열합니다.

    aws dynamodb describe-table --table-name <Table> \
      --query "Table.Replicas[].{Region:RegionName,Status:ReplicaStatus}"
  2. 실제로 목록에 있는 지역을 타겟팅 — 지역 코드를 정확하게 복사하세요.

  3. 한 번에 하나의 복제본을 변경합니다. 다음 업데이트 전에 테이블이 ACTIVE(그리고 이전 추가/제거가 완료될 때까지)로 돌아갈 때까지 기다립니다.

  4. 이미 사라진 복제본을 제거하시겠습니까? 할 일이 없습니다. ReplicaNotFoundException을 이미 삭제가 완료된 것으로 처리하십시오.

  5. 현재(2019.11.21) API를 사용 — 레거시 글로벌 테이블 API가 아닌 UpdateTable ReplicaUpdates를 통해 복제본을 관리합니다.

여러 지역에 걸쳐 테이블을 관리하시나요? DynoTable desktop app에는 각 테이블의 복제본과 해당 상태가 표시되므로 실제로 전역 테이블의 일부인 지역에서 작업을 수행할 수 있습니다.

먼저 DynoTable에서 확인

DynoTable에서 테이블을 열고 UpdateTable ReplicaUpdates를 실행하기 전에 실제로 존재하는 지역에 대한 테이블 통계/복제본 목록을 확인하세요. ⌘P로 프로필을 전환하면 전역 테이블을 소유한 계정을 볼 수 있습니다. 복제본 영역이 사라지면 DynoTable은 이를 생략합니다. 클릭할 수 있는 오래된 콘솔 카드가 없습니다.

라이브 목록과 지역 코드를 대조 확인한 후 IaC 또는 CLI에서 제어 영역 변경을 다시 실행하세요. 복제본에 대한 일상적인 읽기의 경우 지역당 하나의 DynoTable 프로필을 유지하고 ARN을 추측하는 대신 ⌘1⌘9로 전환합니다. query builder은 활성 프로필 영역에 유지되므로 us-east-1 쿼리와 us-west-2 테이블 이름을 혼합하지 마십시오.

출처

관련 오류

참고 자료

위에 링크된 공식 AWS 문서를 기준으로 2026년 7월 13일에 마지막으로 확인되었습니다.

Console 없이 DynamoDB 작업하기

DynamoDB로는 실행할 수 없는 진짜 SQL(JOINs, GROUP BY, 집계)을 실행하는 빠른 DynamoDB 데스크톱 클라이언트. 시각적 편집과 여러분 자신의 Bedrock 키로 동작하는 AI 에이전트를 제공합니다.

30일 무료 체험, 신용카드 불필요 — 이후 기간 제한 없는 무료 요금제.