Enviar transacción con el mismo tiempo que otra transacción pero con un precio de gasolina más bajo

Quiero enviar una transacción usando web3, y quiero que esta transacción tenga el mismo nonce que otras transacciones, hasta ahora todo bien. El problema surge cuando establezco un precio de gas más bajo que las otras transacciones. Cuando hago esto, me sale un error:

Transacción de reemplazo subvaluada

Soy consciente de que la transacción tiene un precio inferior al de las existentes, pero aun así quiero que emita la transacción en lugar de generar un error y estropear todo el programa.

¿Hay alguna manera de eludir esto? ¿Debo usar alguna otra API para este propósito? ¿O estoy condenado a ser siempre el mejor postor?

Gracias

Respuestas (1)

No tiene ningún sentido enviar la misma transacción con menor gasPrice : si ambas transacciones están en mempool, los mineros seleccionan la transacción con mayor gasPrice (tu primera transacción), por lo que no es necesario agregar la segunda.

Si, por alguna razón, realmente desea tener la misma transacción con un precio de gas más bajo, puede hacer lo siguiente:

  • cancelar la transacción pendiente : esto cuesta gasolina, porque en realidad se envía una transacción de 0 ETH a sí misma, con un precio de gas más alto que el tx original
  • volver a enviar el tx original (con su nonceaumento), con una menorgasPrice

No puedo imaginar ningún escenario en el que esto sería de alguna ayuda, pero definitivamente es posible.

Gracias por tu sabiduría. Lo creas o no, este caso existe.
frio. me alegro que te haya ayudado mi respuesta