¿Parece que de alguna manera es posible quedarse sin gasolina pero la transacción aún se completa? Esto viola mi comprensión de ethereum. Si te quedas sin gasolina, revierte todos los cambios. ¿Qué significa este error de etherscan?
Although one or more errors occured [Out of gas] contract execution completed
Siempre que la transacción sea válida (es decir, sin malas firmas, malos nonce, etc.), incluso si se queda sin gas, la transacción aún se completa . Ya sea que la transacción haya realizado cambios de estado o no, es una historia diferente.
¿Qué pasa si decimos que las transacciones OOG no son válidas y no pueden estar en un bloque válido y los mineros no reciben compensación por el trabajo?
Imagine a un atacante que envía un montón de transacciones de llamadas de función computacionalmente costosas, pero se asegura de que cada una de esas transacciones falle al final. Los mineros los ejecutarían, desperdiciarían poder de cómputo y no obtendrían nada a cambio. Esto es efectivamente un ataque de DOS a la cadena de bloques.
Unas palabras sobre las transacciones internas.
Dado que el contrato puede llamar a otros contratos o enviar fondos, una llamada de transacción puede incluir múltiples transacciones internas. Es posible recuperar desde OOG de una transacción interna dentro de su transacción.
Si solo reenvía una cantidad limitada de gas a una llamada de función de transacción interna, su transacción interna puede fallar y OOG. Pero dado que todavía le queda gasolina en su TX principal, eventualmente puede completarse.
Ver si una transacción completa se revierte cuando ocurre el lanzamiento
libertad bloqueada
libertad bloqueada
sicigia