Bitcoin Forum
June 20, 2024, 10:51:42 PM *
News: Voting for pizza day contest
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: [Guida][Ethereum] Come cancellare una transazione in pending  (Read 257 times)
fivemarcus (OP)
Member
**
Offline Offline

Activity: 84
Merit: 10

"Highest ROI crypto infrastructure"


View Profile
December 06, 2017, 08:40:10 PM
 #1

Ciao,
in questo periodo che CryptoKitties ha innalzato notevolmente il numero di transazioni sulla blockchain, ho riscontrato non poche difficoltà e mi sono ritrovato con transazioni che restavano in pending per giorni, ed anche se provavo a fare una nuova transazione con gas molto alto, la nuova transazione non andava a buon fine.

L'unica soluzione è cancellare la transazione in pending alla quale abbiamo dato troppo poco gas, ma come fare?

Vi posto una guida che mi ha aiutato a risolvere il problema sperando che sia utile anche a voi:

https://medium.com/@marco.fucito/ethereum-come-cancellare-una-transazione-in-attesa-36fb55dd4ebc

tantoro
Newbie
*
Offline Offline

Activity: 3
Merit: 0


View Profile
December 28, 2017, 12:12:33 PM
 #2

Ottima guida !

Quindi una volta che la transazione precedente viene eliminata i fondi della prima tranazione  tornano al wallet , giusto?
asdlolciterquit
Hero Member
*****
Offline Offline

Activity: 1666
Merit: 565


View Profile
December 28, 2017, 02:06:57 PM
 #3

giusto per capire meglio questo concetto del gas: in pratica sono semplicemente come le fee che si hanno con il btc? E anche in questo caso, più sono alte, più è probabile che la propria transazione venga elaborata prima.. è corretto?

Quali sono quindi le differenze, se ci sono, tra gas e le "normali" fee?
alex88
Member
**
Offline Offline

Activity: 78
Merit: 10


View Profile
December 28, 2017, 04:43:31 PM
 #4

giusto per capire meglio questo concetto del gas: in pratica sono semplicemente come le fee che si hanno con il btc? E anche in questo caso, più sono alte, più è probabile che la propria transazione venga elaborata prima.. è corretto?

Quali sono quindi le differenze, se ci sono, tra gas e le "normali" fee?
mi accodo alla domanda

▒ NOW token ▒ by ChangeNOW ▒ Get the WIN! ▒
ChangeNOW - an instant Non-custodial Exchange Service  (( changenow.io ))
Whitepaper  ▓  Telegram  ▓  Twitter  ▓  Facebook  ▓  Medium  ▓  Reddit  ▓  Bounty Thread
JGreg96
Full Member
***
Offline Offline

Activity: 602
Merit: 144



View Profile
December 28, 2017, 05:57:36 PM
 #5

giusto per capire meglio questo concetto del gas: in pratica sono semplicemente come le fee che si hanno con il btc? E anche in questo caso, più sono alte, più è probabile che la propria transazione venga elaborata prima.. è corretto?

Quali sono quindi le differenze, se ci sono, tra gas e le "normali" fee?

Non proprio, le fee su ethereum si calcolano con gas price (misurato in gwei = 10^-9ETH)) e gas limit. Si può immaginare il gas limit come il costo della benzina e il gas price come quanta benzina metti. Il costo massimo della fee è pari al prodotto dei 2 valori impostati. Ho detto costo massimo perchè la rete può usare meno gas (rispetto al gas limit) per processare una transazione e quindi spendere globalmente di meno. Questo dipende dall' intasamento della rete ethereum, dal ricevente (se è un normale account o uno smart contract) e se si sta mandando eth o token. I valori ottimali si possono trovare su ethgasstation.info. Da qui si possono distinguere 4 casi:

-gas price e gas limit alti: transazione processata quasi subito e molto probabilmente si sta interagendo con uno smart contract
-gas price alto e gas limit basso: transazione processata subito se interagisco con account ethereum mandando ethereum altrimenti potrebbe non essere inclusa in un blocco se interagisci con smart contract
-gas price basso e gas limit alto: transazione processata lentamente ma si interagisce con smart contract
-gas price e gas limit basso: transazione processata lentamente con account ethereum

BTCBTCBTC
asdlolciterquit
Hero Member
*****
Offline Offline

Activity: 1666
Merit: 565


View Profile
December 28, 2017, 07:26:21 PM
 #6

giusto per capire meglio questo concetto del gas: in pratica sono semplicemente come le fee che si hanno con il btc? E anche in questo caso, più sono alte, più è probabile che la propria transazione venga elaborata prima.. è corretto?

Quali sono quindi le differenze, se ci sono, tra gas e le "normali" fee?

Non proprio, le fee su ethereum si calcolano con gas price (misurato in gwei = 10^-9ETH)) e gas limit. Si può immaginare il gas limit come il costo della benzina e il gas price come quanta benzina metti. Il costo massimo della fee è pari al prodotto dei 2 valori impostati. Ho detto costo massimo perchè la rete può usare meno gas (rispetto al gas limit) per processare una transazione e quindi spendere globalmente di meno. Questo dipende dall' intasamento della rete ethereum, dal ricevente (se è un normale account o uno smart contract) e se si sta mandando eth o token. I valori ottimali si possono trovare su ethgasstation.info. Da qui si possono distinguere 4 casi:

-gas price e gas limit alti: transazione processata quasi subito e molto probabilmente si sta interagendo con uno smart contract
-gas price alto e gas limit basso: transazione processata subito se interagisco con account ethereum mandando ethereum altrimenti potrebbe non essere inclusa in un blocco se interagisci con smart contract
-gas price basso e gas limit alto: transazione processata lentamente ma si interagisce con smart contract
-gas price e gas limit basso: transazione processata lentamente con account ethereum

Per prima cosa, grazie della risposta!

non sembra di immediata comprensione calcolare effettivamente il costo della transazione. Immagino ci sia un motivo per cui è stato messo in piedi questo meccanismo.

Mi sembra di capire poi che se si interagisce con uno smart contract allora il gas limit è per definizione alto? Quindi si spende di più?
JGreg96
Full Member
***
Offline Offline

Activity: 602
Merit: 144



View Profile
December 28, 2017, 08:36:12 PM
 #7


Per prima cosa, grazie della risposta!

non sembra di immediata comprensione calcolare effettivamente il costo della transazione. Immagino ci sia un motivo per cui è stato messo in piedi questo meccanismo.

Mi sembra di capire poi che se si interagisce con uno smart contract allora il gas limit è per definizione alto? Quindi si spende di più?

Sinceramente mi trovo meglio con questo metodo rispetto ai BTC/kb di una transazione in bitcoin. Comunque si, in generale interagire con uno smart contract costa di più in termini di gas limit (forse perche richiede più risorse da parte della rete e un altro utente più preparato di me potrebbe spiegare meglio questo aspetto): per una transazione in eth il gas limit standard è 21000; se interagisci con uno SC di solito si mette 250000, se mandi i token si ha un gas limit variabile da 30000/40000 in su.
Inoltre non è detto che si spenda di più perche magari mandare ether ad un indirizzo "intasato" (ovvero impostare 40/60 Gwei altrimenti la transazione non viene convalidata) costa di più che mandare eth ad uno smart contract "libero" (dove la transazione viene convalidata anche con 0.5Gwei) però in generale non vale questa cosa

BTCBTCBTC
asdlolciterquit
Hero Member
*****
Offline Offline

Activity: 1666
Merit: 565


View Profile
December 29, 2017, 09:37:28 AM
 #8


Per prima cosa, grazie della risposta!

non sembra di immediata comprensione calcolare effettivamente il costo della transazione. Immagino ci sia un motivo per cui è stato messo in piedi questo meccanismo.

Mi sembra di capire poi che se si interagisce con uno smart contract allora il gas limit è per definizione alto? Quindi si spende di più?

Sinceramente mi trovo meglio con questo metodo rispetto ai BTC/kb di una transazione in bitcoin. Comunque si, in generale interagire con uno smart contract costa di più in termini di gas limit (forse perche richiede più risorse da parte della rete e un altro utente più preparato di me potrebbe spiegare meglio questo aspetto): per una transazione in eth il gas limit standard è 21000; se interagisci con uno SC di solito si mette 250000, se mandi i token si ha un gas limit variabile da 30000/40000 in su.
Inoltre non è detto che si spenda di più perche magari mandare ether ad un indirizzo "intasato" (ovvero impostare 40/60 Gwei altrimenti la transazione non viene convalidata) costa di più che mandare eth ad uno smart contract "libero" (dove la transazione viene convalidata anche con 0.5Gwei) però in generale non vale questa cosa

E' che mi sembra difficile calcolare quanto effettivamente spendo per una transazione. Con i btc alla fine ho il valore in satoshi, mi riesco a fare un'idea. Con gli eth come si fa?
JGreg96
Full Member
***
Offline Offline

Activity: 602
Merit: 144



View Profile
December 29, 2017, 12:02:38 PM
 #9

Con ethereum ti prefissi quanto vorresti spendere per una transazione (per esempio 0.0004 eth), lo dividi per il gas limit che imposti (in base a sc, account ethereum ecc e supponiamo 250000) e quindi il gas che devo impostare sarà 0.0004÷250000×10^9=1.6Gwei. quindi impostando gas limit=250000 e gas price=1.6Gwei sei sicuro di spendere al massimo 0.0004 eth per transazione però ovviamente il tutto va contestualizzato con lo stato della rete (come in bitcoin) e se necessario aumenti il gas price (e non il gas limit) aumentando anche il possibile costo finale della transazione (perche può essere che venga usato meno gas, rispetto al gas limit e quindi spenderesti di meno).

BTCBTCBTC
asdlolciterquit
Hero Member
*****
Offline Offline

Activity: 1666
Merit: 565


View Profile
December 29, 2017, 08:16:12 PM
 #10

Con ethereum ti prefissi quanto vorresti spendere per una transazione (per esempio 0.0004 eth), lo dividi per il gas limit che imposti (in base a sc, account ethereum ecc e supponiamo 250000) e quindi il gas che devo impostare sarà 0.0004÷250000×10^9=1.6Gwei. quindi impostando gas limit=250000 e gas price=1.6Gwei sei sicuro di spendere al massimo 0.0004 eth per transazione però ovviamente il tutto va contestualizzato con lo stato della rete (come in bitcoin) e se necessario aumenti il gas price (e non il gas limit) aumentando anche il possibile costo finale della transazione (perche può essere che venga usato meno gas, rispetto al gas limit e quindi spenderesti di meno).

ok grazie mille ora è più chiaro! certo, bisogna fare un po' di calcoli e impratichirsi (al limite ci si fa la formuletta su excel Cheesy).
Una domanda: ma in quali casi può venire usato meno gas rispetto a quanto impostato?
JGreg96
Full Member
***
Offline Offline

Activity: 602
Merit: 144



View Profile
December 29, 2017, 08:45:15 PM
 #11

Se la rete è poco intasata, può essere usato meno gas oppure se imposti un gas limit troppo alto (mi è capitato di impostare un gas limit di 50000 e spenderne circa 30000)

Un esempio pratico si ha qui: come vedi hanno impostato gas limit = 90000 ma il gas usato è stato di 21000 come una normale transazione ethereum

BTCBTCBTC
asdlolciterquit
Hero Member
*****
Offline Offline

Activity: 1666
Merit: 565


View Profile
December 30, 2017, 11:02:27 AM
 #12

Se la rete è poco intasata, può essere usato meno gas oppure se imposti un gas limit troppo alto (mi è capitato di impostare un gas limit di 50000 e spenderne circa 30000)

Un esempio pratico si ha qui: come vedi hanno impostato gas limit = 90000 ma il gas usato è stato di 21000 come una normale transazione ethereum

perfetto, sei stato molto chiaro. Grazie per l'aiuto.
In ogni caso, vedendo il tuo link il costo delle transazioni è veramente basso! (0,30$). Anche raddoppiandolo siamo sotto i 50 centesimi di euro che, relativamente parlando (ovvero non nel caso di transazioni per comprare un caffè o simili) è ampiamente gestibile.

C'è un modo per sapere quanto la rete è congestionata? C'è una mempool anche su eth?
lukax8
Sr. Member
****
Offline Offline

Activity: 1554
Merit: 297


View Profile WWW
December 30, 2017, 12:14:55 PM
 #13

Qui https://ethgasstation.info/index.php puoi vedere quanto è congestionata le rete ethereum e stabilire in qualsiasi momento quanto è il gas price consigliato per inserire la transazione in un blocco in un determinato periodo di tempo

K-
Member
**
Offline Offline

Activity: 98
Merit: 10


View Profile
December 30, 2017, 11:43:12 PM
 #14

Ciao,
complimenti per l'articolo. Credo sia una piccola guida utile per chiunque  Smiley

fivemarcus (OP)
Member
**
Offline Offline

Activity: 84
Merit: 10

"Highest ROI crypto infrastructure"


View Profile
January 03, 2018, 10:35:25 AM
 #15

Ottima guida !

Quindi una volta che la transazione precedente viene eliminata i fondi della prima tranazione  tornano al wallet , giusto?

Grazie per i complimenti Cheesy

Un bonifico bancario ti sottrae i fondi prima di processare la transazione, in ethereum i fondi ti vengono sottratti solo a transazione eseguita, quindi sse la stessa viene annullata, i fondi non ti verranno mai sottratti.
Quando effettuai la seconda transazione con un Gas Price superiore e lo stesso numero di nounce, tale transazione sarà gestita più in fretta e dato che per le regole di ETH non è possibile processare una transazione con lo stesso numero di nounce di una già processata, la stessa sarà dunque sarà annullata

Ciao,
complimenti per l'articolo. Credo sia una piccola guida utile per chiunque  Smiley

Grazie sono molto felice che la abbiate trovata utile

steplaza
Newbie
*
Offline Offline

Activity: 175
Merit: 0


View Profile
January 03, 2018, 03:43:25 PM
 #16

Ciao
grazie del link e spiegazioni utili

che succede invece a una transazione che è andata in Fail per "out-of-gas"?

Quelle fee ritornano nel wallet o sono perse?

JGreg96
Full Member
***
Offline Offline

Activity: 602
Merit: 144



View Profile
January 03, 2018, 04:22:42 PM
 #17

Ciao
grazie del link e spiegazioni utili

che succede invece a una transazione che è andata in Fail per "out-of-gas"?

Quelle fee ritornano nel wallet o sono perse?



Dipende:
-Gli SC hanno la possibilità di non far spendere il gas se la transazione non è andata a buon fine, ma questo dipende se lo SC è stato scritto con quella funzione (non mi ricordo il nome  Roll Eyes) o meno, in caso contrario, si spende tutto il gas.
-Se stai interagendo con un account ethereum "normale", dovresti aver speso tutto il gas che avevi messo a disposizione.

Di solito si dà un "out-of-gas" quando uno dei due parametri (gas limit/gas price) è sballato ma vedendo lo stato della rete adesso è probabile che abbia messo pochi Gwei.

BTCBTCBTC
facile
Jr. Member
*
Offline Offline

Activity: 209
Merit: 7


View Profile
January 04, 2018, 11:13:49 PM
 #18

Ciao,
in questo periodo che CryptoKitties ha innalzato notevolmente il numero di transazioni sulla blockchain, ho riscontrato non poche difficoltà e mi sono ritrovato con transazioni che restavano in pending per giorni, ed anche se provavo a fare una nuova transazione con gas molto alto, la nuova transazione non andava a buon fine.

L'unica soluzione è cancellare la transazione in pending alla quale abbiamo dato troppo poco gas, ma come fare?

Vi posto una guida che mi ha aiutato a risolvere il problema sperando che sia utile anche a voi:

https://medium.com/@marco.fucito/ethereum-come-cancellare-una-transazione-in-attesa-36fb55dd4ebc



Ti ringrazio,la guida che hai postato mi è stata utilissima proprio in questo istante Smiley
steplaza
Newbie
*
Offline Offline

Activity: 175
Merit: 0


View Profile
January 05, 2018, 12:55:00 PM
 #19

Ciao
grazie del link e spiegazioni utili

che succede invece a una transazione che è andata in Fail per "out-of-gas"?

Quelle fee ritornano nel wallet o sono perse?



Dipende:
-Gli SC hanno la possibilità di non far spendere il gas se la transazione non è andata a buon fine, ma questo dipende se lo SC è stato scritto con quella funzione (non mi ricordo il nome  Roll Eyes) o meno, in caso contrario, si spende tutto il gas.
-Se stai interagendo con un account ethereum "normale", dovresti aver speso tutto il gas che avevi messo a disposizione.

Di solito si dà un "out-of-gas" quando uno dei due parametri (gas limit/gas price) è sballato ma vedendo lo stato della rete adesso è probabile che abbia messo pochi Gwei.

Ah, grazie dell info. Quando mi è capitato era uno SC in effetti, sembrerebbe che l unico modo rudimentale da etherscan sia di fare la somma delle transazioni e paragonarla con l'account balance..
Scoiattolo
Newbie
*
Offline Offline

Activity: 63
Merit: 0


View Profile
January 06, 2018, 07:42:34 AM
 #20

Mi è capitato di doverla usare giusto ieri e l'ho trovata cercando su google, ma vedo il thread solo ora, ottimo consiglio
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!