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
ledgerwatch
ea2014f5c6
Making trace_filter
work in first approximation with the new call trace index ( #1877 )
...
* Fix RPC daemon
* Initial fixes for trace_filter
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-05-04 13:34:17 +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
99578ec58d
Fix RPC daemon ( #1873 )
...
* Fix RPC daemon
* Skip the test to fix RPC daemon
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-05-04 12:31:07 +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
Alex Sharov
f3d2af1e33
Rpcdaemon: move tx pool to own grpc service, subscribe to pending txs ( #1863 )
2021-05-04 08:37:17 +07:00
Alex Sharov
f230ba1da4
Less use rawdb deprecated methods ( #1861 )
...
* less use deprecated methods
* less use deprecated methods
* auto Dp limit
* auto Dp limit
* add test
2021-05-03 21:01:01 +01: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
7eb088e862
Download request more headers on ext ( #1858 )
...
* use lru
* add comment
* add comment
2021-05-02 08:12:17 +01:00
ledgerwatch
4303465e96
Address dump utility ( #1856 )
...
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-05-01 21:04:02 +01:00
Alex Sharov
08f6299257
broadcast new headers ( #1847 )
...
* broadcast new headers
* don't use eth type
* don't use eth type
* add seenAnnounces scet
* use lru
2021-05-01 21:03:51 +01:00
Alex Sharov
aacc457ea8
rawdb deprecated methods with Database interface ( #1854 )
2021-05-01 14:42:23 +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
Alex Sharov
249b3098cb
add --sentry.api.addr flag ( #1850 )
...
* add --sentry.api.addr
* add --sentry.api.addr
* add --sentry.api.addr
* add --sentry.api.addr
* add --sentry.api.addr
* add --sentry.api.addr
* add --sentry.api.addr
* add --sentry.api.addr
* add --sentry.api.addr
* add --sentry.api.addr
2021-04-30 16:09:03 +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
Thomas Jay Rush
711f157cf5
Re-enable trace_transaction and trace_get - issue 1833 ( #1835 )
...
* Fixes trace_transaction to use new OETracer from trace_block
* Fixes trace_get to use OETracer from trace_block
* Trace only up to txIndex as per suggestion in trace_transaction
* Cleaning up a few old comments
2021-04-29 05:54:48 +01:00
ledgerwatch
6cbfff354d
[download-v2] Use Clique instead of EtHash for clique networks ( #1832 )
...
* Use Clique instead of EtHash for clique networks
* Start tx fetcher, enable GetPooledTx in sentry
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-04-28 14:44:29 +01:00
ledgerwatch
03beaf4df7
Connect txPool to download.v2 to resolve 1 reason for "frozen download" ( #1830 )
...
* Pass txPool into new staged sync
* Remove poolStart function
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-04-27 16:37:03 +01:00
Alex Sharov
9cc4a0a97c
rebort db metrics - not guilty ( #1828 )
2021-04-27 15:32:41 +07:00
ledgerwatch
e8161541e2
Use RLP encoding instead of json for subscriptions ( #1825 )
...
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-04-27 09:23:04 +01:00
ledgerwatch
6b84a92b7d
Fix nil pointer dereference when subscribing to pending txs ( #1823 )
...
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-04-26 18:38:20 +01:00
ledgerwatch
b341b5aed5
Fix for RPC daemon crashing TG when pending txs are transmitted ( #1819 )
...
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-04-26 17:56:02 +01:00
ledgerwatch
04bbd07749
Move sentry message to log.Debug for download.v2 mode ( #1817 )
...
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-04-26 15:40:46 +01:00
Alex Sharov
01ae962459
Clean tmp on start ( #1808 )
...
* fininish to remove chain context
* clean
* move migrations folder from
<datadir>/etl-tmp/migrations
to
<datadir>/migrations
2021-04-26 13:51:01 +01:00
ledgerwatch
117838e213
Move compatibility check ( #1814 )
...
* Move compatibility check
* Implement Alex's suggestion
* Use root context
* Fix lint
* Fix lint
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-04-26 13:39:34 +01:00
Alex Sharov
544c597151
Pending txs part 2 ( #1816 )
2021-04-26 18:15:05 +07:00
Alex Sharov
4e80d6eeed
Pending txs subscription ( #1810 )
2021-04-26 16:53:38 +07:00
Alex Sharov
c40c3b7a7a
exec unwind etl ( #1806 )
2021-04-26 10:41:31 +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
Alex Sharov
3462059ae8
mdbx rpcdaemon support, mdbx - switch to master branch ( #1804 )
2021-04-26 12:00:20 +07:00
Alex Sharov
3af0b9b591
add hashstate, trie, history, logIndex stages ( #1799 )
...
* add hashstate and trie stages
* add history stages
* add history stages
* add history stages
* add logindex stage
* add logindex stage
* add other stages
2021-04-25 09:29:39 +01:00
Alex Sharov
d959986466
Connect TxFetcher to Sentry, Add --download.v2 option to TG ( #1796 )
2021-04-25 11:20:50 +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
38bf28feb4
Fix for nil chainId in eth_getTransactionReceipt ( #1792 )
...
* Fix
* Fix comment
* Update eth_api_test.go
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-04-23 20:48:00 +01:00
Alex Sharov
d7d790725b
Add stage exec to downloader ( #1788 )
2021-04-23 17:27:07 +07:00
Alex Sharov
10c41491fa
Use Config struct for headers/body/senders stages. Add StageSenders to new downloader. ( #1787 )
...
* config for headers/body/senders
* clean
2021-04-23 16:16:45 +07:00
ledgerwatch
5501af8367
Clean up runPeer ( #1780 )
...
* Clean up runPeer
* Improvements
* Fixes
* Clique fixes
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-04-22 18:12:13 +01:00
Alex Sharov
922c66f7b8
check_change_sets_use_tx_obj ( #1781 )
2021-04-22 18:11:55 +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
80a3edae2f
Fixes to the sentry/downloader ( #1767 )
...
* Complete eth/66 migration, temporary disable broadcast
* Update header stage progress correctly
* Fix restarting
* Not pass blockPropagator to headers stage
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-04-21 23:24:01 +01:00
Alex Sharov
4b803bfa6a
Notify RPCDaemon after sync cycle commit ( #1772 )
2021-04-21 17:58:23 +07:00
Artem Vorotnikov
9a3e47a498
Remove StateCache where unused ( #1770 )
2021-04-21 16:14:23 +07:00
Artem Vorotnikov
ffcb4b62a6
Adapters refactor ( #1768 )
2021-04-21 09:18:05 +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
Alex Sharov
7e20142dc5
more commit info ( #1766 )
2021-04-20 21:04:00 +07:00
ledgerwatch
3d0fbb488f
Try adding static peers ( #1762 )
...
* Try adding static peers
* Add staticpeers to defaul flags
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-04-20 12:32:06 +01:00