Alex Sharov
cb8f609dc0
e3: fix nil ptr bsc ( #6162 )
2022-11-30 18:24:42 +07:00
alex.sharov
948b325062
save
2022-11-30 14:59:08 +07:00
Alex Sharov
16cd87748f
E3: fix unwind changes visibility ( #6147 )
2022-11-30 08:31:13 +07:00
Alex Sharov
9bcd7fe6c3
e3: reduce state write lock ( #6096 )
2022-11-21 10:38:22 +07:00
Alex Sharov
40264fd4d9
E3: state lock reduce ( #6088 )
2022-11-20 12:34:45 +07:00
Alex Sharov
92e6e56120
Fix test e3 ( #6087 )
2022-11-20 10:58:20 +07:00
Alex Sharov
874d96fb47
e3: Non parallel exec (with exec in RO goroutine) ( #6073 )
2022-11-17 20:52:12 +03:00
hexoscott
636586c1b5
cache state check ( #5844 )
...
draft for now to get some early feedback on approach
2022-11-07 13:04:31 +00:00
Alex Sharov
d4fc7c7ef0
e3: reduce write-lock of rws ( #5959 )
2022-11-04 15:09:29 +07:00
Alex Sharov
96deee29bb
e3: build files sequentially, flush indices in-advance before commit ( #5935 )
2022-11-02 10:04:12 +07:00
Andrew Ashikhmin
dd43d486f3
Enable London in AllEthashProtocolChanges ( #5891 )
...
`AllEthashProtocolChanges` should contain all the EIPs accepted by the
core developers into the Ethash consensus, including the
[London](https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/london.md )
protocol upgrade.
2022-10-28 17:19:18 +02:00
Alex Sharov
0074ad0e48
e3: parallel exec, rotate and partial-flush of indices wal - while main thread is idle ( #5889 )
...
While main thread is idle (apply is on RoTx now):
- periodically still hisotry/index etl collectors and load them to db
- prune old history/index in db
Also:
- fixed RAM estimation calculation of State22
2022-10-28 21:13:53 +07:00
Alex Sharov
8d1ed547b0
E3: parallel exec, apply on roTx ( #5879 )
2022-10-28 08:47:45 +07:00
Alex Sharov
2d7cd0fae2
e3: better prune logs, apply thread can work without rwTx ( #5860 )
2022-10-25 16:08:01 +07:00
Alex Sharov
592ad57921
add DECOMPRESS_CONDENSITY env variable ( #5853 )
2022-10-24 10:00:55 +07:00
Alex Sharov
8d75d0dc4b
e3: return old reader version ( #5849 )
2022-10-23 19:22:33 +07:00
Alex Sharov
993fde4d92
E3: par logs ( #5839 )
2022-10-23 18:51:14 +07:00
Alex Sharov
d6de913a34
e3: fix races ( #5822 )
2022-10-21 21:02:18 +07:00
Alex Sharov
86551e82f4
e3: parallel build missed indices ( #5817 )
2022-10-21 13:45:20 +07:00
Alex Sharov
0db6b9b44b
e3: move skip analysis out of the loop ( #5803 )
2022-10-20 10:39:40 +07:00
Alex Sharov
1f8bd5de1b
e3: less allocations reconstitution ( #5735 )
2022-10-13 21:25:57 +07:00
Alex Sharov
63a6fb29ba
e3: cleanup ( #5729 )
2022-10-13 12:09:14 +07:00
Alex Sharov
d2436ab344
e3: optimize stateWriter.Put ( #5724 )
2022-10-13 09:37:14 +07:00
ledgerwatch
df5c16fe06
Not use IsMaxStorageTxNum function ( #5715 )
...
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-10-12 13:38:51 +01:00
Alex Sharov
a9853d2ef8
Recon parallel: split ReconState to 2 objects to avoid lock contention between .Done() and .Get(), less ram in beginning ( #5713 )
2022-10-12 17:23:10 +07:00
Alex Sharov
4795217e4e
e3: prevent files ranges overlap ( #5684 )
2022-10-12 10:18:55 +07:00
Andrew Ashikhmin
ca60b197a1
Fix Gnosis Chain transition to safeContract validator ( #5645 )
2022-10-06 18:06:18 +02:00
Alex Sharov
39383d936d
erigon3: move tx.AsMessage() out of critical path ( #5611 )
...
* save
* save
2022-10-04 10:56:41 +01:00
ledgerwatch
11893429f5
cleanup bloombits and filters ( #5551 )
...
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-09-27 17:19:59 +01:00
Alex Sharov
cb60382e6d
erigon3: rename "history.v2" to "history.v3" to avoid naming miss-match with "erigon3" ( #5519 )
2022-09-26 10:54:42 +07:00
Alex Sharov
52a06d792c
historyReader22 fix lost incarnation ( #5469 )
...
* save
* save
2022-09-22 15:38:00 +07:00
Alex Sharov
57a4d8b777
historyReader22 fix empty code hash short-path ( #5467 )
...
* save
* save
2022-09-22 15:19:38 +07:00
Alex Sharov
902e3e7d02
save ( #5455 )
2022-09-21 14:17:56 +01:00
Alex Sharov
c1bb4bc734
exec22: stagedsync test v1 ( #5425 )
...
* save
* save
2022-09-19 12:17:36 +07:00
Alex Sharov
9fb8a190bc
erigon22: folder snapshots/history ( #5351 )
2022-09-18 17:41:01 +07:00
Alex Sharov
25e615a878
erigon22: historyReader22 and more tests ( #5281 )
...
* save
* save
2022-09-05 21:31:00 +07:00
Alex Sharov
6bfd2c3472
erigon22: rpc getLogs and traceFilter ( #5277 )
2022-09-05 11:33:55 +07:00
Alex Sharov
7874921e73
erigon22: correct incarnation ( #5275 )
2022-09-05 10:31:17 +07:00
Alex Sharov
35687c0e2c
erigon22: TestRecreateAndRewind ( #5241 )
2022-08-31 13:34:16 +07:00
Alex Sharov
5e441bfa2a
erigon22: recent history read ( #5209 )
2022-08-28 11:26:01 +07:00
Alex Sharov
16fc9c7277
erigon22: HistoryReader22 #5203
2022-08-27 15:36:42 +07:00
Alex Sharov
a0af80014c
erigon22: rename historyReader22 to historyReader23 ( #5202 )
2022-08-27 15:21:02 +07:00
Alex Sharov
d33096eaa7
erigon22: tests support ( #5196 )
2022-08-26 16:54:54 +07:00
Håvard Anda Estensen
beeccc0f5f
Remove capitalization and trailing newlines from err strings ( #5186 )
2022-08-26 13:20:19 +07:00
Håvard Anda Estensen
7c15ed59e4
Enable prealloc linter ( #5177 )
...
* Enable prealloc linter
* Set inital slice len to 0
2022-08-26 10:04:36 +07:00
Håvard Anda Estensen
3b1d4d9c1b
Enable gocritic linter ( #5173 )
...
* Enable gocritic linter
* Remove dead linters
* Make gosec shut up
2022-08-25 09:08:56 +07:00
Alex Sharov
16d02c8cc9
erigon22: unwind trie support ( #5159 )
2022-08-24 11:37:58 +07:00
Alex Sharov
8b34004372
erigon22: unwind code ( #5090 )
...
* save
* save
2022-08-17 16:42:07 +07:00
Alex Sharov
3f20363da4
erigon22: fix storage cleanup on unwind ( #5088 )
2022-08-17 16:24:11 +07:00
Alex Sharov
6df6640868
erigon22: prune - check key existance ( #5059 )
2022-08-15 14:36:57 +07:00
ledgerwatch
0f20e1cb93
erigon2.2 optimise reconstitution of state ( #4958 )
...
* No parallel buildFiles and mergeFiles to conserve memory
* go mod
* Fix and optimise
* Fix
* Another fix
* Fix
* Extra return value
* Optimise recon
* Another optimisation of recon
* Different order of usage
* Fix
* Fix
* Optimise allocations
* Lookup before going to history
* Fix
* Fix
* Optimise a bit more
* Only use one helper table
* Set bro tx
* Set broTx to writer
* Use same db for recon and x
* Write into chainDb
* Update to latest erigon-lib
* Remove test
* Set execution progress
* Fix compilation
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@alexs-mbp.lan>
2022-08-14 19:49:32 +01:00
Alex Sharov
6495ec6d28
erigon22: working PlainState unwind ( #5051 )
2022-08-14 18:06:32 +07:00
Alex Sharov
52fd0d0e8b
Aggregator22.Unwind() ( #5039 )
...
* save
* save
2022-08-13 18:51:25 +07:00
Alex Sharov
351cd49c21
go1.19 gofmt ( #4988 )
2022-08-10 19:04:13 +07:00
Leonard Chinonso
592fe32217
Refactoring To Increase Code Quality ( #4842 )
...
* General cleanup and fixes
* Cleaning part 2
* cleanup part 3
* Refactored staterunner to have a handler function
* Fixed linting
* Cleanup part 4
* Changed the initialization of the require package and updated .golangci.yml
* Fixed lint errors from golangci-lint
* deleted state_recon_1.go
* fixed build error
* Added ReadHeaderTimeouts for httpServer
* made changes to golangci
* Reset golangci.yml
2022-08-04 20:23:00 +07:00
ledgerwatch
e56491c601
Erigon22 prototype without parallel execution, fix for BSC upgrade contract ( #4884 )
...
* No parallelisation in erigon22 prototype
* Remove paralell
* tx/s
* commit
* Fix overlap
* workers argument
* Print
* Print
* Stable sort
* Print
* Init
* Remove print
* Remove print
* Remove print
* No sorting
* Cleanup
* Fix hangs
* Fix reconstitution for contract upgrades
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-08-04 13:00:46 +01:00
Leonard Chinonso
6061690f61
Fixed lint errors for unused linter ( #4902 )
2022-08-02 22:01:53 +07:00
Leonard Chinonso
808df67683
Fixed lint errors for staticcheck ( #4901 )
2022-08-02 21:07:39 +07:00
ledgerwatch
2b517b7630
Erigon22 prototype to support BSC ( #4867 )
...
* Reduce workers and queue size
* Add traces and event logs
* Add chain flag
* Print
* Open consensus db as read only
* Use only one engine instance
* chainDb
* Display palia error
* Not to panic
* Not to exit
* Add syscall
* Print
* Pointer to TxTask
* Not register senders
* Print
* Relax check
* Skip system transactions
* increase workerCount again
* Remove print
* Change recon
* Fix types
* Skip system txs
* Print
* No rules for genesis commit
* Print genesis
* Print|
* Print
* Print
* Update
* Fix
* Remove print
* No print
* Support contract upgrades
* Use the same dif
* Print create2
* Fix
* Fix
* Print
* Hack iterate
* Print empty vals
* Fix hack
* Code hashes
* Code hashes
* Print
* No panic
* No panic
* Fix?
* another incarnation fix
* Remove print
* Remove print
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-07-31 21:54:23 +01:00
ledgerwatch
09c104803a
Split erigon2.2 and erigon2.3 prototypes ( #4811 )
...
* Split erigon2.2 and erigon2.3 prototypes
* Renaming
* Interruptible and resumable erigon22
* Always regenerate trie
* Introduce aggregator
* Fixes
* cleanup
* Fix lint
* Update to erigon-lib main
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-07-28 12:16:37 +01:00
Andrew Ashikhmin
c1f848746d
Update consensus tests to v11 ( #4724 )
...
* Consensus tests update 11
* Add GrayGlacier fork
* Wire currentRandom from tests into PREVRANDAO
* Serenity engine
* Support insertion of PoS blocks in MockSentry
* Introduce marshallTypedTransactionsAsRlpStrings arg into (*Block) RawBody()
* Revert "Introduce marshallTypedTransactionsAsRlpStrings arg into (*Block) RawBody()"
This reverts commit 903fca572be03c7de33318ce177a03a4be34927b.
* Post-merge fix
* Don't wait for Beacon Chain in tests
* Skip powToPosBlockRejection transition test
* ForkChoice in insertPoSBlocks
* Add withPosDownloader arg to MockWithEverything in order to fix TestPoSDownloader
2022-07-26 09:35:38 +02:00
Alex Sharov
b6ea28ea80
kv.Del() remove second parameter ( #4832 )
...
* save
* save
* save
* save
* save
* save
* save
2022-07-26 12:47:05 +07:00
ledgerwatch
81d106bc9d
Experiment in parallel execution ( #4652 )
...
* Restructure tx execution
* fixes
* Fixes and traces
* Tracing
* More tracing
* Drain the result channel
* Intermediate
* more efficient parallel exec
* Sorted buffer
* Fix results size
* fix for the recon
* Fix compilation
* Sort keys in Write and Read sets, fix compilation in rpcdaemon22
* Update to latest erigon-lib
* Update to erigon-lib
* Remove go.mod replace
* Update erigon-lib
* Update to erigon-lib main
* Fix lint
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-07-23 18:39:08 +01:00
Alex Sharov
66758c7960
RetireBlocks: less arguments ( #4785 )
...
* save
* save
2022-07-22 13:44:42 +07:00
Zachinquarantine
8c27879a6b
Remove NewKeyedTransactor function ( #4472 )
...
* accounts/abi: remove NewKeyedTransactor function
* Remove "imported and not used" package
* Update state.go
* Update statedb_insert_chain_transaction_test.go
* Update statedb_chain_test.go
* Update database_test.go
* lint fixes
Co-authored-by: awskii <artem.tsskiy@gmail.com>
2022-07-13 17:40:39 +07:00
ledgerwatch
73b0659bb7
[erigon2.2] Optimisation of state reconstitution ( #4621 )
...
* Init
* Optimise ReconState flushes
* Updates
* Update
* Updates
* Updates
* More on parallel execution
* More on parallel exec
* Fix lint
* Improvements to parallel exec
* comment
* Fix history access, include incarnation
* Close work channel
* TxTask
* more fixes to parallel exec
* Update to latest erigon-lib
* Fix compilation
* Cleanup and timing
* Fixes to recon1
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-07-06 07:49:00 +01:00
ledgerwatch
8599dceec7
[erigon2.2] State reconstitution prototype ( #4508 )
...
* reconstitution
* Add history access without state function
* More on state reconstitution
* More on state recon
* More on state recon
* More
* More
* support dao fork
* More on state reconstitution
* Update to erigon-lib
* More
* Added genesis block and filling with history
* update
* Genesis works
* Start on parallel
* Preparation for parallel reconstitution, stats for EfSearch
* continue with parallel work
* Fix history reader
* Remove time measurements
* Fixes
* Fixes and UX improvements
* Fixes
* More tracing
* More fixes
* More fixes
* Fix code size
* Update to latest erigon-lib
* Fix for dao fork
* Remove hacks
* Update to erigon-lib, fix lint
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-07-02 20:48:42 +01:00
ledgerwatch
79830adefa
[erigon2.2] collecting read indices ( #4499 )
...
* [erigon2.2] collecting read indices
* Fix compile issue
* Update to latest erigon-lib
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-06-20 09:00:45 +01:00
ledgerwatch
fd8adddce8
trace_filter implementation based on erigon 2 update 2 data ( #4431 )
...
* trace_filter implementation based on erigon 2 update 2 data
* Fix test compile, extract txNums
* Update to erigon-lib, add generic heap
* Fix getHeaderHash for RPC methods
* Missing files
* Skip tests
* Add reward traces
* Filter trace lint
* Reinstate filtering
* Print
* Print
* Fix
* Print
* Print txNums
* Fix
* Fix
* Fix
* Fix
* Fix
* Fix
* Fix
* Remove prints
* Fix nil dereference
* Inclusive toBlock bound
* Print
* Print
* Hack
* remove some deps
* Fix lint
* Update erigon-lib
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-06-12 12:44:01 +01:00
ledgerwatch
8e3ac8a21c
Erigon2 upgrade 2 prototype ( #4341 )
...
* Erigon2 upgrade 2 prototype
* Latest erigon-lib
* Fixes
* Fix print
* Fix maxSpan
* Reduce maxSpan
* Remove duplicate joins
* TxNum
* Fix resuming
* first draft of history22
* Introduce historical reads
* Update to erigon-lib
* Update erigon-lib
* Update erigon-lib
* Fixes and tracing for checkChangeSets
* More trace
* Print account details
* fix getHeader
* Update to erigon-lib main
* Add tracer indices and event log indices
* Fix calltracer
* Fix calltracer
* Duplicate rpcdaemon into rpcdaemon22
* Fix tests
* Fix tests
* Fix tests
* Update to latest erigon-lib
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-06-10 16:18:43 +01:00
ledgerwatch
ee4ffd190d
Update skip analysis ( #4364 )
...
* Skip analysis advance, fix for change sets
* Optimisations for integration
* Print
* Print
* Fix
* Fix
* Fix
* Remove prints
* No panic
* More checks
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-06-04 16:54:22 +01:00
ledgerwatch
db8873714d
Fix ( #4362 )
...
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-06-04 11:13:06 +01:00
ledgerwatch
96603f14da
Print changes ( #4351 )
...
* Print changes
* Comment out prints, add hack to find prefix
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-06-03 22:50:20 +01:00
ledgerwatch
369052ed79
Fix for bor-mainnet mismatched root hash ( #4294 )
...
* Print
* Print
* Fix
* Print
* Print
* Print
* Print
* Print
* Print
* Print
* Fix
* Fix
* Cleanup
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-05-29 00:22:47 +01:00
Andrew Ashikhmin
0c76286509
Add rules to AsMessage to vet transaction types ( #4276 )
...
* Add rules to AsMessage to vet transaction types
* Fix TestState
2022-05-26 18:20:34 +02:00
Andrew Ashikhmin
86de64a2a3
TangerineWhistle instead of EIP150 & SpuriousDragon instead of EIP155/158 ( #4273 )
...
* EIP150Block -> TangerineWhistleBlock
* Merge EIP158Block into EIP155Block
* EIP155Block -> SpuriousDragonBlock
2022-05-26 12:08:59 +02:00
Håvard Anda Estensen
0a75065e7a
Use go:build lines and remove obsolete +build lines ( #4175 )
2022-05-17 14:46:53 +07:00
Alex Sharov
dc75f767fd
Parlia: log prefix and less logs #4128
2022-05-12 10:55:41 +07:00
Alex Sharov
8703bb67a7
Parlia: log prefixes and less logs #4127
2022-05-12 10:54:30 +07:00
battlmonstr
c9a1c93b44
tests: split slow integration tests ( #4048 )
2022-05-04 10:35:59 +07:00
ledgerwatch
14cbc01683
Fix for Bor (Polygon) ( #4044 )
...
* print branchHash
* Print state changes
* Print val
* Fix for author
* Remove prints
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-05-01 08:44:47 +01:00
battlmonstr
47df98a499
Use "err" key for logging errors. ( #3632 )
...
log.Warn/Error uses "err" key to log errors in most places.
This renames "error" to "err" in some places to adhere to this convention.
2022-03-01 15:40:51 +00:00
ledgerwatch
542b8827b0
storage override revert support ( #3597 )
...
* storage override revert support
* Fix
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-02-23 21:53:53 +00:00
ledgerwatch
266625f56a
Fixes to access list and state overrides ( #3570 )
...
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-02-22 10:29:02 +00:00
Andrew Ashikhmin
7bad3a9c59
state.PlainState is now at the beginning of blockNbr, not the end ( #3517 )
...
* state.PlainState is now at the beginning of blockNbr, not the end (fix discprepancy with GetAsOf)
* Fix tests
2022-02-16 08:38:12 +00:00
ledgerwatch
2074b98568
Tools for gathering data on erigon2 history and bitmaps ( #3488 )
...
* Tools for gathering data on erigon2 history and bitmaps
* Always start with 0
* Always start with 0
* Clean up commitment files, trace block
* traceblock
* Add tracing to checkChangeSets
* Fixes to DeleteAccount
* Update to latest erigon-lib
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-02-12 15:48:38 +00:00
ledgerwatch
079a177614
[erigon2] Computing data dependencies between transactions ( #3290 )
...
* Use ibs per transaction instead of per block
* Remove copy functions, introduce balance increase map
* Fix test
* Fix lint
* Introduce balanceIncrease journal action
* Introduce balanceIncrease journal action
* Simplifications
* Fix
* Reset
* Simplify
* Fix
* Fixes
* Fix for reading nil accounts
* Fix edge cases with reverts
* Clean up test output
* Fix transfers
* Handle special case of ripemd
* Try with fixed compress, only commit every commfreq blocks
* Updates
* Updates
* Update to fixed erigon-lib
* Update to erigon-lib
* Remove stop
* Update to latest erigon-lib
* fixup
* Cleanup
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-01-24 23:12:25 +00:00
Alex Sharov
93e28ed3dd
fix some linter warns ( #3310 )
2022-01-20 14:00:31 +07:00
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
ledgerwatch
ea6dbd49e8
[erigon2] Running with commitment ( #3203 )
...
* [erigon2] Running with commitment
* [erigon2] Running with commitment
* [erigon2] Running with commitment
* go mod tidy
* [erigon2] Running with commitment
* More
* Debug
* fix
* Fix
* state root command
* More fixes
* Fix
* Progress to 164735
* Only trace when failing
* fix for firstInsert
* Over block 1.36m
* Update
* fix to deleteAccount
* Fixes for plainKeys
* Undo printing
* No changeset generation by default
* Print block number on interrupt, fix lint
* Fix lint
* Open history DB as read only
* Print error
* Open non read only
* Readonly again
* Fix lint
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-01-14 16:02:44 +00:00
brendan-kelly
ee99f17fbe
Add Parlia consensus engine for Binance Smart Chain support ( #3086 )
...
* Add Parlia consensus engine for Binance Smart Chain support
* Leave RamanujanBlock as nil in params/config.go
* Run `go fmt` on files needing it
* Add comment for PoSA
* Remove empty branches and ineffectual assignments in parlia.go
* Remove commented imports
* Fix compilation error
* Remove EIP155Signer in transaction_signing.go
* Fix compilation issue
* Fix go fmt issues
* Remove Ramanujan from print statement
* Remove references to EthAPIBackend approach
* Fix Finalize method across consensus engines
* Run go fmt
* More linting
* Remove more changes
* remove a comment
* Remove unneeded hashing function
* Remove bytes check and fix actual vs expected mistake
2021-12-11 00:07:10 +00:00
ledgerwatch
b073787f1d
eth_getTransactionReceipt not to return unrelated txs ( #2998 )
...
* Cleanup
* Restore
* Fix for existing tx
* Cleanup
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-11-21 09:22:29 +00:00
TBC Dev
9e5ae33eb0
Use IsZero() instead of Sign() for uint256.int ( #2960 )
2021-11-14 22:18:47 +07:00
Alex Sharov
1a45f26a7c
move ( #2910 )
2021-11-04 08:25:40 +00:00
Alex Sharov
da00e949c4
RemoteRPC: coherentCache for kv.Code; LocalRPC: enable small blocksLRU ( #2815 )
2021-10-12 12:04:04 +07:00
Andrea Lanfranchi
c913f35c2e
Inner errors ( #2774 )
2021-10-04 22:16:52 +07:00
Alex Sharov
17abe11cc0
Remote RPC: add state cache ( #2738 )
2021-09-29 08:36:25 +07:00
Alex Sharov
a148e71d9d
Pool: switch to pendingBaseFee ( #2732 )
2021-09-26 23:09:36 +07:00
Alex Sharov
3de50637cd
remove changeset.Walk func ( #2716 )
2021-09-22 07:54:29 +07:00
Alex Sharov
f3021dd2af
RPC: small optimizations ( #2564 )
2021-08-24 08:28:58 +01:00
Alex Sharov
b7ada2a595
create new Change object if incarnation increased ( #2539 )
...
* create new Change object if incarnation increased
* create new Change object if incarnation increased
2021-08-18 09:41:07 +07:00
Alex Sharov
6bd44eb26c
move kv to erigon-lib ( #2467 )
2021-07-29 18:53:13 +07:00
Alex Sharov
5069558752
Apache licensed logger ( #2460 )
2021-07-29 17:23:23 +07:00
Alex Sharov
21cb7befa4
finish remove bucket suffix ( #2458 )
2021-07-28 10:43:51 +07:00
Alex Sharov
838e5f9ef2
Move bucket constants into kv package, move kv interface to kv package ( #2455 )
2021-07-28 09:47:38 +07:00
Alex Sharov
63a6c45ef1
Remove some db interfaces ( #2452 )
2021-07-27 19:35:32 +07:00
Alex Sharov
6bf54c951a
Sokol v0: unwind support ( #2439 )
2021-07-24 16:50:42 +07:00
Alex Sharov
6801208497
move some tests to kv interface ( #2438 )
2021-07-24 14:14:11 +07:00
Alex Sharov
a36a613e61
move migrations to kv interfaces ( #2430 )
2021-07-24 11:28:05 +07:00
Alex Sharov
031b0b177e
remove mutexes use ( #2406 )
2021-07-20 15:34:11 +07:00
Alex Sharov
a79b3cd6eb
unify stage params ( #2384 )
2021-07-17 09:09:56 +07:00
Alex Sharov
325c9cd9d8
RPC: compatible accountRange ( #2378 )
2021-07-16 22:01:29 +07:00
Alex Sharov
9f6ef74adc
Linter: to check tx.Rollback() by ruleguard ( #2383 )
2021-07-16 20:23:54 +07:00
Artem Vorotnikov
a49b920659
Remove preimages ( #2370 )
2021-07-15 09:06:07 +07:00
Alex Sharov
557d082c51
Sokol v0: epoch support ( #2348 )
...
* remove ctx from state writer interface
* call me baby
* save
* save
* can process block 1
* can process block 1
* can process block 1
* can process block 1
* save
* save
* parse logs logic
* cleans
* cleans
* cleans
2021-07-12 16:27:25 +01:00
Alex Sharov
76bc954283
Sokol v0: can process 1-st block ( #2310 )
2021-07-08 19:40:43 +07:00
Alex Sharov
7c60cc0fee
step towards kv interface ( #2313 )
2021-07-08 09:56:09 +07:00
Alex Sharov
a68b5ba361
Replace ChainConfig.WithEIPsFlags by go-ethereum's ChainConfig.Rules ( #2304 )
...
* use chainRules
* use chainRules
* use chainRules
* use chainRules
* use chainRules
2021-07-05 19:52:50 +01:00
Alex Sharov
9683b26483
remove ctx from state writer interface ( #2302 )
2021-07-05 15:42:44 +07:00
Alex Sharov
3db7e85994
Simplify GetAsOf ( #2285 )
...
* no reason to copy if we work with ethdb.Tx (user of ethdb.Tx expecting that all data valid until end of tx)
* less objects
2021-07-04 08:49:31 +01:00
alex.sharov
4be66ee9cb
Revert "save"
...
This reverts commit 6eed73566d
.
2021-07-03 17:38:58 +07:00
alex.sharov
6eed73566d
save
2021-07-03 17:01:23 +07:00
Alex Sharov
ef3e5d3107
add 0x prefix for RPC accountRange ( #2243 )
2021-06-27 15:19:34 +01:00
Alex Sharov
99c770c51b
tx.AsMessage was called twice ( #2209 )
...
* tx.AsMessage was called twice
* noopWriter - one is enough
2021-06-21 06:56:56 +01:00
Artem Vorotnikov
d8a009837b
Nuke preimage remnants ( #2203 )
2021-06-20 13:00:22 +07:00
Alex Sharov
4736bac190
save ( #2197 )
2021-06-19 21:29:02 +01:00
Alex Sharov
bc271f92ce
To break dependency to db implementation - move all db classes to "ethdb/kv" and leave in "ethdb" only interfaces ( #2195 )
2021-06-19 15:21:53 +07:00
Artem Vorotnikov
4fa034a306
Fix history test ( #2179 )
2021-06-16 16:20:58 +03:00
Artem Vorotnikov
0a4e0d1fa1
Various code simplificaitons ( #2165 )
...
* simplify randomaccount
* simplify execution unwind
* Remove standalone account accessors
2021-06-14 19:52:30 +01:00
Alex Sharov
1f13f73045
up version of uint256 lib ( #2082 )
...
* eip 1559_tx_constraints
* eip 1559_tx_constraints
* return error on uint256 overflow
* up uint256 version
* merge master
* fix master
Co-authored-by: ledgerwatch <akhounov@gmail.com>
2021-06-04 17:25:28 +01:00
Alex Sharov
ccac3c6566
Add tx.Append method for ergonomic ( #2088 )
...
* close cursor
* stateless append
* stateless append
* faster pruning del and close cursor
* faster pruning del and close cursor
* less wrappers
* less wrappers
* less wrappers
* clean
Co-authored-by: ledgerwatch <akhounov@gmail.com>
2021-06-04 14:32:48 +01:00
Alex Sharov
52d35930e8
simplify receipts reading ( #2094 )
...
* simplify receipts reading
* test
2021-06-04 13:28:18 +01:00
Artem Vorotnikov
3a86048af6
Remove block number from PlainStateWriter ( #2091 )
2021-06-04 11:13:19 +03:00
Alex Sharp
7fd335308d
Switch more tests to new staged sync
2021-05-31 19:21:53 +01:00
Artem Vorotnikov
b7753254be
Small fixes and cleanup ( #2067 )
2021-05-31 17:29:55 +01:00
ledgerwatch
7ffd67e973
Move tests 4 ( #2057 )
...
* Convert tests to new staged sync 4
* More
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-05-30 22:58:00 +01:00
Evgeny Danilenko
74847d77e6
Rename to Erigon ( #2018 )
...
* turbo-geth to erigon
* tg, turbo to erigon
2021-05-26 11:35:39 +01:00
ledgerwatch
7d98b6504a
Improvements in the mock sentry tests ( #1997 )
...
* Improvements in the mock sentry tests
* GenerateChain to return chainpack
* Fix consensus
* Fix core
* Fix core/state
* Fix eth
* Fix eth/download
* Fix eth/fetcher
* Fix eth/filters
* Fix eth/gasprice
* Fix eth/protocols/eth
* Fix tests
* Fix turbo/stages
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-05-23 17:10:34 +01:00
ledgerwatch
835b954f5c
State stream to RPC daemon ( #1986 )
...
* Remove interfaces
* Squashed 'interfaces/' content from commit e06631eb4
git-subtree-dir: interfaces
git-subtree-split: e06631eb4d0926c2d6a4f552497b920b4ed8d1bd
* Update KV interface
* Squashed 'interfaces/' changes from e06631eb4..014677ffe
014677ffe Merge remote-tracking branch 'origin/master' into stream
08c32a09e add version method to txPool and ethbackend
5b6bf70b9 Update README.md
7712cb267 Update README.md
f895ece4c save (#37 )
git-subtree-dir: interfaces
git-subtree-split: 014677ffe5bff0dee1a333f06c92e6110d791468
* Fix old interfaces
* Squashed 'interfaces/' changes from 014677ffe..df31e1146
df31e1146 remove action from storage change
git-subtree-dir: interfaces
git-subtree-split: df31e1146c368eda2e2b15ab252b78fba7a0a6f3
* add Accumulator
* add location
* Squashed 'interfaces/' changes from df31e1146..472584639
472584639 Merge remote-tracking branch 'origin/master' into stream
dd6a42724 Refactor of consensus interface (#28 )
git-subtree-dir: interfaces
git-subtree-split: 472584639f637189dfb906ef1ed03665f98d55d2
* Fix compilation in cons
* Pass accumulator to Execution stage
* Fix test
* Pass accumulator to unwind and plain writer
* Add accumulator use to plain writer
* Squashed 'interfaces/' changes from 472584639f..5c36f038b8
5c36f038b8 State change stream to KV (#38 )
REVERT: 472584639f Merge remote-tracking branch 'origin/master' into stream
REVERT: df31e1146c remove action from storage change
REVERT: 014677ffe5 Merge remote-tracking branch 'origin/master' into stream
REVERT: e06631eb4d Fix
REVERT: 9c10d79d2d Fix
REVERT: 61ae9307de Fix
REVERT: 4fcf34ecc5 State change stream to KV
git-subtree-dir: interfaces
git-subtree-split: 5c36f038b87096ffb6b07e90c6762c21b864cd3b
* Add state.stream flag
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-05-23 15:53:18 +01:00
Artem Vorotnikov
5655409616
Do not write old block changesets in pruning storage mode ( #1964 )
...
* Remove incremental staged sync
* Do not write old block changesets in pruning storage mode
* Remove pruning flag, put behaviour behind !StorageMode.History
2021-05-22 11:57:10 +01:00
Alex Sharov
0be3044b7e
rename ( #1978 )
...
* rename
* rename "make grpc"
* rename "abi bindings templates"
* rename "abi bindings templates"
2021-05-20 19:25:53 +01:00
Alex Sharov
50934fa5d3
Move chain maiker to kv ( #1972 )
2021-05-20 18:49:33 +07:00
Alex Sharov
781a67a4ee
Auto-Close db in tests by using t.Cleanup ( #1956 )
2021-05-19 10:47:28 +07:00
Artem Vorotnikov
66a8c23c37
Remove TrieDbState + other things ( #1925 )
...
* Remove old table from script
* Simplify ChangeSetWriter
* Move state tests to KV
* Simplify TrieCfg
* Port state tests away from TrieDbState
* Remove old MakePreState
* Upgrade t8ntool's MakePreState
* MakePreState2 -> MakePreState
* Remove TrieDbState
2021-05-16 06:21:29 +01:00
b00ris
565a4250d6
Snapshot sync headers stage ( #1836 )
...
* save state
* snapshot update works
* save state
* snapshot migrator
* tx test
* save state
* migrations stages refactor
* refactor snapshot migrator
* compilation fixed
* integrate snapshot migrator
* goerli sync headers
* debug async snapshotter on goerly
* move verify headers, remove experiments, fix remove old snapshot
* save state
* refactor snapshotsync injection
* fix deadlock
* replace snapshot generation stage logic to migrate method
* change done for body snapshot
* clean
* clean&&change deleted value
* clean
* fix hash len
* fix hash len
* remove one of wrap methods, add remove snapshots on start
* add err check
* fix shadowing
* stages unwind order debug
* matryoshka experiments
* steam test
* fix build
* fix test
* fix lint
* fix test
* fix test datarace
* add get test
* return timeout
* fix mdbx overlap
* fix after merge
* change epoch size
* clean todo
* fix
* return testdata
* added return from sndownloader gorutine
* fix review comments
* Fix
* More info
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-05-08 09:45:40 +01:00
Artem Vorotnikov
09788dbc02
Pruning flag, incremental staged sync ( #1899 )
2021-05-08 00:07:49 +03:00
Alex Sharov
e8255abdd0
deprecate tds and trie ( #1890 )
2021-05-06 15:48:30 +07:00
Alex Sharov
e87d4932f7
Changeset writer move to tx ( #1871 )
2021-05-05 14:31:40 +07:00
Artem Vorotnikov
2148885637
Simplify ChangeSet implementation and tests ( #1878 )
...
* Move storage changeset code into one file
* Simplify storage changeset tests
* simplify more
* more
* more
* more
* move account changeset into one file
* simplify account changeset test
* NewStorageChangesetPlain -> NewStorageChangeSet
* EncodeStoragePlain -> EncodeStorage
* StorageChangeSetPlain -> StorageChangeSet
* AccountChangeSetPlain -> AccountChangeSet
* more
* more
* more
* Simplify EncodeStorage
* more
* Simplify FromDBFormat
* more rename
* rename changeset buckets (constant names only)
2021-05-04 13:34:08 +01:00
Alex Sharov
aacc457ea8
rawdb deprecated methods with Database interface ( #1854 )
2021-05-01 14:42:23 +07:00
Artem Vorotnikov
57c88868a3
GetAsOf: do not return error on nil ( #1820 )
2021-04-26 18:05:29 +01:00
Alex Sharov
c40c3b7a7a
exec unwind etl ( #1806 )
2021-04-26 10:41:31 +01:00
Artem Vorotnikov
63835b6a30
Remove locking from IntraBlockState ( #1795 )
2021-04-26 10:40:25 +01:00
Alex Sharov
eee9438625
deprecate PlainDbState in favor of PlainKvState ( #1805 )
2021-04-26 12:37:48 +07:00
ledgerwatch
12cde41772
Aleut support (Eip1559) ( #1704 )
...
* Where I am at
* Refactoring of transaction types
* More refactoring
* Use Homested signer in rpc daemon
* Unified signer
* Continue unified signer
* A bit more
* Fixes and down the rabbit hole...
* More tx pool fixes
* More refactoring fixes
* More fixes'
* more fixes
* More fixes
* More compile fixes
* More RLP hand-writing
* Finish RLP encoding/decoding of transactions
* Fixes to header encoding, start on protocol packets
* Transaction decoding
* Use DecodeTransaction function
* Decoding BlockBodyPacket
* Encode and decode for pool txs
* Start fixing tests
* Introduce SigningHash
* Fixes to SignHash
* RLP encoding fixes
* Fixes for encoding/decoding
* More test fixes
* Fix more tests
* More test fixes
* More test fixes
* Fix core tests
* More fixes for signer
* Fix for tx
* Fixes to string encoding/size
* Fix eip2930 test
* Fix rest of ./tests
* More fixes
* Fix compilation
* More test fixes
* More test fixes
* Test fixes
* More fixes
* Reuse EncodingSize in EncodeRLP for accessList
* Rearrange things in dynamic fee tx
* Add MarshalBinary
* More fixes
* Make V,R,S non-pointers
* More NPE fixes
* More fixes
* Receipt fixes
* Fix core/types
* Fix ./eth
* More compile fixes for tests
* More test fixes
* More test fixes
* Try to see lint errors better
* Try to see lint errors better
* Fix lint
* Debugging eip1559 test
* Fix TestEIP1559Transition test
* Fix NewBlockPacket encoding/decoding
* Fix calculation of TxHash
* Fix perf problem with senders
* Update aleut config values
* Try adding static peers
* Add staticpeers to defaul flags
* Change aleut networkID
* Fix test
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-04-22 18:11:37 +01:00
Alex Sharov
0af3085461
Revert "GetAsOf: do not return error on nil ( #1769 )" ( #1782 )
...
This reverts commit 60196abf50
.
2021-04-22 13:45:04 +01:00
Alex Sharov
e7a78a2d9f
Mdbx: speedup tests ( #1776 )
2021-04-21 20:03:08 +07:00
Artem Vorotnikov
60196abf50
GetAsOf: do not return error on nil ( #1769 )
2021-04-21 10:47:46 +07:00
Artem Vorotnikov
c967655c1d
More cleanups ( #1765 )
2021-04-21 08:48:37 +07:00
Evgeny Danilenko
17c07c50a5
Move clique buckets to separate DB ( #1703 )
...
* debug
* debug
* it works
* rename clique bucket
* remove genesis special case
* copy snapshot
* remove debug
* migration
* debug
* regenerate snapshots
* simplify
* regeneration
* after merge
* tests
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-04-19 22:58:05 +01:00
Alex Sharov
e473e0b4d9
lint fixes ( #1717 )
2021-04-13 21:48:20 +07:00
Alex Sharov
7222cdd640
delete tds.unwindTo method ( #1688 )
2021-04-08 10:47:10 +07:00
Artem Vorotnikov
b71c6323a0
KVGetter, replace old geth interfaces with it ( #1676 )
2021-04-05 20:04:58 +07:00
Artem Vorotnikov
d66555268d
Harmonize DB APIs ( #1669 )
2021-04-03 09:26:00 +03:00
Alex Sharov
9a9c5b298a
bitmapdb to use rwtx ( #1661 )
2021-04-03 08:52:45 +07:00
Alex Sharov
fbfc43da7e
etl to use rwtx ( #1660 )
2021-04-02 18:22:25 +07:00
Alex Sharov
ef77eb3053
tx.RwCursor() to return err (first step of removing lazy cursors) ( #1656 )
2021-04-02 13:36:49 +07:00
Alex Sharov
fbd9690251
Remove tds in few tests ( #1657 )
2021-04-02 12:14:43 +07:00
Alex Sharov
abe5bd879c
Remove old loader, step 3 (remove some tds and blockchain objects in tests) ( #1647 )
2021-04-01 12:36:22 +07:00
Alex Sharov
b4a2d823c4
old loader remove v1 ( #1641 )
2021-03-31 14:43:12 +07:00
Artem Vorotnikov
d4c10c9a47
Port rpcdaemon to KV interface ( #1627 )
2021-03-30 12:53:54 +03:00
Artem Vorotnikov
9b8cdc0f22
Fix lints and remove more unused code ( #1621 )
2021-03-29 10:58:45 +07:00
Artem Vorotnikov
e67be2b1be
Remove unused code ( #1604 )
...
* Remove graphql, legacy options
* Remove CODEOWNERS
* Remove EWASM and custom EVM interpreter
2021-03-26 09:08:01 +07:00
Alex Sharov
b31813dcb5
Mining - don't write changesets to batch ( #1595 )
2021-03-24 12:09:29 +07:00
Artem Vorotnikov
a6742a4cf8
Kill cmd/state/stateless ( #1592 )
...
* Move stuff around
* Remove
* tidy
* Fix for writeReceipt printing
* fix lint typo
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-03-23 16:33:58 +00:00
Alex Sharov
91e4126ca7
db commit - remove unused return param ( #1584 )
2021-03-22 19:41:52 +07:00
Artem Vorotnikov
6a6f5469a1
KV: Split RO and RW transactions ( #1577 )
2021-03-21 20:15:25 +07:00
alex.sharov
e7034c0eba
revert
2021-03-21 17:50:05 +07:00
alex.sharov
970c7e93a8
remove old flags
2021-03-21 17:05:42 +07:00
Alex Sharov
97eec4288a
Tests: use transaction instead of db.MemCopy in chain_makers.go ( #1570 )
...
* mdbx tests speedup
* mdbx tests speedup
* devel up
* devel up
* devel up
* lint
* less db copy
* don't loose error in test
* clean
2021-03-20 19:33:40 +00:00
Artem Vorotnikov
0b2e4df0ff
Align Cursor API with LMDB/MDBX ( #1558 )
2021-03-19 14:45:01 +07:00
Alexey Sharp
519b19f8aa
Compilation fixes
2021-03-14 08:00:37 +00:00
Martin Holst Swende
d85afb7d20
core/state: fix eta calculation on pruning ( #22386 )
2021-03-12 15:52:25 +01:00
Martin Holst Swende
1f9850da82
core/state/pruner: fix compaction range error
2021-03-10 10:58:50 +01:00
Péter Szilágyi
97fc3ba0d2
core/state/pruner: fix compaction after pruning
2021-03-10 10:58:39 +01:00
gary rong
a9e6250e72
all: bloom-filter based pruning mechanism ( #21724 )
...
* cmd, core, tests: initial state pruner
core: fix db inspector
cmd/geth: add verify-state
cmd/geth: add verification tool
core/rawdb: implement flatdb
cmd, core: fix rebase
core/state: use new contract code layout
core/state/pruner: avoid deleting genesis state
cmd/geth: add helper function
core, cmd: fix extract genesis
core: minor fixes
contracts: remove useless
core/state/snapshot: plugin stacktrie
core: polish
core/state/snapshot: iterate storage concurrently
core/state/snapshot: fix iteration
core: add comments
core/state/snapshot: polish code
core/state: polish
core/state/snapshot: rebase
core/rawdb: add comments
core/rawdb: fix tests
core/rawdb: improve tests
core/state/snapshot: fix concurrent iteration
core/state: run pruning during the recovery
core, trie: implement martin's idea
core, eth: delete flatdb and polish pruner
trie: fix import
core/state/pruner: add log
core/state/pruner: fix issues
core/state/pruner: don't read back
core/state/pruner: fix contract code write
core/state/pruner: check root node presence
cmd, core: polish log
core/state: use HEAD-127 as the target
core/state/snapshot: improve tests
cmd/geth: fix verification tool
cmd/geth: use HEAD as the verification default target
all: replace the bloomfilter with martin's fork
cmd, core: polish code
core, cmd: forcibly delete state root
core/state/pruner: add hash64
core/state/pruner: fix blacklist
core/state: remove blacklist
cmd, core: delete trie clean cache before pruning
cmd, core: fix lint
cmd, core: fix rebase
core/state: fix the special case for clique networks
core/state/snapshot: remove useless code
core/state/pruner: capping the snapshot after pruning
cmd, core, eth: fixes
core/rawdb: update db inspector
cmd/geth: polish code
core/state/pruner: fsync bloom filter
cmd, core: print warning log
core/state/pruner: adjust the parameters for bloom filter
cmd, core: create the bloom filter by size
core: polish
core/state/pruner: sanitize invalid bloomfilter size
cmd: address comments
cmd/geth: address comments
cmd/geth: address comment
core/state/pruner: address comments
core/state/pruner: rename homedir to datadir
cmd, core: address comments
core/state/pruner: address comment
core/state: address comments
core, cmd, tests: address comments
core: address comments
core/state/pruner: release the iterator after each commit
core/state/pruner: improve pruner
cmd, core: adjust bloom paramters
core/state/pruner: fix lint
core/state/pruner: fix tests
core: fix rebase
core/state/pruner: remove atomic rename
core/state/pruner: address comments
all: run go mod tidy
core/state/pruner: avoid false-positive for the middle state roots
core/state/pruner: add checks for middle roots
cmd/geth: replace crit with error
* core/state/pruner: fix lint
* core: drop legacy bloom filter
* core/state/snapshot: improve pruner
* core/state/snapshot: polish concurrent logs to report ETA vs. hashes
* core/state/pruner: add progress report for pruning and compaction too
* core: fix snapshot test API
* core/state: fix some pruning logs
* core/state/pruner: support recovering from bloom flush fail
Co-authored-by: Péter Szilágyi <peterke@gmail.com>
# Conflicts:
# cmd/geth/main.go
# cmd/geth/usage.go
# core/blockchain.go
# core/blockchain_snapshot_test.go
# core/genesis.go
# core/rawdb/database.go
# core/rawdb/schema.go
# core/state/snapshot/conversion.go
# core/state/snapshot/snapshot.go
# core/state/snapshot/snapshot_test.go
# eth/backend.go
# go.mod
# go.sum
# tests/block_test_util.go
# tests/state_test_util.go
# trie/stacktrie.go
2021-03-10 10:58:22 +01:00
Péter Szilágyi
40a366086e
core/state: convert prefetcher to concurrent per-trie loader
...
# Conflicts:
# accounts/abi/bind/backends/simulated.go
# core/blockchain.go
# core/state/state_object.go
# core/state/state_test.go
# core/state/statedb.go
# core/state/statedb_test.go
# eth/api_tracer.go
# miner/worker.go
2021-03-09 12:30:09 +01:00
Martin Holst Swende
6c3d78d0d9
core: implement background trie prefetcher
...
Squashed from the following commits:
core/state: lazily init snapshot storage map
core/state: fix flawed meter on storage reads
core/state: make statedb/stateobjects reuse a hasher
core/blockchain, core/state: implement new trie prefetcher
core: make trie prefetcher deliver tries to statedb
core/state: refactor trie_prefetcher, export storage tries
blockchain: re-enable the next-block-prefetcher
state: remove panics in trie prefetcher
core/state/trie_prefetcher: address some review concerns
sq
# Conflicts:
# core/blockchain.go
# core/state/database.go
# core/state/state_object.go
# core/state/statedb.go
2021-03-09 11:15:19 +01:00
ledgerwatch
b743b88218
Revert "Extract validating interface ( #1120 )" ( #1543 )
...
* Revert "Extract validating interface (#1120 )"
This reverts commit e4e36c152e
.
* Fix go mod tidy
* Fix lint
* Fix lint
* fix lint
* Test fix
* Fix test
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-03-05 20:34:23 +00:00
Evgeny Danilenko
e4e36c152e
Extract validating interface ( #1120 )
...
* interface
* generalize interface
* linters
* fix deadlock
* fix linters
* close goroutine
* fix
* debug
* id+ttl
* refactor downloader tests
* tests
* lru
* handle genesis, extract fake consensuses
* fix fake consensus
* test uncles, verify
* after a new master
* fmt
* fix close
* debug
* debug
* fix chain length
* remove test field
* use single account
* fix data race on closing channel
* remove postponed blocks queue
* miner test
* VerifyHeaderRequests
* fmt
* fmt
* fix data race
* handle validating errors
* simplify matchParents
* remove copy-paste
* move sort to constructor
* clean up
* debug for 10 parents
* debug
* debug
* batch responses
* batch requests
* works for many ancestors
* remove debug
* always Close an engine
* linters
* ancestors deduplication
* fix test
* reduce interface
* api
* clique
* green clique sync
* stable
* perpermance per second
* full sync
* linters
* gitignore
* deps
* fix panic after master merge
* init consensus
* clique tests
* fix tests
* fix tests
* clean up
* reuse snap
* store vefified snapshots
* optimize snapshots
* safe close
* cleanup loop
* after downloader
* downloader and consensus tests
* update tests
* hack.go
* clique flags
* fix cliuqe config
* review
* gitignore
* remove additional bucket
* blk/sec instead of blk/microsecond
* rename
* deps
* optimize
* debug
* test
* tests without extracted validation process
* same base performance as on master
* benchmark
* simplify ethash verification
* ethash
* ethash
* linters
* ethash
* master stats
* cleanup
* gomod
* linters
* tests
* better locks
* Fix
* Remove logging for verifyHeaders
* Verification speed in the logs
* Fix compile error
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-02-25 19:40:45 +00:00
Alex Sharov
d4ef1f8516
blocks exec unwind - to support graceful shutdown ( #1494 )
...
* quit exec unwind
* quit exec unwind
* lint
2021-02-23 17:14:32 +00:00
Alex Sharov
f1ee8d507e
New Trie db layout - store trie structure info and multiple hashes per record ( #1500 )
...
* squash
* squash
* squash
* squash
* squash
* squash
* squash
* squash
* squash
* squash
* squash
* squash
* squash
* squash
* squash
* squash
* squash
* squash
* squash
* squash
* squash
* SE
* SE
* SE
* SE
* SE
* SE
* SE
* SE
* SE
* SE
* SE
* SE
* SE
* SE
* SE
2021-02-21 18:41:59 +00:00
Artem Vorotnikov
5c34713e71
Remove nested transactions ( #1483 )
2021-02-10 17:04:22 +00:00
Artem Vorotnikov
123710adcd
ChangeSet: remove Walker::Walk ( #1476 )
2021-02-09 17:26:00 +07:00
Artem Vorotnikov
91f7798c4a
Remove hashed changesets ( #1464 )
...
* Remove hashed changesets
* try this
* oops
* simplify
* better diagnostics
* don't hash account key and use bitmap 64 to check history index
* update docs of bucket
Co-authored-by: alex.sharov <AskAlexSharov@gmail.com>
2021-02-04 12:59:04 +03:00
Alex Sharov
58c4e03861
Revert "Remove hashed changesets ( #1444 )" ( #1446 )
...
This reverts commit aadb6e47cc
.
2021-01-20 14:16:20 +07:00
Artem Vorotnikov
aadb6e47cc
Remove hashed changesets ( #1444 )
2021-01-19 17:42:26 +07:00
Alex Sharov
d7d9ce0a8e
fix go vet ( #1425 )
2020-12-26 10:18:16 +07:00
ledgerwatch
3287b44c2e
Bad unwind of recreation of CREATE2 contract - unit test and potentia… ( #1412 )
...
* Bad unwind of recreation of CREATE2 contract - unit test and potential fix
* Fix unit test
* Fix lint
* Fix lint
* Fixup hack
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2020-12-16 17:16:37 +00:00
ledgerwatch
0953fd42cb
WIP trace_call implementation ( #1399 )
...
* trace_call initial
* Fix tests
* More tracing
* Add more fields to the action
* Completed first example query
* Add initial bench11 to compare trace_call with OpenEthereum
* Exclude precompile calls from call traces
* Add self-destruct, call types, more comparison in rpctest
* Support for execution errors
* Stack underflow error and delegatecall value
* Fix lint
* Fix suicide traceAddress, Bad instruction error
* Fix lint
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2020-12-14 11:27:52 +00:00