¿Por qué cae el límite de gas en mi red privada una vez que se conecta mi nodo local?

Tengo una red privada que consta de un "consorcio de prueba de trabajo de Ethereum" en Azure y mi PC de desarrollo.

En Azure hay 2 nodos de minería y un nodo de transacción. Todo en máquinas virtuales Ubuntu que ejecutan geth 1.8.11. Mi PC de desarrollo es Windows 10 con geth 1.8.12.

En genesis.json configuré el límite de gas en 100000000000 porque la aplicación que estoy desarrollando siempre se ejecutará en una red privada donde el gas no debería ser un problema.

Sin embargo, me di cuenta de que el límite de gas en cada bloque estaba cayendo cuando encendí la minería en mi PC de desarrollo y comenzó a subir lentamente cuando lo detuve. Incluso cuando configuro el indicador --targetgaslimit en mi PC de desarrollo en 100000000000, tal como está configurado en los dos nodos de minería. Seguirá cayendo cuando mi PC de desarrollo esté minando y aumentando cuando no lo esté.

Según tengo entendido, dado que los tres nodos que están minando tienen el mismo límite de gas objetivo, aumentaría continuamente ya que las tres máquinas votarían para acercarse a 100000000000. Sin embargo, no es así, dos siguen votando para subirlo y uno sigue votando para derribarlo.

¿Alguien sabe por qué sigue pasando esto? Me impidió implementar algunos contratos porque mi PC de desarrollo seguía bajando el límite de gas.

Editar: intenté configurar el límite de gas objetivo de mi nodo local en 99913949 justo por encima del límite actual de 94513949 y aún sigue cayendo.

Respuestas (1)

Parece que he resuelto esto comparando los comandos que inician geth en los nodos de minería con el comando que usé para iniciar el nodo en mi PC de desarrollo.

En mi PC de desarrollo, comencé geth con "geth console ... --targetgaslimit", mientras que en los nodos de minería simplemente inicia geth sin la consola. Comenzar sin la consola en mi PC de desarrollo lo arregló y tiene el nodo votando para aumentar el límite de gas.

Entonces, comenzar geth sin "consola" parece solucionar este problema. Por supuesto, aún puede usar la consola usando geth adjuntar entonces.