Alex Sharov
e7849498d5
Degbug build support (for delve debugger and for getting C code profiling, traces) ( #1843 )
2021-04-29 21:29:58 +07:00
Alex Sharov
07a063cb8a
txn full fix - cursors leak ( #1838 )
2021-04-28 18:00:32 +01: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
768bdcd850
--database.verbosity flag ( #1829 )
...
* --database.verbosity flag
* --database.verbosity flag
2021-04-27 13:31:00 +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
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
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
566233fee9
switch to master failed ( #1812 )
2021-04-26 15:40:49 +07:00
Alex Sharov
3462059ae8
mdbx rpcdaemon support, mdbx - switch to master branch ( #1804 )
2021-04-26 12:00:20 +07: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
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
e7a78a2d9f
Mdbx: speedup tests ( #1776 )
2021-04-21 20:03:08 +07:00
Alex Sharov
41fa29d421
Mining fixes ( #1771 )
2021-04-21 12:01:25 +07:00
Alex Sharov
bf1c219531
Move txPool.Get method behind direct-grpc ( #1760 )
2021-04-20 21:41:46 +07:00
Alex Sharov
a95bc0e34d
Mdbx devel up 3 ( #1763 )
2021-04-20 16:01:28 +07:00
Alex Sharov
00f700675b
add --datadir parameter to integration, snapshot generator, header downloader ( #1749 )
2021-04-19 14:25:26 +07:00
Alex Sharov
22b9522112
RPCDaemon: add --datadir flag, use --chaindata only if wanna redefine default chaindata folder ( #1747 )
2021-04-19 12:44:14 +07:00
Alex Sharov
07913a4d96
Mdbx force madv random ( #1733 )
2021-04-16 08:12:45 +07:00
Alex Sharov
5703059f29
[merge after release] Move history stage to rwtx ( #1727 )
2021-04-15 17:06:30 +07:00
Alex Sharov
acf1118300
MDBX: enable MADV_RANDOM ( #1712 )
2021-04-12 21:30:19 +07:00
Alex Sharov
2a3dca2fdb
mdbx devel version up ( #1689 )
2021-04-08 09:45:15 +07:00
Alex Sharov
cc539ce266
Remove blockchain.InsertChain method ( #1681 )
2021-04-06 12:06:07 +07:00
Artem Vorotnikov
b71c6323a0
KVGetter, replace old geth interfaces with it ( #1676 )
2021-04-05 20:04:58 +07:00
Artem Vorotnikov
70181c4af8
Mutation: implement StatelessRwTx ( #1670 )
2021-04-05 13:00:35 +07:00
Artem Vorotnikov
19924040bc
KV: Unified Has ( #1671 )
2021-04-03 19:04:58 +07:00
Artem Vorotnikov
d66555268d
Harmonize DB APIs ( #1669 )
2021-04-03 09:26:00 +03:00
Artem Vorotnikov
07b1959d91
Stateless Tx interface ( #1667 )
2021-04-03 13:14:08 +07:00
Artem Vorotnikov
e0a2d47139
Remove ancients and some old skipped tests ( #1668 )
2021-04-03 13:08:35 +07:00
Alex Sharov
ad342b27ab
Mdb no db size log ( #1665 )
2021-04-03 10:30:28 +07:00
Alex Sharov
9a9c5b298a
bitmapdb to use rwtx ( #1661 )
2021-04-03 08:52:45 +07:00
Alex Sharov
6179933872
more ( #1658 )
2021-04-02 16:15:41 +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
ea7425adea
tests ( #1631 )
2021-03-31 08:26:01 +07:00
Artem Vorotnikov
d4c10c9a47
Port rpcdaemon to KV interface ( #1627 )
2021-03-30 12:53:54 +03:00
Alex Sharov
86ccfd0338
RPC: Pending transactions/blocks/logs ( #1625 )
2021-03-30 14:09:00 +07:00
Artem Vorotnikov
9b8cdc0f22
Fix lints and remove more unused code ( #1621 )
2021-03-29 10:58:45 +07:00
Alex Sharov
416a69ecb3
Genesis.toBlock remove db from arguments ( #1611 )
2021-03-28 16:27:06 +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
d39c7fa121
mdbx: switch to master branch
2021-03-26 07:18:35 +07:00
Alex Sharov
8e385d9648
Mining: use noop writer when applyTx, pending logs subscription ( #1600 )
2021-03-25 13:42:45 +07:00
Artem Vorotnikov
7968637d42
ObjectDatabase cleanup ( #1598 )
...
* ObjectDatabase cleanup
* Remove ObjectDatabase::WarmUp
2021-03-24 22:48:08 +00:00
Alex Sharov
aff859edc0
Mining stage ( #1554 )
2021-03-23 16:00:07 +07:00
Alex Sharov
47c6bdce9d
RPCDaemon: increase throughput by allowing more parallel grpc streams and not lockthread for read tx ( #1580 )
2021-03-23 14:28:04 +07:00
Alex Sharov
4c82b15c36
no_panic_be_happy ( #1586 )
2021-03-22 22:45:24 +07:00
Alex Sharov
91e4126ca7
db commit - remove unused return param ( #1584 )
2021-03-22 19:41:52 +07:00
Alex Sharov
40dd00fee7
remove ideal batch size ( #1582 )
2021-03-22 13:47:01 +07:00
Alex Sharov
f7c122417c
MDBX bindings: remove finalizers (write tx require to be closed from same thread) ( #1579 )
2021-03-21 20:16:04 +07:00
Artem Vorotnikov
6a6f5469a1
KV: Split RO and RW transactions ( #1577 )
2021-03-21 20:15:25 +07:00
alex.sharov
b49717e48f
revert
2021-03-21 17:53:50 +07:00
Artem Vorotnikov
c9bccbb612
Remove autogen from typedcursor ( #1576 )
2021-03-21 15:10:14 +07:00
Artem Vorotnikov
72ff17e0b7
Hide TxDb ( #1575 )
2021-03-21 12:20:44 +07:00
Alex Sharov
ce868009d6
devel up ( #1574 )
2021-03-21 10:02:15 +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
b5f9cdd7b2
KV: split Sequence into ReadSequence and MakeSequence ( #1569 )
2021-03-20 21:12:54 +07:00
Andrew Ashikhmin
e303aeb5ee
Simple test for layout of TrieOfAccountsBucket ( #1563 )
2021-03-20 16:38:45 +07:00
Alex Sharov
0953c11c04
grpc version up ( #1568 )
2021-03-20 16:35:13 +07:00
Artem Vorotnikov
01f6542729
KV: Remove reserve, putcurrent, cmp, dcmp ( #1552 )
2021-03-20 16:35:02 +07:00
Alex Sharov
ba37706681
move remote eth backend from ethdb to core package ( #1567 )
2021-03-20 10:52:00 +07:00
ledgerwatch
81ea5bab78
More updates to downloader, new p2psentry protocol ( #1559 )
...
* 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 )
* More additions
* More additions
* Fix locking
* Intermediate
* Fix separation of phases
* Intermediate
* Fix test
* More transformations
* New simplified way of downloading headers
* Fix hard-coded header sync
* Fixed syncing near the tip of the chain
* Add architecture diagram source and picture (#10 )
* More fixes
* rename tip to link
* Use preverified hashes instead of preverified headers
* Fix preverified hashes generation
* more parametrisation
* Continue parametrisation
* Fix grpc data limit, interruption of headers stage
* Add ropsten preverified hashes
* Typed hashes (#11 )
* Typed hashes
* Fix PeerId
* 64-bit tx nonce
* Disable penalties
* Add goerli settings, bootstrap nodes
* Try to fix goerly sync
* Remove interfaces
* Add proper golang packages, max_block into p2p sentry Status
* Prepare for proto overhaul
* Squashed 'interfaces/' content from commit ce36053c2
git-subtree-dir: interfaces
git-subtree-split: ce36053c24db2f56e48ac752808de60afa1dfb4b
* Change EtherReply to address
* Adaptations to new types
* Switch to new types
* Fixes
* Fix formatting
* Fix lint
* Lint fixes, reverse order in types
* Fix lint
* Fix lint
* Fix lint
* Fix test
* Not supporting eth/66 yet
* Fix shutdown
* Fix lint
* Fix lint
* Fix lint
* return stopped check
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>
2021-03-19 21:24:49 +00:00
ledgerwatch
a583f7f6ca
Try to fix multiple head subscriptions ( #1565 )
...
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-03-19 17:36:38 +00:00
b00ris
c03da8fb8e
Split header prefix bucket to headers, td and canonical ( #1556 )
...
* split headers prefix
* migration
* fix downloader bug
* test for migration
* fix lint
* uncomment t.Prallel
* fix postprocessing test
2021-03-19 12:54:47 +00:00
Artem Vorotnikov
0b2e4df0ff
Align Cursor API with LMDB/MDBX ( #1558 )
2021-03-19 14:45:01 +07:00
Igor Mandrigin
7e7ec69428
use lmdb for in-mem database and restore zk tests
2021-03-17 21:51:24 +01:00
Igor Mandrigin
0a55895b33
Merge branch 'master' into geth-1-10-1
2021-03-17 16:50:20 +01:00
Igor Mandrigin
fd37289665
fixes to core tests (compilation)
2021-03-16 12:44:38 +01:00
Alex Sharov
3ffa029497
Add mdbx_drop cli tool ( #1553 )
2021-03-15 09:41:02 +07:00
Alex Sharov
3f305673aa
Trie: add invariant - first level of trie must be in DB (to ensure having 100% trie structure in trie_account table) ( #1522 )
2021-03-13 09:30:54 +07:00
Alex Sharov
879112f347
TxDb: Walk method - to reuse cursors ( #1548 )
2021-03-12 16:27:04 +07:00
Alex Sharov
060f3b9a60
Grafana: add Btree metrics ( #1547 )
2021-03-10 10:58:57 +07:00
Alex Sharov
4fe019a099
add periodical db statistic metrics ( #1545 )
2021-03-09 13:34:13 +07:00
alex.sharov
5ae602e9a4
less metrics performance impact
2021-03-08 18:58:44 +07:00
Alex Sharov
cdc090ebfd
Delete MultiWalk and GetIndexChunk funcs from Database interface ( #1544 )
2021-03-08 12:08:37 +07: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
Alex Sharov
2bdf7fde30
mdbx: remove custom logger ( #1536 )
2021-03-03 17:35:49 +07:00
ledgerwatch
c00f85ab6c
Simplification of eth_estimageGas ( #1531 )
...
* Simplification of eth_estimageGas
* Set GasCap by default
* Add a test
* Fix crash
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-03-02 22:47:44 +00:00
alex.sharov
61f8a1ef0c
revive
2021-03-02 09:52:05 +07:00
Alex Sharov
d284f4ede0
clear bucket must not change DBI handle ( #1526 )
2021-03-01 11:15:59 +07:00
Alex Sharov
f556af6276
Prometheus metrics: more virtual memory visibility, more cross-platform metrics ( #1520 )
2021-02-28 11:11:28 +07: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
25393f46ea
mdbx: fix master ( #1517 )
2021-02-25 13:20:57 +07:00
Alex Sharov
303d697619
mdbx: same dirty list size as lmdb ( #1515 )
2021-02-25 10:00:51 +07:00
Alex Sharov
de1806c173
same options as lmdb ( #1514 )
2021-02-25 09:41:57 +07:00
Alex Sharov
6894d9b356
Remove cursor features ( #1508 )
2021-02-23 09:02:54 +07: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
Alex Sharov
101c7d78c0
compatibility fix ( #1495 )
2021-02-14 11:38:28 +07:00
ledgerwatch
6a1f000cf7
Bring kv interfaces ( #1493 )
...
* Remove interfaces
* Squashed 'interfaces/' content from commit 0941b0992
git-subtree-dir: interfaces
git-subtree-split: 0941b09926db64934ba7dd161fb9ca2a20ba25b8
* Change generation accordingly
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-02-13 07:41:47 +00:00
lightclient
8777899573
support multiple new head subscribers ( #1490 )
2021-02-12 16:46:50 +00:00
alex.sharov
9b1ec50b97
increase mdbx OptRpAugmentLimit
2021-02-11 12:54:21 +07:00
Alex Sharov
d69f9bd4b2
revert mdbx bindings ( #1488 )
2021-02-11 11:53:14 +07:00
Artem Vorotnikov
5c34713e71
Remove nested transactions ( #1483 )
2021-02-10 17:04:22 +00:00
Artem Vorotnikov
739c0d30a7
Remove DupFixed ( #1482 )
2021-02-10 16:56:44 +07:00
Artem Vorotnikov
123710adcd
ChangeSet: remove Walker::Walk ( #1476 )
2021-02-09 17:26:00 +07:00
alex.sharov
f88607c7f4
revert: enable lifo
2021-02-09 16:05:04 +07:00
alex.sharov
b9aae2bfcb
enable lifo
2021-02-09 16:04:36 +07:00
Alex Sharov
7464b7924d
Print tables size during execution stage ( #1479 )
2021-02-09 12:02:00 +07:00
Alex Sharov
679d70fca8
Print tables size at end of cycle if table>10Gb, and print freelist size ( #1478 )
2021-02-09 11:42:10 +07:00