Почему лимит газа в моей частной сети снижается после подключения моего локального узла?

У меня есть частная сеть, состоящая из «Консорциума проверки работоспособности Ethereum» на Azure и моего компьютера для разработки.

В Azure есть 2 узла майнинга и один узел транзакций. Все на виртуальных машинах Ubuntu под управлением geth 1.8.11. Мой компьютер разработчика - это Windows 10 с geth 1.8.12.

В genesis.json я установил лимит газа на 100000000000, потому что разрабатываемое мной приложение всегда будет работать в частной сети, где газ не должен быть проблемой.

Однако я заметил, что лимит газа на каждом блоке падал, когда я включал майнинг на своем компьютере для разработки, и снова начинал медленно расти, когда я его останавливал. Даже когда я устанавливаю флаг --targetgaslimit на моем компьютере разработчика на 100000000000, точно так же, как он установлен на двух узлах майнинга. Он будет продолжать падать, когда мой компьютер разработчика занимается майнингом, и расти, когда этого не происходит.

Насколько я понимаю, поскольку все три узла, которые занимаются майнингом, имеют одинаковый целевой лимит газа, он будет постоянно повышаться, поскольку все три машины будут голосовать, чтобы приблизить его к 100000000000. Однако это не так, два продолжают голосовать, чтобы поднять его вверх. и один продолжает голосовать, чтобы снести его.

Кто-нибудь знает, почему это продолжается? Это помешало мне развернуть некоторые контракты, потому что мой компьютер разработчика продолжал снижать лимит газа.

Редактировать: я попытался установить targetgaslimit моего локального узла на 99913949 чуть выше текущего предела 94513949, и он все еще продолжает падать.

Ответы (1)

Кажется, я решил эту проблему, сравнив команды, которые запускают geth на узлах майнинга, с командой, которую я использовал для запуска узла на моем компьютере для разработки.

На моем компьютере разработчика я запустил geth с «консолью geth ... --targetgaslimit», в то время как на узлах майнинга он просто запускает geth без консоли. Запуск без консоли на моем компьютере разработчика исправил это, и узел проголосовал за увеличение лимита газа.

Таким образом, запуск geth без "консоли" решает эту проблему. Конечно, вы все равно можете использовать консоль с помощью geth attach.