Her gün veritabanımda çalıştırdığım bir toplu iş sorgusu var. Ancak, boşta kalmış gibi görünüyor ve neler olup bittiğini hata ayıklamak için çok zorlanıyorum.
Sorgu, bir şekilde sorunla ilgili olduğunu tahmin ediyorum aynı anda eklenen bir tabloda bir toplama olduğunu. (Toplama önceki günlerdeki verilerdedir, bu nedenle eklemeler sonuçları etkilememelidir.)
İpuçları
Bunu sqlalchemy kullanarak bir python betiğinin içinde çalıştırıyorum. Ancak, işlem düzeyini otomatik tamamlama olarak ayarladım, bu yüzden bir işlemin içine bir şeyler sarıldığını sanmıyorum. Öte yandan, sql terminalinde el ile çalıştırdığınızda sorgu asmak görmüyorum.
Sorgulama yoluyla
pg_stat_activity, sorgu başlangıçta veritabanına olarak gelirstate='active'. Belki 15 saniye sonra, durum 'boşta' olarak değişir ve ek olarak,xact_startolarak ayarlanırNULL. Bekleyen bayrak hiçbir zaman true değerine ayarlanmaz.Ben sqlalchemy için işlem düzeyi özdevinimli öğrenmeden önce, bunun yerine devlet dolanıyorlarmış
'idle in transaction'ziyade'idle'. Ve bu değişikliği yaptıktan sonra muhtemelen biraz daha az sıkılıyor mu?
Bunun üzerinde olduğumdan daha derine kazmak için donanımlı olmadığımı hissediyorum. Kesin bir cevap vermeden farklı eyaletler ve ilgili postgres içleri hakkında daha fazla bilgi veren herhangi bir geri bildirim çok takdir edilecektir.
COMMITişlemi sonlandırmak için hiçbir düzenleme yapılmadığı anlamına gelir . Sorununuz