Alex Sharov
781a67a4ee
Auto-Close db in tests by using t.Cleanup ( #1956 )
2021-05-19 10:47:28 +07:00
Alex Sharov
0c91bfbf3e
RPCDaemon: support Pending block ( #1942 )
...
* clean
* save
* pubsub
* pubsub
* pubsub
* pubsub
* pubsub
* pubsub
* save
* tx pub-sub
* tx pub-sub
* clean
* clean
* save
* save
* save
* save
* save
* Squashed 'interfaces/' content from commit c469f3ae0
git-subtree-dir: interfaces
git-subtree-split: c469f3ae073b60c8821b61fed2910191080ef835
* save
* save
* save
* save
* Squashed 'interfaces/' changes from c469f3ae0..958dfc669
958dfc669 save
git-subtree-dir: interfaces
git-subtree-split: 958dfc669f8daeefe686a13aa852fb95f1537886
* save
* save
* up some deps
* up some deps
* clean
* test
* test
* test
* test
* test
* test
* test
* test
* test
* test
* test
* test
2021-05-17 13:15:19 +01:00
ledgerwatch
86a94e8478
Avoid parsing transactions at Stage3 ( #1940 )
...
* RawBody
* Do not parse transaction during Stage3
* Reinstate delivery channel capacity, add comment
* Correct calculation of tx encoding for hashing
* fix logging of senders stage
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-05-16 20:01:14 +01: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
ledgerwatch
7eefcbe6a6
fix RPC notification, add boilerplate for tests ( #1936 )
...
* fix RPC notification, add boilerplate for tests
* Fix test
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-05-14 22:16:16 +01:00
ledgerwatch
61cba00081
Minor fixes ( #1934 )
...
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-05-14 08:57:18 +01:00
Igor Mandrigin
4e4d2032a3
update skip_analysis
2021-05-13 16:07:04 +02:00
Alex Sharov
47d22773b9
[wip] dv2: Validate body ( #1913 )
...
* validate body
* validate body
* save
* save
* body deliveries messages handling into staged sync
* body deliveries messages handling into staged sync
* body deliveries messages handling into staged sync
* body deliveries messages handling into staged sync
* body deliveries messages handling into staged sync
* penalize right after verifyUncles and stop, don't batch
* penalize right after verifyUncles and stop, don't batch
* penalize right after verifyUncles and stop, don't batch
* penalize right after verifyUncles and stop, don't batch
* penalize right after verifyUncles and stop, don't batch
* penalize right after verifyUncles and stop, don't batch
* penalize right after verifyUncles and stop, don't batch
* penalize right after verifyUncles and stop, don't batch
* penalize right after verifyUncles and stop, don't batch
2021-05-12 14:57:35 +01:00
ledgerwatch
447f20d395
Baikal testnet configuration ( #1910 )
...
* Baikal testnet configuration
* Fixes
* Change AsMessage signature
* Fixes in t8ntool
* More updates
* Fix misspelling
* Skip eip1559 transition test
* More bootnodes
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-05-11 10:54:20 +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
ledgerwatch
59e5502744
Initial work on RPC streaming ( #1880 )
...
* Initial work on RPC streaming
* Create the stream and pass it on
* trace_filter expressed as streamable (not finished)
* Reenable call trace index
* Add new line
* Remove storage mode override
* Tool for overriding storage mode
* Diagnostics
* Make trace_filter more streamy
* Streaming debug_traceTransaction and debug_traceCall
* Fix test
* Log error on stream flush
* Enable streaming for http
* Flush the stream too
* Make trace_filter flush too
* Stop streaming if client is not interested
* Try to quiet annoying test|
* Revert "Try to quiet annoying test|"
This reverts commit 42849257bfa52e90140aa535af34b957cd97a222.
* Debug log for test
* Proceed with handshake regardless of whether peer notification worked
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-05-06 18:37:38 +01:00
Igor Mandrigin
cc6abbcacc
update skip_analysis
2021-05-06 17:00:22 +02:00
Alex Sharov
e8255abdd0
deprecate tds and trie ( #1890 )
2021-05-06 15:48:30 +07:00
Evgeny Danilenko
871bb912b1
[WIP] FuzzyVM for TG ( #1884 )
...
* restore StateRoot
* empty error should be ommited
* calc state root
* logger json remove code duplication
* fix
2021-05-05 21:55:15 +01:00
Alex Sharov
e87d4932f7
Changeset writer move to tx ( #1871 )
2021-05-05 14:31:40 +07:00
Alex Sharov
c7eedf0091
Add kv to stage settings (because it doesn't change in runtime, tx will be passed as Stage func argument) ( #1872 )
...
* add kv to config
* move forward tx use
* move forward tx use
* gc stat
* gc stat
* changeset writer - move to tx
* clean
* clean
* clean
* clean
* clean
2021-05-04 13:36:03 +01: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
ledgerwatch
793c13e20e
trace_filter and CallTrace Index (derivative of #1626 ) ( #1867 )
...
* Trace Index
* trace_filter
* hrtc -> hrt
* Fix CallTraces
* wip
* wip
* Fix for incorrect gas
* fix
* Fix Tracer
* Add block and uncle coinbases to trace index
* rewind coinbase
* Commit every 100k blocks after block 3m
* Simplify
* Safe unwinds
* Safe unwind 2
* Cleanup
* Simplification
* Remove intermediate JSON transform
* Reinstate optional CallIndex stage
* Create rpctest bench for trace_filter
* Fix trace_filter generator
* Restore unwind order
* Ignore the storage mode
* Ignore the storage mode
Co-authored-by: Artem Vorotnikov <artem@vorotnikov.me>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-05-04 07:23:54 +01:00
Alex Sharov
fc196d4b9b
pending txs methods ( #1869 )
2021-05-04 06:51:28 +01:00
ledgerwatch
8c9a76d3bc
Add Baikal checks properly ( #1868 )
...
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-05-04 06:50:06 +01:00
Alex Sharov
f3d2af1e33
Rpcdaemon: move tx pool to own grpc service, subscribe to pending txs ( #1863 )
2021-05-04 08:37:17 +07:00
ledgerwatch
5168287784
Make trace_block results closer to what OpenEthereum returns ( #1862 )
...
* Add block rewards to trace_block
* Add rewards to trace_block
* Remove printouts
* Fix trace_block and trace_transaction
* Fix getBlockByNumber
* Fix for parent/non parent block
* Reverse fix for trace_call
* Fix eth_getTransactionBy
* Fixes for TIMESTAMP etc opcodes
* More fixes
* Fixes to tracers
* Don't call CaptureEnd twice
* Corrent gasUsed for CaptureEnd in create
* Do CaptureFault consistently
* Correct gasUsed for create
* Remove insufficient balance trace
* Catch contract collision error
* Compatibility
* Compatibility
* More error names
* Out of gas
* Clean up
* more error messages
* Restore CaptureFault
* Errors
* Fix test
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-05-03 20:49:55 +01:00
ledgerwatch
4432618cb9
Support for Baikal devnet ( #1853 )
...
* EIP-3529
* Test fix and EIP-3541
* Fix tests
* Fix
* Fix stagedsync test
* Fix
* Remove dup
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-05-02 10:34:19 +01:00
Alex Sharov
aacc457ea8
rawdb deprecated methods with Database interface ( #1854 )
2021-05-01 14:42:23 +07:00
Alex Sharov
ad598652cf
less blockchain object in tests ( #1848 )
2021-05-01 10:51:10 +07:00
ledgerwatch
34c1fdac21
Aleut fix for GASPRICE opcode ( #1852 )
...
* Aleut fix for GASPRICE opcode
* Fix for tip+basefee > feecap
* Unbork
* Fix tests
* Remove setHead test
* Test fix
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-04-30 19:20:18 +01:00
ledgerwatch
75ca6b8c76
Initial work on integration tests ( #1797 )
...
* Initial work on integration tests
* Delete subtree
* Squashed 'interfaces/' content from commit 41a082ba4
git-subtree-dir: interfaces
git-subtree-split: 41a082ba4bde38647325eb0416cb1da1b4ca2b12
* Add consensus interfaces
* More stuff
* comments
* Fix compile
* Squashed 'interfaces/' changes from 41a082ba4..1b13a42a7
1b13a42a7 Add chainspec to consensus interface
git-subtree-dir: interfaces
git-subtree-split: 1b13a42a7803f5464722867a71065c27a7ebe8c3
* Squashed 'interfaces/' changes from 1b13a42a7..93a072c4c
93a072c4c Add missing import
git-subtree-dir: interfaces
git-subtree-split: 93a072c4c099d169322a3a53b95e40203276820b
* New consensus interfaces
* More on clique
* Fix tests
* Squashed 'interfaces/' changes from 93a072c4c..62f4ec4b2
62f4ec4b2 Add test service for consensus engine
git-subtree-dir: interfaces
git-subtree-split: 62f4ec4b263107635ffa3aabd5d634af22e813c6
* Squashed 'interfaces/' changes from 62f4ec4b2..061a63543
061a63543 Fix
git-subtree-dir: interfaces
git-subtree-split: 061a63543babdeb51ab7e3a96dec56b2485d4389
* Configuring clique engine with toml specs - start
* More toml parsing
* Constructed rinkeby genesis
* Simplify VerifyHeaders functions
* Fix lint
* Remove concurrent verification tests
* Fix lint
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-04-29 16:14:10 +01:00
ledgerwatch
7bf95c773c
Update skip_analysis.go ( #1842 )
2021-04-29 16:16:56 +02:00
ledgerwatch
92c20e1f67
[eip-1559] Apply gas limit elasticity ( #1834 )
...
* Apply gas limit elasticity
* Fix unmarshalling tx
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-04-28 15:32:48 +01:00
Alex Sharov
9d82456f17
remove chain indexer and core.setHead func ( #1826 )
2021-04-27 14:48:59 +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
472e161e33
fininish to remove chain context ( #1807 )
2021-04-26 14:23:21 +07:00
Alex Sharov
eee9438625
deprecate PlainDbState in favor of PlainKvState ( #1805 )
2021-04-26 12:37:48 +07:00
ledgerwatch
e3f3dd3c9b
Integration tests 1 ( #1793 )
...
* Initial commit
* Add sentry gRPC interface
* p2psentry directory
* Update README.md
* Update README.md
* Update README.md
* Add go package
* Correct syntax
* add external downloader interface (#2 )
* Add txpool (#3 )
* Add private API (#4 )
* Invert control.proto, add PeerMinBlock, Separare incoming Tx message into a separate stream (#5 )
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
* Separate upload messages into its own stream (#6 )
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
* Only send changed accounts to listeners (#7 )
* Txpool interface doc (#9 )
* Add architecture diagram source and picture (#10 )
* Typed hashes (#11 )
* Typed hashes
* Fix PeerId
* 64-bit tx nonce
* Add proper golang packages, max_block into p2p sentry Status (#12 )
* Add proper golang packages, max_block into p2p sentry Status
* Change EtherReply to address
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
* Add Rust infrastructure (#13 )
* DB stats methods removed by https://github.com/ledgerwatch/turbo-geth/pull/1665
* more p2p methods (#15 )
* add mining methods (#16 )
* First draft of Consensus gRPC interface (#14 )
* Update Rust build
* Fix interfaces in architecture diagram (#17 )
* Fix KV interface provider
* Fix Consensus interface provider
* drop java attributes (#18 )
* tx pool remove unused import (#19 )
* ethbackend: add protocol version and client version (#20 )
* Add missing ethbackend I/F (#21 )
* Add interface versioning mechanism (#23 )
Add versioning in KV interface
Co-authored-by: Artem Vorotnikov <artem@vorotnikov.me>
* spec of tx pool method (#24 )
* spec of tx pool method (#25 )
* Update version.proto
* Refactor interface versioning
* Refactor interface versioning
* Testing interface
* Remove tree
* Fix
* Build testing protos
* Fix
* Fix
* Update to the newer interfaces
* Add ProtocolVersion and ClientVersion stubs
* Hook up ProtocolVersion and ClientVersion
* Remove service
* Add compatibility checks for RPC daemon
* Fix typos
* Properly update DB schema version
* Fix test
* Add test for KV compatibility|
* Info messages about compability for RPC daemon
* DB schema version to be one key
* Update release intructions
Co-authored-by: Artem Vorotnikov <artem@vorotnikov.me>
Co-authored-by: b00ris <b00ris@mail.ru>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: lightclient <14004106+lightclient@users.noreply.github.com>
Co-authored-by: canepat <16927169+canepat@users.noreply.github.com>
Co-authored-by: Alex Sharov <AskAlexSharov@gmail.com>
Co-authored-by: canepat <tullio.canepa@gmail.com>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-04-24 16:46:29 +01: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
ledgerwatch
851769f833
Update skip_analysis.go ( #1783 )
2021-04-22 14:28:26 +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
Alex Sharov
bf1c219531
Move txPool.Get method behind direct-grpc ( #1760 )
2021-04-20 21:41:46 +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
ad6526c318
check block for nil in ReadBlockWithSenders ( #1737 )
2021-04-19 10:18:13 +07:00
Alex Sharov
368f37a02f
Simplify blockchain obj, step 5 ( #1739 )
2021-04-18 12:27:07 +07:00
Alex Sharov
a6541b5402
[merge after release] remove trie cache cli flags and logic ( #1725 )
2021-04-15 17:06:38 +07:00
Alex Sharov
5703059f29
[merge after release] Move history stage to rwtx ( #1727 )
2021-04-15 17:06:30 +07:00
Igor Mandrigin
d7d85af8c4
update skip analysis
2021-04-15 11:01:09 +02:00