Global Active Table 문제 해결

하위 테이블이 있는 테이블에 대한 지역 복제본을 생성하는 중 오류가 발생했습니다.

하위 테이블이 현재 글로벌 활성 테이블에 대해 지원되지 않으므로 하위 테이블이 있는 테이블에 대해 지역별 복제본을 생성할 수 없습니다.

지역 복제본을 추가할 때 문제 해결:

  1. 잘못된 영역이 지정된 경우 오류 발생:
    지역별 테이블 복제본에 대한 SDK API 호출에서 지정하는 영역의 이름이 잘못된 경우 다음 오류가 표시됩니다. 다른 적합한 영역을 지정해야 합니다.
    Adding replica: ca-montral-1
    java.lang.IllegalArgumentException: ADD_REPLICA: Illegal Argument: 
    ca-montral-1 isn't known to this service, and is not a valid region name
  2. 스키마를 고정하지 않고 지역 테이블 복제본을 생성하는 중 오류가 발생했습니다.

    테이블의 지역 복제본을 생성하기 전에 먼저 테이블의 스키마를 고정해야 합니다. 지역 복제본을 생성할 때 테이블의 스키마가 변경 가능 상태일 수 없습니다.

  3. 상시 무료 테이블의 지역 복제본을 생성하는 중 오류가 발생했습니다.

    상시 사용 가능 테이블은 전역 활성 테이블로 변환할 수 없습니다.

스키마 고정 시 문제 해결:

JSON 필드가 없어 오류 발생:

스키마를 고정하는 동안 일반적인 오류(아래와 같이)는 스키마에 JSON 필드가 없다는 것입니다. 테이블에 JSON 필드가 하나 이상 포함되어야 합니다.
The table's schema can't be frozen, because it does not contain a 
column of type JSON.

Global Active 테이블에 대한 유저 권한 문제 해결

영역/복제본 간에 유저 권한 차이: 한 영역에서 Global Active Table이 생성되고 다른 영역으로 복제될 때 오류가 발생할 수 있으며 테이블 생성/변경 테이블/읽기 테이블에 대한 유저 권한이 영역 간에 서로 다를 수 있습니다. 다음 상황 중 하나에서 오류가 발생할 수 있습니다.
  • 수신자 영역의 사용자에게 NOSQL_TABLE_INSPECT 권한이 없습니다.
  • 수신자 영역의 사용자에게 NOSQL_TABLE_READ 권한이 없습니다.
  • 수신자 영역의 사용자에게 NOSQL_TABLE_ALTER 권한이 없습니다.
  • 수신자 영역의 사용자에게 NOSQL_TABLE_CREATE 권한이 없습니다.
  • 테넌시가 발신자 영역 또는 수신자 영역에 읽기/쓰기/저장 용량이 부족한 경우입니다.
  • 테넌시가 발신자 영역 또는 수신자 영역에서 MAX_TABLES에 도달한 경우

Global Active 테이블 변경 문제 해결

  1. 테이블을 고정한 후 테이블의 스키마를 변경하는 중 오류 발생:
    열을 추가하거나 기존 열을 제거하여 Global Active Table의 정의를 변경하려고 하면 아래와 같이 오류가 발생합니다. 이는 Global Active 테이블의 스키마가 고정되어 변경할 수 없기 때문입니다.
    Columns can't be added, because the table's schema is frozen.
  2. 모든 지역 복제본을 삭제하지 않고 전역 활성 테이블을 삭제하는 중 오류 발생:
    현재 지역 테이블 복제본이 없는 경우에만 전역 활성 테이블을 삭제할 수 있습니다. 그렇지 않으면 아래와 같이 오류가 발생합니다. 테이블을 삭제하기 전에 지역 복제본을 먼저 삭제해야 합니다.
    The table named <tbl_name> can't be deleted, because it belongs to a set of replicas. 
    A replica table cannot be deleted before its replicas are deleted.
  3. 복제본이 있는 전역 활성 테이블에 대한 스키마 상태를 변경 가능으로 변경하는 중 오류 발생:
    글로벌 활성 테이블의 스키마를 고정 해제하고 지역 복제본이 추가된 경우 변경 가능으로 변경할 수 없습니다. 해당 오류는 다음과 같습니다. 모든 지역별 테이블 복제본을 삭제한 다음 스키마 고정을 해제할 수 있습니다.
    The table's schema can't be unfrozen, because it is a global active table with
    replicas.