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.
# what the engine actually returns, reproduced against the live DynamoDB service:
GlobalTableNotFoundException: Global table not found: Global table with name: 'no-such-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
Sürümü belirleyin:
aws dynamodb describe-table --table-name orders \ --query 'Table.GlobalTableVersion' # "2019.11.21" → use DescribeTable/UpdateTable, not the legacy APIsGüncel sürüm çoğaltmalarını
UpdateTablearacılığıyla yönetin:aws dynamodb update-table --table-name orders \ --replica-updates '[{"Create": {"RegionName": "eu-west-1"}}]'ve onları
describe-global-tableyerinedescribe-table(Replicasalanı) ile inceleyin.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.
Sıfırdan oluşturma: tabloyu oluşturun, sonra
UpdateTablearacılığıyla çoğaltmalar ekleyin — yeni koddaCreateGlobalTable'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.
DynoTable'da boyutu kontrol edin
DynoTable her Bölgeye tek pencereden bağlanır — ⌘P ile geçiş yapın ve kopyaların mevcut olup olmadığını ve veri sunup sunmadığını görmek için her profilde aynı tablo adını açın. Tablo kenar çubuğu, eski global tablo 15'leri çağırmadan çoğaltma meta verilerini gösterir.
Bir kopya eklemeden önce, çoğaltılmış yazma maliyetini pricing calculator ile tahmin edin. Ayarlar → Profiller altında her Bölgeyi yapılandırın ve UpdateTable replika güncellemelerini çalıştırmadan önce Bağlantıyı Test Et komutunu çalıştırın. Bkz. Connect to AWS ve Install. Eski takımlar DescribeGlobalTable'i çağırıyorsa, önce DescribeTable'de GlobalTableVersion'yi işaretleyin — Geçerli sürüm tabloları 2019.11.21 değerini döndürür ve UpdateTable aracılığıyla yönetilmelidir. Çoğaltma sağlıklı olsa bile eski 16'lar onları göremez. Geçerli sürüm tabloları için CreateGlobalTable yerine ReplicaUpdates ile UpdateTable'yı çağıracak şekilde aracı yükseltin.
Kaynaklar
- DynamoDB global tables versions (2026-07-13 tarihinde doğrulandı)
- UpdateTable — Amazon DynamoDB API Reference (2026-07-13 tarihinde doğrulandı)
İlgili hatalar
- Global table version mismatch — aynı iki nesil ayrımı, yükseltme yolundan çarpılmış.
- ReplicaNotFoundException — Bölge çoğaltma grubunun parçası değil.
- ReplicaAlreadyExistsException — Bölge zaten öyle.
- Öğrenin: DynamoDB global tables
Kaynaklar
- 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
En son 2026-07-13 tarihinde yukarıda bağlantısı verilen resmi AWS belgelerine karşı doğrulandı.