GlobalTableNotFoundException

TL;DR — DescribeGlobalTable / UpdateGlobalTable yalnızca sürüm 2017.11.29 (Eski) global tablolarını görür. Sürüm 2019.11.21 (Güncel) üzerine kurulmuş bir global tablo — ki kullanmanız gereken budur — DescribeTable / UpdateTable aracılığıyla çoğaltmalı normal bir tablo olarak yönetilir ve eski API'ler onu var olmuyor olarak bildirir. Tablonun gittiğini varsaymadan önce hangi sürümde olduğunuzu kontrol edin.

Ne anlama gelir

GlobalTableNotFoundException: The specified global table does not exist.

DynamoDB'nin, iki ayrık API yüzeyine sahip iki global-tablo nesli vardır. Eski (2017.11.29) nesil, DescribeGlobalTable, UpdateGlobalTable ve UpdateGlobalTableSettings'in üzerinde çalıştığı adlandırılmış bir "global tablo" nesnesi kaydeder. Güncel (2019.11.21) neslin böyle bir nesnesi yoktur — çoğaltmalar tablonun kendisinde yaşar — bu yüzden tablonuz mükemmel biçimde çoğaltılsa bile o eski çağrılar bu istisnayla yanıt verir.

Neden olur

  • Tablo güncel sürüm (2019.11.21) bir global tablodur — açık ara olağan neden: eski API onu basitçe indekslemez.
  • O adla hiç global tablo oluşturulmadı — tablo var ama çoğaltması yok ya da çoğaltma kurulumu daha önce başarısız oldu.
  • Yanlış Bölge ya da ad yazım hatası — eski global-tablo kaydı tam adla aranır.

Nasıl düzeltilir

  1. Sürümü belirleyin:

    aws dynamodb describe-table --table-name orders \
      --query 'Table.GlobalTableVersion'
    # "2019.11.21" → use DescribeTable/UpdateTable, not the legacy APIs
  2. Güncel sürüm çoğaltmalarını UpdateTable aracılığıyla yönetin:

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

    ve onları describe-global-table yerine describe-table (Replicas alanı) ile inceleyin.

  3. Eski araçlarda mısınız? Gerçekten 2017.11.29 global tabloları işletiyorsanız, kaydın adını ve Bölgesini doğrulayın — ve AWS'nin esneklik ve daha düşük çoğaltılmış-yazma maliyeti için önerdiği 2019.11.21'e yükseltmeyi planlayın.

  4. Sıfırdan oluşturma: tabloyu oluşturun, sonra UpdateTable aracılığıyla çoğaltmalar ekleyin — yeni kodda CreateGlobalTable'a (eski) uzanmayın.

Çoğaltma sağlığını Bölgeler arasında kontrol etmek, tablolar yan yanayken daha hızlıdır — DynoTable masaüstü uygulaması tek bir pencereden her Bölgeye bağlanır ve DynamoDB fiyatlandırma hesaplayıcısı bir çoğaltma eklemeden önce çoğaltılmış yazma maliyetlerini tahmin eder.

İlgili hatalar

References

En son 2026-07-13 tarihinde yukarıda bağlantısı verilen resmi AWS belgelerine karşı doğrulandı.

Console olmadan DynamoDB ile çalışın

DynoTable, DynamoDB için hızlı bir masaüstü istemcisidir — tablolara göz atın, SQL tarzı sorgular çalıştırın ve item'ları yerel olarak düzenleyin.