erigon-pulse/p2p
Dmitry Savonin a49d409457
Full BSC support with validator mode (#3233)
* migrated consensus and chain config files for bsc support

* migrated more files from bsc

* fixed consensus crashing

* updated erigon lib for parlia snapshot prefix

* added staticpeers for bsc

* [+] added system contracts
[*] fixed bug with loading snapshot
[+] enabled gas bailout
[+] added fix to prevent syncing more than 1000 headers (for testing only)
[*] fixed bug with crashing sender recover sometimes

* migrated system contract calls

* [*] fixed bug with returning mutable balance object
[+] migrated lightclient contracts from bsc
[*] fixed parlia consensus config param

* [*] fixed tendermint deps

* [+] added some logs

* [+] enabled bsc forks
[*] fixed syscalls from coinbase
[*] more logging

* Fix call sys contract gas calculation

* [*] fixed executing system transactions

* [*] enabled receipt hash, gas and bloom filter checks

* [-] removed some logging scripts
[*] set header checkpoint to 10 million blocks (for testing forks)

* [*] fixed bug with commiting dirty inter block state state after system transaction execution
[-] removed some extra logs and comments

* [+] added chapel and rialto testnet support

* [*] fixed chapel allocs

* [-] removed 6 mil block limit for headers sync

* Fix hardforks on chapel and other testnets

* [*] fixed header sync issue after merge

* [*] tiny code cleanup

* [-] removed some comments

* [*] increased mdbx map size to 4 TB

* [*] increased max chaindata size to 6 tb

* [*] bring more compatibility with origin erigon and some code cleanup

* [+] added support of validator mode for BSC chain

* [*] enable private key load for bsc, rialto and chapel chains

* [*] fixed running BSC validator node

* Fix the branch list

* [*] tiny fixes for linter

* [*] formatted imports for core and parlia packages

* [*] fixed import rules in other files

* Revert "[*] formatted imports for core and parlia packages"

This reverts commit c764b58b34fedc2b14d69458583ba0dad114f227.

* [*] changed import rules in more packages

* [*] fixed type mismatch in hack command

* [*] fixed crash on new epoch, enabled bootstrap flags

* [*] fixed linter errors

* [*] fixed missing err check for syscalls

* [*] now BSC implementation is fully compatible with erigon original sources

* Revert "Add chain config and CLI changes for Binance Smart Chain support (#3131)"

This reverts commit 3d048b7f1a.

* Revert "Add Parlia consensus engine for Binance Smart Chain support (#3086)"

This reverts commit ee99f17fbe.

* [*] fixed several issues after merge

* [*] fixed integration compilation

* Revert "Fix the branch list"

This reverts commit 8150ca57e5f2707a84a9f6a1c5b809b7cc84547b.

* [-] removed receipt repair migration

* [*] fixed parlia fork numbers output

* [*] bring more devel compatibility, fixed bsc address list for access list calculation

* [*] fixed bug with commiting state transition for bad blocks in BSC

* [*] fixed bsc changes apply for integration command and updated config print for parlia

* [*] fixed bug with applying bsc forks for chapel and rialto testnet chains
[*] let's use finalize and assemble for mining to  let consensus know for what it's finalizing block

* Fix compilation errors in hack.go

* Fix lint

* reset changes in erigon-snapshots to devel

* Remove unrelated changes

* Fix embed

* Remove more unrelated changes

* Remove more unrelated changes

* Restore clique and aura miner config

* Refactor interfaces not to use slice pointers

* Refactor parlia functions to return tx and receipt instead of dealing with slices

* Fix for header panic

* Fix lint, restore system contract addresses

* Remove more unrelated changes, unify GatherForks

Co-authored-by: Dmitry Ivanov <convexman18@gmail.com>
Co-authored-by: j75689 <j75689@gmail.com>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-01-14 19:06:35 +00:00
..
discover Full BSC support with validator mode (#3233) 2022-01-14 19:06:35 +00:00
dnsdisc Canonical tx ids (#2986) 2021-11-18 14:07:55 +00:00
enode Genesis sync from existing snapshots (#3087) 2021-12-05 09:03:08 +07:00
enr Inner errors (#2774) 2021-10-04 22:16:52 +07:00
nat less warnings 2021-10-07 14:50:50 +07:00
netutil RemoteRPC: coherentCache for kv.Code; LocalRPC: enable small blocksLRU (#2815) 2021-10-12 12:04:04 +07:00
rlpx Inner errors (#2774) 2021-10-04 22:16:52 +07:00
simulations Change eth.Peer.ID() type from string to enode.ID (#3063) 2021-11-30 22:55:51 +00:00
dial_test.go Canonical tx ids (#2986) 2021-11-18 14:07:55 +00:00
dial.go Ignore MaxPeers param for staticpeers (#2789) 2021-10-07 08:33:13 +07:00
message_test.go p2p: move rlpx into separate package (#21464) 2020-10-06 14:12:09 +02:00
message.go hide file exists err (#2218) 2021-06-22 11:09:45 +01:00
metrics.go MIT licensed metrics lib (#2462) 2021-07-29 17:27:46 +07:00
peer_error.go mainnet london block and port some go-ethereum fixes related to baseFee (#2323) 2021-07-09 16:54:06 +07:00
peer_test.go Apache licensed logger (#2460) 2021-07-29 17:23:23 +07:00
peer.go Change sentry peer_id from H512 pubkey to H256 keccak256(pubkey) (#3013) 2021-11-22 05:39:31 +00:00
protocol.go Change sentry peer_id from H512 pubkey to H256 keccak256(pubkey) (#3013) 2021-11-22 05:39:31 +00:00
server_test.go Change sentry peer_id from H512 pubkey to H256 keccak256(pubkey) (#3013) 2021-11-22 05:39:31 +00:00
server.go Not try to create temporary file with enode (#3035) 2021-11-25 18:36:15 +00:00
transport_test.go Change sentry peer_id from H512 pubkey to H256 keccak256(pubkey) (#3013) 2021-11-22 05:39:31 +00:00
transport.go Change sentry peer_id from H512 pubkey to H256 keccak256(pubkey) (#3013) 2021-11-22 05:39:31 +00:00
util_test.go rename (#1978) 2021-05-20 19:25:53 +01:00
util.go rename (#1978) 2021-05-20 19:25:53 +01:00