erigon-pulse/core/state
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
..
contracts rename (#1978) 2021-05-20 19:25:53 +01:00
access_list.go rename (#1978) 2021-05-20 19:25:53 +01:00
cached_reader2.go RemoteRPC: coherentCache for kv.Code; LocalRPC: enable small blocksLRU (#2815) 2021-10-12 12:04:04 +07:00
cached_reader.go rename (#1978) 2021-05-20 19:25:53 +01:00
cached_writer.go remove ctx from state writer interface (#2302) 2021-07-05 15:42:44 +07:00
change_set_writer.go move kv to erigon-lib (#2467) 2021-07-29 18:53:13 +07:00
database_test.go eth_getTransactionReceipt not to return unrelated txs (#2998) 2021-11-21 09:22:29 +00:00
database.go remove ctx from state writer interface (#2302) 2021-07-05 15:42:44 +07:00
db_state_reader.go move kv to erigon-lib (#2467) 2021-07-29 18:53:13 +07:00
db_state_writer.go move kv to erigon-lib (#2467) 2021-07-29 18:53:13 +07:00
dump.go Inner errors (#2774) 2021-10-04 22:16:52 +07:00
helper.go Don't store RLPs in valueNodes (except tests). 2019-11-13 20:08:20 +01:00
history_test.go remove changeset.Walk func (#2716) 2021-09-22 07:54:29 +07:00
history.go RPC: small optimizations (#2564) 2021-08-24 08:28:58 +01:00
intra_block_state_test.go Inner errors (#2774) 2021-10-04 22:16:52 +07:00
intra_block_state.go Full BSC support with validator mode (#3233) 2022-01-14 19:06:35 +00:00
journal.go remove mutexes use (#2406) 2021-07-20 15:34:11 +07:00
plain_readonly.go move (#2910) 2021-11-04 08:25:40 +00:00
plain_state_reader.go move kv to erigon-lib (#2467) 2021-07-29 18:53:13 +07:00
plain_state_writer.go create new Change object if incarnation increased (#2539) 2021-08-18 09:41:07 +07:00
state_object_test.go rename (#1978) 2021-05-20 19:25:53 +01:00
state_object.go Use IsZero() instead of Sign() for uint256.int (#2960) 2021-11-14 22:18:47 +07:00
state_test.go move kv to erigon-lib (#2467) 2021-07-29 18:53:13 +07:00