Cómo modificar o cancelar una transacción pendiente de Ethereum

Cómo modificar o cancelar una transacción pendiente de Ethereum

Cómo detener la transacción pendiente Ethereum

Tiempo de lectura: 5 minutosQuien no se haya equivocado nunca al enviar una transacción en una blockchain, que tire la primera piedra… Probablemente no se tire ninguna piedra, lo que indica lo importante que es saber cómo cancelar o reemplazar una transacción pendiente en Ethereum.

La pregunta contiene, en sí misma, la clave de todo este artículo. Sí, es posible reemplazar o cancelar una transacción en Ethereum, siempre y cuando la transacción esté pendiente. Una vez que una transacción es confirmada, esto significa que fue incluida en un bloque en la red y su modificación será imposible.

Cada transacción que realizamos en la red contiene un número único e irrepetible, relacionado con nuestra dirección en la blockchain o, lo que es lo mismo, con nuestro monedero. Este número, llamado “Nonce”, puede ser modificado manualmente para cancelar o reemplazar una transacción en la red.

Pero, tal vez este principio da demasiados conocimientos por conocidos. Por lo tanto, es necesario dar un paso atrás y antes de conocer el método que debemos poner en práctica, es necesario que me explaye sobre las transacciones, propiamente dichas, en la red Ethereum.

¿Cómo anulo o cancelo una transacción pendiente en Ethereum?

Si su transacción está pendiente durante un tiempo aparentemente infinito, es posible sustituirla por una nueva transacción. La forma más sencilla de hacerlo es enviando una transacción de 0 ETH a tu propia dirección con el mismo nonce y un precio de gas más alto. Esto anulará tu primera transacción.

  ¿Qué es Ethereum Name Service?

¿Cómo puedo arreglar una transacción pendiente en Ethereum?

Si su transacción se queda atascada en “pendiente”, puede volver a enviarla manualmente a la red Ethereum. Al hacerlo, está sustituyendo la transacción enviada anteriormente por una nueva. Para su nueva transacción, es libre de cambiar los detalles de la transacción como desee.

Cola de txn pendiente

No puede ser cancelada, pero puede ser “out-gassed”. Puedes coger el nonce (se puede encontrar en la tx pendiente en etherscan) y enviar otra transacción con un precio de gas más alto con el mismo nonce. Si usas un nonce diferente, ambos pueden ser minados, pero si usas el mismo nonce, sólo uno puede ser minado. Si los mineros ven ambos, deberían ser lo suficientemente inteligentes como para elegir minar el tx con el precio de gas más alto.

Aunque no es posible cancelar explícitamente una transacción, puedes invalidarla antes de que sea minada. La forma en que esto funciona es emitiendo la misma transacción utilizando el mismo nonce, pero con un precio de gas más alto. Los mineros están incentivados para procesar transacciones con tasas más altas. Si procesan la transacción más nueva, entonces la transacción antigua deja de ser válida y, por tanto, es rechazada.

  Truffle la mayor herramienta de desarrollo para Ethereum

En Ethereum, una transacción Cancel es un intento de sobrescribir una transacción actualmente pendiente con una nueva transacción. Es importante tener en cuenta que las transacciones Canceladas son una convención y no un estándar. Típicamente, una transacción Cancelada tendrá:

Tiempo de transacción Eth

La red Ethereum es un software de código abierto construido con tecnología blockchain con una serie de aplicaciones descentralizadas entre miles que impulsan el token nativo, Ether (ETH). Este token, sin embargo, puede enviarse y recibirse en todo el mundo sin necesidad de terceros.

La red, que fue conceptualizada por primera vez en 2013 por Vitalik Buterin, un programador ruso-canadiense, fue diseñada como la plataforma perfecta para aplicaciones descentralizadas (dApps) permanentes, autoejecutables e inmutables con diversos casos de uso que van desde el arte a las finanzas y los juegos.

Las aplicaciones descentralizadas suelen denominarse contratos inteligentes y son protocolos de transacción para la red Ethereum que llevan a cabo determinadas acciones y funciones de forma automática, como procesar transacciones con algunos acuerdos y condiciones preestablecidos.

Generalmente, las transacciones criptográficas son instrucciones firmadas criptográficamente desde cuentas criptográficas. Sin embargo, cuando se trata de la red Ethereum, hay dos tipos diferentes de transacciones criptográficas. Está la transacción regular, que es la forma más simple de transacción criptográfica (o al menos, la que se conoce en general), que tiene que ver con la transferencia de Ether (ETH) de una billetera criptográfica a otra.

Metamáscara de transacción pendiente

No estoy seguro de si debo tener un “to” en la transacción, y también… gas suministrado, ¿debería añadir un “gasLimit” a la transacción? No estoy seguro de si los datos o el valor deben contener algo, ya que la cancelación de una transacción se realiza con un valor 0, ¿verdad?

  Solidity el lenguaje de programación de Ethereum

Accidentalmente cancelé las dos primeras transacciones eliminando el gasPrice y sólo incluyendo el nonce. Maldita sea, ahora tengo que averiguar si tengo que cancelar todos los que después o si puedo enviar en las transacciones con el mismo nonce.

Me ha parecido leer varias veces que añadiendo nonce y to debería ser suficiente. No es suficiente. Sólo añadir el nonce sin nada cancela la transacción. nonce, to, gasPrice se quejará de gasLimit ya que no puede calcular cuánto gas necesita un método de contrato (mi caso). Haciendo esto sólo resultará en una transacción revertida de todos modos ya que no se envían datos.

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad