Mit csináljunk, ha beragad egy tranzakciónk az Ethereum hálózaton? #ethereumtudas
Mit csináljunk, ha beragad egy tranzakciónk az Ethereum hálózaton? #ethereumtudas
Megesik olykor, hogy az ember kicsit alálövi a gas price-t egy ethereumos utalásnál, az utalni kívánt összeg pedig jól elakad az éterben (értitek?! Ethereum — éter, na mindegy). Szerencsére ilyenkor sem kell kétségbeesni, ne adj isten levetni magunkat a legközelebbi hídról, mert elbuktuk a család éves költségvetését!
Az Ethereum hálózaton minden egyes utalás egy egyedi sorszámot kap, ez a nonce. Ha Etherscan-ben megnéztek bármilyen tranzakciót, ott lehet látni alul a nonce-t, ami azt mutatja, hogy ez a küldő cím hányadik tranzakciója. Ami ebből a számunkra lényeges, hogy 2 tranzakció nem létezhet a rendszerben azonos küldőtől ugyanolyan nonce-al. Ha tehát sikeresen lefut egy tranzakció egy nonce-al, az az összes másik ugyanolyan nonce-al rendelkező tranzakciót érvényteleníti. Innen már kb. látszik a megoldás: egyszerűen be kell dobnunk a rendszerbe egy tranzakciót ugyanazzal a nonce-al, ezzel kiütve a beragadt tranzakciót. A kérdés már csak az, hogy hogyan lehet tranzakciót generálni megadott nonce-al?
Gabriel: A cikk apropóját egyébként az adta, hogy egyszer az egyik pool-nál nekem valaki túl alacsony gas price-ot adott meg egy 0.3 ETH-s utalásra és több mint 170 ott van beragadva az összeg. Ez a cikk, hála Lacinak megadja a megoldást a problémára. Egy tipp: ha nem tudod milyen gas, gwei értéket adj meg az utalásnál érdemes segítségül hívni a https://ethgasstation.info weboldalt, ahol mindg az Ethereum hálózat épp aktuális forgalmához számolt ideális értékeket találod.
Ehhez egy kis trükkhöz kell folyamodni. A MyEtherWallet rendelkezik egy offline tranzakció opcióval. Itt meg lehet adni az új tranzakció adatait, amivel felül szeretnénk vágni a régit. A nonce-t kinézhetjük az Etherscan-ből hozzá. Az összeállított tranzakció aláírásához importálnunk kell a privát kulcsunkat (MetaMask-al nekem nem működött a dolog, a többi opciót nem próbáltam), majd aláírni a tranzakciót. Az aláírt tranzakciót alul a ‘Send Transaction’ gombbal küldhetjük be. Ezután már nincs más dolgunk, mint ujjakat keresztbe, és drukkolni, hogy az új tranzakció sikeresen kiüsse a régit.
Forrás: https://www.reddit.com/r/EtherDelta/comments/72tctz/guide_how_to_cancel_a_pending_transaction/
Kövess minket!
Az #ethereumtudas cikksorozat előző és következő részeiben az okos szerződésekkel ismerkedünk meg közelebbről, miközben megtanuljuk azt is, hogy hogyan készíthetünk ilyeneket mi magunk is.
Hogy mindez tényleg felfogható lehessen a cikksorozatot ketten írjuk. A programozói részekért jómagam Laszlo Fazekas (fejlesztő) felelek, azért pedig, hogy tényleg minden érthető legyen Gabriel Varaljay (marketing) “játssza a naivat” (tesz fel kérdéseket, magyarázza újra a feldolgozott anyagot).
Amennyiben érdekel ez a témakör érdemes feliratkoznod ERRE a medium csatornára, de követheted az ENVIENTA Magyarországot Twitteren, vagy akár csatlakozhatsz a tematikus Facebook csoportunkhoz is.