Każdy z Was kiedyś pewnie zastanawiał się, czy mogę anulować już wysłaną transakcję Ethereum, lub co mogę zrobić, kiedy status pending wyświetla się już od 30 minut i nie chce się zmienić. Otóż, po tym artykule będziecie wiedzieli co zrobić, aby rozwiązać każdą z tych sytuacji 😊

Jak działają transakcję na Ethereum

A więc, szybki telegraficzny skrót jak działają transakcję w sieci Ethereum.

Na początku po opublikowaniu transakcji do sieci Ethereum – wysłaniu transferu –  z jakimiś parametrami Gas Price oraz Gas Limit, wasza transakcja wpada do tak zwanego transaction poola. Jest to swoisty zbiornik ze wszystkimi nowymi transakcjami, które są publikowane i mają być procesowane przez Ethereum.

Transaction Pool wraz z nowo tworzącym się blokiem, który zostanie zapełniony transakcjami z poola.

Z tego zbiornika, minerzy podczas tworzenia nowego bloku z transakcjami wybierają najbardziej dla nich opłacalne – czyli te, które przeznaczają najwięcej opłaty na fee dla górnika – w efekcie czego, wrzucają je do nowo tworzącego się bloku. Te transakcje, które są najbardziej opłacalne (czyt. Posiadają najwyższe opłaty dla górnika) są wybierane z transaction pool jako pierwsze.

Najbardziej opłacalne transakcje, zostaną wydobyte jako pierwsze w nowym bloku 1434.

Transakcje, które mają niższe fees, pozostają w nim, aż do momentu w którym przepustowość sieci (ilość bardziej opłacalnych transakcji) się zmniejszy i wtedy dopiero zostaną one złowione przez górników.

Pozostałe transakcje z niższym fee dla górnika ciągle pozostają w transaction pool, aż do momentu zmniejszenia przepustowości sieci Ethereum.

W jaki sposób wyciągnąć naszą transakcję ze statusem pending, aby w końcu została wysłana?

Powyższy widok jest bardzo denerwujący, kiedy wasza transakcja ma status pending od kilkudziesięciu minut, a wy potrzebujecie wykonać transfer bardzo szybko. Niestety, Ethereum nie udostępnia przycisku anuluj. Trzeba poradzić sobie w inny sposób. Bardzo prosty sposób. Wystarczy nadpisać transakcję, ustawiając jej minimum 10% większy Gas, niż poprzednio. Jeżeli transakcja wpadła już do transaction poola, to dostała określone wartości nonce oraz wpisane przez Ciebie adresy. Na ich podstawie jest ona identyfikowana i niepowtarzalna. Z tego tytułu, możemy ponownie wysłać tą transakcję z takimi samymi parametrami, jedynie zmieniając wartość GWEI. Mianowicie, jeśli Twoja pierwsza transakcja została wysłana z GWEI = 4, to teraz ponownie wyślij tą transakcję, na ten sam adres i taką samą kwotą ETH, jednakże zmień GWEI na np. preferowane GWEI = 21. Powinno to nadpisać transakcję, która wpadnie do transaction poola i zostanie złowiona przez górnika szybko. Jeśli zostanie złowiona transakcja z wyższym GWEI, wtedy ta z niższym przestanie istnieć ponieważ mają te samem Nonce i ta bardziej opłacalna została już wydobyta w określonym bloku.

W jaki sposób anulować transakcję?

Poprzednio napisałem, że Ethereum nie udostępnia przyciska anuluj. I jest to ciągle prawda, jednakże można obejść brak przycisku prostym zabiegiem – nadpisaniem transakcji.

Kroki, które należy wykonać są takie same jak opisane wyżej. Także ustalamy większe GWEI, ale tym razem zmieniamy wartość transakcji (ilość przesyłanych ETH) na 0. W takim przypadku, jeśli nadpiszemy nasza transakcję, transakcją na ten sam adres z wartością przesyłanych ETH = 0 oraz większym GWEI, ciągle będzie musiała zostać wydobyta przez górnika, jednakże z Twojego konta nie zostanie pobrany żaden Ether (oprócz tego, który jest opłatą za transakcję dla górnika).

Jednym słowem – jeśli nie chcecie kombinować i się stresować, dobrze posprawdzajcie dane w transakcji oraz najbardziej optymalny GWEI w celu najszybszego przesłana Etheru w sieci Ethereum.

Do tego zadania polecam stronę – http://ethgasstation.info/

IamHellToday

0 komentarzy:

Dodaj komentarz

Chcesz się przyłączyć do dyskusji?
Feel free to contribute!

Dodaj komentarz