GlobalTableNotFoundException
TL;DR — DescribeGlobalTable / UpdateGlobalTable só enxergam global tables da versão 2017.11.29 (Legacy). Uma global table construída na versão 2019.11.21 (Current) — que é o que você deveria estar usando — é gerenciada como uma tabela comum com réplicas através de DescribeTable / UpdateTable, e as APIs legadas a reportam como inexistente. Verifique em qual versão você está antes de supor que a tabela desapareceu.
O que significa
GlobalTableNotFoundException: The specified global table does not exist.O DynamoDB tem duas gerações de global table com duas superfícies de API disjuntas. A geração legada (2017.11.29) registra um objeto "global table" nomeado sobre o qual DescribeGlobalTable, UpdateGlobalTable e UpdateGlobalTableSettings operam. A geração atual (2019.11.21) não tem tal objeto — as réplicas vivem na própria tabela — então essas chamadas legadas respondem com esta exceção mesmo que sua tabela replique perfeitamente bem.
Por que acontece
- A tabela é uma global table da versão atual (2019.11.21) — de longe a causa usual: a API legada simplesmente não a indexa.
- Nenhuma global table jamais foi criada com aquele nome — a tabela existe mas não tem réplicas, ou a configuração de replicação falhou antes.
- Region errada ou um erro de digitação no nome — o registro de global table legada é buscado por nome exato.
Como corrigir
Determine a versão:
aws dynamodb describe-table --table-name orders \ --query 'Table.GlobalTableVersion' # "2019.11.21" → use DescribeTable/UpdateTable, not the legacy APIsGerencie réplicas da versão atual através de
UpdateTable:aws dynamodb update-table --table-name orders \ --replica-updates '[{"Create": {"RegionName": "eu-west-1"}}]'e inspecione-as com
describe-table(o campoReplicas) em vez dedescribe-global-table.Em ferramentas legadas? Se você genuinamente opera global tables 2017.11.29, verifique o nome e a Region do registro — e planeje o upgrade para 2019.11.21, que a AWS recomenda pela flexibilidade e menor custo de escrita replicada.
Criando do zero: crie a tabela, depois adicione réplicas via
UpdateTable— não recorra aCreateGlobalTable(legado) em código novo.
Verificar a saúde das réplicas entre Regions é mais rápido com as tabelas lado a lado — o app desktop DynoTable conecta-se a cada Region de uma janela, e a calculadora de preços do DynamoDB estima custos de escrita replicada antes de você adicionar uma réplica.
Erros relacionados
- Global table version mismatch — a mesma divisão de duas gerações, atingida a partir do caminho de upgrade.
- ReplicaNotFoundException — a Region não faz parte do grupo de replicação.
- ReplicaAlreadyExistsException — a Region já faz.
- Aprenda: DynamoDB global tables
Referências
- UpdateGlobalTable — Amazon DynamoDB API Reference
- DynamoDB global tables versions (determining the version) — Amazon DynamoDB Developer Guide
- UpdateTable — Amazon DynamoDB API Reference
- CreateGlobalTable — Amazon DynamoDB API Reference
Verificado pela última vez em 2026-07-13 contra a documentação oficial da AWS vinculada acima.