GlobalTableNotFoundException

TL;DR — DescribeGlobalTable / UpdateGlobalTable ne voient que les tables globales de version 2017.11.29 (Legacy). Une table globale bâtie sur la version 2019.11.21 (Current) — celle que tu devrais utiliser — est gérée comme une table régulière avec des réplicas via DescribeTable / UpdateTable, et les API legacy la signalent comme inexistante. Vérifie sur quelle version tu es avant de supposer que la table a disparu.

Ce que ça signifie

GlobalTableNotFoundException: The specified global table does not exist.

DynamoDB a deux générations de tables globales avec deux surfaces d'API disjointes. La génération legacy (2017.11.29) enregistre un objet « table globale » nommé sur lequel opèrent DescribeGlobalTable, UpdateGlobalTable et UpdateGlobalTableSettings. La génération current (2019.11.21) n'a pas d'objet de ce type — les réplicas vivent sur la table elle-même — donc ces appels legacy répondent par cette exception même si ta table se réplique parfaitement bien.

Pourquoi ça arrive

  • La table est une table globale de version current (2019.11.21) — de loin la cause habituelle : l'API legacy ne l'indexe tout simplement pas.
  • Aucune table globale n'a jamais été créée sous ce nom — la table existe mais n'a pas de réplicas, ou la configuration de la réplication a échoué plus tôt.
  • Mauvaise région ou faute de frappe dans le nom — l'enregistrement de la table globale legacy est recherché par nom exact.

Comment corriger

  1. Détermine la version :

    aws dynamodb describe-table --table-name orders \
      --query 'Table.GlobalTableVersion'
    # "2019.11.21" → use DescribeTable/UpdateTable, not the legacy APIs
  2. Gère les réplicas de version current via UpdateTable :

    aws dynamodb update-table --table-name orders \
      --replica-updates '[{"Create": {"RegionName": "eu-west-1"}}]'

    et inspecte-les avec describe-table (le champ Replicas) au lieu de describe-global-table.

  3. Sur de l'outillage legacy ? Si tu exploites réellement des tables globales 2017.11.29, vérifie le nom et la région de l'enregistrement — et planifie la migration vers 2019.11.21, qu'AWS recommande pour sa flexibilité et son coût d'écriture répliquée plus faible.

  4. Création depuis zéro : crée la table, puis ajoute des réplicas via UpdateTable — n'utilise pas CreateGlobalTable (legacy) dans du nouveau code.

Vérifier la santé des réplicas entre régions est plus rapide avec les tables côte à côte — l'application de bureau DynoTable se connecte à chaque région depuis une seule fenêtre, et le calculateur de tarifs DynamoDB estime les coûts d'écriture répliquée avant que tu n'ajoutes un réplica.

Erreurs liées

References

Dernière vérification le 2026-07-13 par rapport à la documentation officielle AWS liée ci-dessus.

Travaille avec DynamoDB sans la Console

DynoTable est un client de bureau rapide pour DynamoDB — parcours les tables, exécute des requêtes de style SQL et édite les items en local.