go-ethereum/core
Pratik Patil d53c2e7902
Block stm miner dependency (#561)
* added support for dependencies (executor_tests)

* added a function to get dependency map

* getting all dependencies in the GetDep function

* updated GetDep function

* changed the type of AllDeps

* added a function to get dependency map

* updated GetDep function

* generate and get dependencies from block producer

* optimized getDep function

* bug fix regarding txn index and dep structure

* fixed gas bug

* optimized getDep function

* tests updated/added

* few updates regarding dependencies

* added channel to calculate the dependencies in a separate go routine

* minor changes in the executor which uses latest changes of dependecies + removed metadata flag/argument

* Use channel when metadata is available

* small bug fix

* getting reads and writes only when the transaction succeeds

* fixed bug in adding dependencies

* updated logic for delay/not delay

* bug fix (shouldDelayFeeCal) in parallel state processor

* lint fix

* using EnableMVHashMap flag

* fixed worker and stateProcessor and removed SetMVHashMapNil fumction from stateDB

* addredded few comments and fixed bug in executor tests

* commented executor tests with metadata (panic: test timed out after 5m0s)

* added a check to check len(mvReadMapList) > 0 in miner

* addressed comments, minor refactoring in dag.go

* moved blockContext out of Execute and adding it in execution task

* removed Author() from Settle() and added  in execution task

* not calling block.Header() again and again, using  instead

* removed EnableMVHashMap flag, and updated applyTransaction function

* addressed comments

* added unit test to check dependencies in the block header

Co-authored-by: Jerry <jerrycgh@gmail.com>
2022-12-23 09:14:09 +05:30
..
allocs fix typo 2021-09-23 10:56:17 +05:30
asm V0.2.16 candidate (#373) 2022-05-06 12:31:48 +02:00
beacon V0.2.16 candidate (#373) 2022-05-06 12:31:48 +02:00
blockstm Block stm miner dependency (#561) 2022-12-23 09:14:09 +05:30
bloombits all: fix some go-critic linter warnings (#23709) 2021-10-13 17:31:02 +02:00
forkid V0.2.16 candidate (#373) 2022-05-06 12:31:48 +02:00
rawdb Reciept e2e test (#431) 2022-07-14 19:28:56 +03:00
state Block stm miner dependency (#561) 2022-12-23 09:14:09 +05:30
tests merge develop 2022-11-13 19:05:26 +05:30
types Block stm miner dependency (#561) 2022-12-23 09:14:09 +05:30
vm add : Add state sync transaction to debug_traceBlock 2022-10-12 20:06:00 +05:30
.gitignore
bench_test.go fix: benchmark test 2022-10-14 15:51:19 +05:30
block_validator.go
block_validator_test.go RFC35/Common Ancestor: Modifying the forkchoice rule (#425) 2022-07-15 10:37:35 +05:30
blockchain.go Merge branch 'develop' of https://github.com/maticnetwork/bor into block-stm 2022-11-21 17:00:12 +05:30
blockchain_bor_test.go RFC35/Common Ancestor: Modifying the forkchoice rule (#425) 2022-07-15 10:37:35 +05:30
blockchain_insert.go V0.2.16 candidate (#373) 2022-05-06 12:31:48 +02:00
blockchain_reader.go Prepare Bor package for testing (#416) 2022-06-08 16:39:30 +03:00
blockchain_test.go chg : minor fix 2022-10-18 03:56:55 +05:30
blocks.go
bloom_indexer.go
bor_blockchain.go
bor_events.go fixes 2021-12-06 14:25:33 +05:30
bor_fee_log.go
chain_indexer.go
chain_indexer_test.go
chain_makers.go Mining Analysis (#429) 2022-09-30 13:40:18 +05:30
chain_makers_test.go RFC35/Common Ancestor: Modifying the forkchoice rule (#425) 2022-07-15 10:37:35 +05:30
dao_test.go RFC35/Common Ancestor: Modifying the forkchoice rule (#425) 2022-07-15 10:37:35 +05:30
error.go V0.2.16 candidate (#373) 2022-05-06 12:31:48 +02:00
events.go Minor Refactor 2021-12-03 17:28:53 +05:30
evm.go V0.2.16 candidate (#373) 2022-05-06 12:31:48 +02:00
forkchoice.go chg : use https://github.com/maticnetwork/crand instead of JekaMas/crand 2022-10-17 15:44:11 +05:30
forkchoice_test.go RFC35/Common Ancestor: Modifying the forkchoice rule (#425) 2022-07-15 10:37:35 +05:30
gaspool.go
gen_genesis.go
gen_genesis_account.go
genesis.go V0.2.16 candidate (#373) 2022-05-06 12:31:48 +02:00
genesis_alloc.go V0.2.16 candidate (#373) 2022-05-06 12:31:48 +02:00
genesis_test.go RFC35/Common Ancestor: Modifying the forkchoice rule (#425) 2022-07-15 10:37:35 +05:30
headerchain.go RFC35/Common Ancestor: Modifying the forkchoice rule (#425) 2022-07-15 10:37:35 +05:30
headerchain_test.go RFC35/Common Ancestor: Modifying the forkchoice rule (#425) 2022-07-15 10:37:35 +05:30
mkalloc.go all: add go:build lines (#23468) 2021-08-25 18:46:29 +02:00
parallel_state_processor.go Block stm miner dependency (#561) 2022-12-23 09:14:09 +05:30
rlp_test.go V0.2.16 candidate (#373) 2022-05-06 12:31:48 +02:00
state_prefetcher.go
state_processor.go Block stm miner dependency (#561) 2022-12-23 09:14:09 +05:30
state_processor_test.go Recognize bad transactions and break loop in blockstm executor 2022-09-29 23:05:09 -07:00
state_transition.go added getReadMap and getWriteMap (#473) 2022-09-28 16:12:20 -07:00
tx_cacher.go
tx_journal.go
tx_list.go V0.2.16 candidate (#373) 2022-05-06 12:31:48 +02:00
tx_list_test.go V0.2.16 candidate (#373) 2022-05-06 12:31:48 +02:00
tx_noncer.go V0.2.16 candidate (#373) 2022-05-06 12:31:48 +02:00
tx_pool.go linters 2022-09-05 11:51:18 +04:00
tx_pool_test.go merge base branch 2022-09-05 15:43:57 +04:00
types.go