OUT_OF_ENERGY: ne anlama gelir, nasıl düzeltilir
İşleminiz yürütülürken enerjisi bitti; ağ işlemi durdurdu ve FAILED olarak işaretledi. Hiçbir şey transfer edilmedi, ancak bu sırada yakılan TRX geri gelmez. Çözüm yaklaşık bir dakika sürer: adrese 65.000 enerji yükleyin ve tekrar gönderin.Hatayı nerede görüyorsunuz
Aynı hata, nereye baktığınıza bağlı olarak farklı ifadelerle karşınıza çıkar.TronScan
İşlem sayfası, OUT OF ENERGY sonucuyla kırmızı bir FAILED durumu gösterir ve token transferi bölümü boştur.Cüzdanınız
Trust Wallet, TronLink ve diğerleri genellikle işlemin başarısız olduğunu ya da ağ ücreti için yeterli enerji veya TRX olmadığını söyler.Kodunuz
tronweb'den veya HTTP API'den gelen makbuz, receipt içinde result: 'OUT_OF_ENERGY' taşır ve işlemin kendi sonucu FAILED olarak ayarlanır.İşlem makbuzu — json{"ret": [{ "contractRet": "OUT_OF_ENERGY" }],"receipt": {"energy_usage": 0,"energy_fee": 5000000,"energy_usage_total": 50000,"net_usage": 345,"result": "OUT_OF_ENERGY"}}
energy_usage değerinin 0 olması, adresin kendi enerjisi olmadığı ve her birimin TRX yakılarak ödenmesi gerektiği anlamına gelir. energy_fee sun cinsindendir: 5.000.000 sun, hiç gerçekleşmemiş bir transfer için yakılan 5 TRX demektir ve işlem ücret limiti bu olduğu için orada durmuştur — energy_usage_total değerindeki 50.000, transferin ihtiyaç duyduğu 65.000 enerjinin altındadır.Sıklık sırasına göre üç neden
Adreste hiç enerji yok
Enerjinin ücretsiz günlük hakkı yoktur — bir adreste enerji ancak stake edilen TRX'ten veya bir devirden gelir. Enerji yoksa her USDT transferi TRX yakılarak ödenir; TRX bakiyesi veya ücret limiti 65.000 enerjinin tamamını karşılamıyorsa işlem yarı yolda ölür.Alıcı yeni bir adres çıktı
USDT tutmayan bir adrese göndermek 65.000 yerine yaklaşık 131.000 enerji tutar — sözleşmenin yeni bir bakiye kaydı oluşturması gerekir. Çoğu borsa yatırma adresi bu şekilde davranır; borsaya yapılan transferlerin daha sık başarısız olmasının nedeni budur.Ücret limiti çok düşük ayarlanmış
Ücret limiti, bir işlemin en fazla ne kadar TRX yakabileceğini sınırlar. Cüzdanlar çoğu zaman bir yıl önce cömert olan ama artık olmayan bir limiti varsayılan olarak kullanır ve işlem bu sınıra ulaştığı anda durur.Şimdi ne yapmalı
Sorunun enerji olduğunu doğrulayın
Adresi sorgulama aracında kontrol edin: şu anki enerjisini bir transferin gerektirdiği miktarla karşılaştırarak gösterir.Enerjiyi alın
Bir saatliğine 65.000 enerji kiralayın — 3,03 TRX — alıcıda henüz USDT yoksa 131.000 enerji kiralayın.Devir işlemini bekleyin
3–10 saniye içinde gelir ve TronScan'de adresin Resources sekmesinde görünür.Tekrar gönderin
Aynı transferi yeniden gönderin. Enerji yerindeyken ağ, TRX yakmak yerine devredilen enerjiyi harcar.Size mal olmadan önce yakalayın
Göndermeden önce tahmin edin — javascript// 1. What the transfer will cost, in Energyconst {energy_used: needed} = await tronWeb.transactionBuilder.estimateEnergy(usdtContract,'transfer(address,uint256)',{},[{type: 'address', value: recipient}, {type: 'uint256', value: amount}],sender,);// 2. What the address has right nowconst res = await tronWeb.trx.getAccountResources(sender);const available = (res.EnergyLimit ?? 0) - (res.EnergyUsed ?? 0);// 3. Top up before signing, never after OUT_OF_ENERGYif (available < needed) {throw new Error(`Need ${needed - available} more Energy — rent it first`);}
Sıkça sorulan sorular
OUT_OF_ENERGY ne anlama gelir?
İşlemin yürütülmeye başladığı, adresteki tüm enerjiyi ve ücret limitinin yakmaya izin verdiği tüm TRX'i tükettiği ve yine de tamamlanamadığı anlamına gelir. Ağ işlemi FAILED olarak işaretledi. Transfer gerçekleşmedi, ancak enerji ve yakılan TRX her durumda harcanmış olur.
Yakılan TRX geri gelir mi?
Hayır. TRON, bu TRX'i ağın zaten yaptığı hesaplamanın bedeli olarak yakar ve başarısız bir işlem istisna değildir. Hiç kimse — ne cüzdan, ne hizmet, ne de doğrulayıcılar — bunu iade edemez. Bundan kaçınmanın tek yolu, göndermeden önce enerjiyi hazır bulundurmaktır.
USDT gönderildi mi?
Hayır. Başarısız bir işlem hiçbir bakiyeyi değiştirmez: USDT hiç çıkmadı ve alıcı hiçbir şey almadı. Hash değerini TronScan üzerinde kontrol edin — başarısız bir transfer kırmızı bir FAILED durumu gösterir ve token hareketi yoktur.
Aynı transfer dün neden çalıştı?
Stake edilen TRX'ten gelen enerji 24 saat içinde yenilenir; bu yüzden bir adresin günde bir transfer için yeterli enerjisi olup ikincisi için hiç olmayabilir. Maliyet alıcıya da bağlıdır: alıcı zaten USDT tutuyorsa 65.000 enerji, tutmuyorsa yaklaşık 131.000 enerji.
Ücret limitini yükseltmek sorunu çözüyor — bu iyi bir fikir mi?
Hatayı durdurur ama transferi ucuzlatmaz: daha yüksek bir ücret limiti, ağın daha fazla TRX yakmasına izin verir; normal bir transfer için yaklaşık 6,85 TRX. Enerjiyi kiralamak aynı sonuç için 3,03 TRX tutar.
Bunun tekrar olmasını nasıl önlerim?
Göndermeden önce adresi kontrol edin ve enerji eksik olduğunda kiralayın. Gün boyu gönderim yapan cüzdanlar için otomatik yükleme, bakiye bir eşiğin altına düşer düşmez enerji satın alır; böylece hiçbir transfer enerjisiz başlamaz.