Bereitstellung nach Ropsten über Infura überschreitet Gaslimit

Ich bin auf das Problem „Exceeds Gas Limit“ gestoßen, als ich bei meiner örtlichen Ganache eingesetzt wurde. Ich musste meine Verträge umgestalten und in mehrere Verträge aufteilen. Ich habe es zum Laufen gebracht.

Jetzt stoße ich auf dasselbe, wenn ich versuche, über Infura auf Ropsten bereitzustellen.

Ich erhalte das Exceeds Gas Limit, selbst wenn ich nur Migrations.sol bereitstelle. Ich habe genug Gas in meinem primären Konto.

Meine Truffle-Konfiguration ist diese:

// Allows us to use ES6 in our migrations and tests.
require('babel-register')
var HDWalletProvider = require("truffle-hdwallet-provider");

var infura_apikey = "... ...";
var mnemonic = "... ... ... ...";

module.exports = {
  networks: {
    development: {
      host: 'localhost',
      port: 8545,
      network_id: '*' // Match any network id
    },
    ropsten: {
      provider: new HDWalletProvider(mnemonic, "https://ropsten.infura.io/"+infura_apikey),
      network_id: 3
    }
  }
}

Initial Migration JS ist Standardcode.

var Migrations = artifacts.require("./Migrations.sol");

module.exports = function(deployer) {
  deployer.deploy(Migrations, { gas: 4700000, //may be 21000 - 3000000
gasPrice: 20000000000});
};

Was fehlt mir hier? Es schlägt während der anfänglichen Migration fehl.

Verwenden des Netzwerks 'ropsten'.

Das Festlegen von Gas auf 4.700.000 scheint niedrig zu sein. (Wie kann das sein? Das ist nur der Migrationsvertrag!)

Running migration: 1_initial_migration.js
  Deploying Migrations...
  ... 0x6810b697ecf938b94a134ed62865b661dcd5f37ae53bd08dc575b8850de968ef
  Migrations: 0x64e70064a0b59f8d2b789f7cb50e6a9465abaf35
Saving successful migration to network...
Error encountered, bailing. Network state unknown. Review successful transactions manually.
exceeds block gas limit

Die Einstellung auf 4.800.000 scheint Ropstens Limit zu überschreiten.

Running migration: 1_initial_migration.js   
Deploying Migrations...
Error encountered, bailing. Network state unknown. Review successful
transactions manually. exceeds block gas limit

AKTUALISIEREN

Irgendwann habe ich die Entwicklung von Ropsten aufgegeben und stattdessen an Rinkeby gearbeitet. Ich hatte solche Probleme nicht mehr.

Hast du die Antwort darauf gefunden? Ich habe das gleiche Problem.
Irgendeine Lösung dafür?

Antworten (1)

Ihr Gas ist nicht zu niedrig, es ist zu hoch

Der Ethereum-Block hat eine Gesamtgaslimitobergrenze von etwa 4.700.000 , was bedeutet, dass die Summe aller im Block enthaltenen Transaktionen nicht höher als 4,7 Millionen sein sollte. Ihre allein entspricht dem Limit, daher ist es unwahrscheinlich, dass sie in den Block aufgenommen wird. Versuchen Sie, eine niedrigere Gasgrenze einzustellen.

Ich bekomme die gleiche Meldung, wenn ich Gas auf 1 Million einstelle.