good morning!!!!

Skip to content
Snippets Groups Projects
Unverified Commit 7319922a authored by Jaynti Kanani's avatar Jaynti Kanani
Browse files

fix: create engine before blochain

parent 2f79768a
No related branches found
No related tags found
No related merge requests found
......@@ -140,6 +140,19 @@ func New(stack *node.Node, config *Config) (*Ethereum, error) {
p2pServer: stack.Server(),
}
// START: Bor changes
eth.APIBackend = &EthAPIBackend{stack.Config().ExtRPCEnabled(), eth, nil}
gpoParams := config.GPO
if gpoParams.Default == nil {
gpoParams.Default = config.Miner.GasPrice
}
eth.APIBackend.gpo = gasprice.NewOracle(eth.APIBackend, gpoParams)
// create eth api and set engine
ethAPI := ethapi.NewPublicBlockChainAPI(eth.APIBackend)
eth.engine = CreateConsensusEngine(stack, chainConfig, config, chainDb, ethAPI)
// END: Bor changes
bcVersion := rawdb.ReadDatabaseVersion(chainDb)
var dbVer = "<nil>"
if bcVersion != nil {
......@@ -176,6 +189,8 @@ func New(stack *node.Node, config *Config) (*Ethereum, error) {
if err != nil {
return nil, err
}
eth.engine.VerifyHeader(eth.blockchain, eth.blockchain.CurrentHeader(), true) // TODO think on it
// Rewind the chain in case of an incompatible config upgrade.
if compat, ok := genesisErr.(*params.ConfigCompatError); ok {
log.Warn("Rewinding chain to upgrade configuration", "err", compat)
......@@ -201,17 +216,6 @@ func New(stack *node.Node, config *Config) (*Ethereum, error) {
eth.miner = miner.New(eth, &config.Miner, chainConfig, eth.EventMux(), eth.engine, eth.isLocalBlock)
eth.miner.SetExtra(makeExtraData(config.Miner.ExtraData))
eth.APIBackend = &EthAPIBackend{stack.Config().ExtRPCEnabled(), eth, nil}
gpoParams := config.GPO
if gpoParams.Default == nil {
gpoParams.Default = config.Miner.GasPrice
}
eth.APIBackend.gpo = gasprice.NewOracle(eth.APIBackend, gpoParams)
// create eth api and set engine
ethAPI := ethapi.NewPublicBlockChainAPI(eth.APIBackend)
eth.engine = CreateConsensusEngine(stack, chainConfig, config, chainDb, ethAPI)
eth.dialCandidates, err = eth.setupDiscovery(&stack.Config().P2P)
if err != nil {
return nil, err
......@@ -232,7 +236,7 @@ func makeExtraData(extra []byte) []byte {
// create default extradata
extra, _ = rlp.EncodeToBytes([]interface{}{
uint(params.VersionMajor<<16 | params.VersionMinor<<8 | params.VersionPatch),
"geth",
"bor",
runtime.Version(),
runtime.GOOS,
})
......@@ -559,3 +563,12 @@ func (s *Ethereum) Stop() error {
s.eventMux.Stop()
return nil
}
//
// Bor related methods
//
// SetBlockchain set blockchain while testing
func (s *Ethereum) SetBlockchain(blockchain *core.BlockChain) {
s.blockchain = blockchain
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment