Commit Graph

576 Commits

Author SHA1 Message Date
Alex Sharov
66c9c6f3f7
Pool v2: set 10K as default limit for sub-pool, check key existence before delete (#122) 2021-10-21 15:39:28 +07:00
Alex Sharov
12e69ab781
Use default crypto context - because creation of new one failing in Docker on linux host (#118) 2021-10-20 09:00:34 +07:00
alex.sharov
0efa6d9a86 fix fuzz test 2021-10-20 07:03:57 +07:00
alex.sharov
c8a357c673 fix nil pointer on error 2021-10-20 06:42:53 +07:00
Alex Sharov
a3431f5663
Propagate all promoted txs when add local tx (#116) 2021-10-19 15:19:54 +07:00
Alex Sharov
158ae418d1
Pool: print local txs propagation info (#115) 2021-10-18 11:22:05 +07:00
ledgerwatch
967937151d
Fixes for compress, decompressor, and tests (#110)
* Fixes for compress, and first test

* Add decompressor and memory mapping

* Add decompressor and memory mapping

* Fix for windows

* Fix lint

* Fix compile for windows

* More on decompressor

* Fix lint

* Decompress

* Fix lint

* Use decompressor in tests, fixes

* Introduce Index for RecSplit

* Fix compilation on Windows

* close index file on failure

* Fixes to the tests

* Add single Elias Fano, fix recsplit fuzz test

* Fix elias fano

* Add two layer index

* Add two level index to the tests

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-10-16 10:43:41 +01:00
Alex Sharov
206df12e62
mdbx version v0.10.5 (#112) 2021-10-15 09:43:24 +07:00
alex.sharov
581f8c914e Revert "save"
This reverts commit b33c2eed9d.
2021-10-14 13:23:41 +07:00
alex.sharov
b33c2eed9d save 2021-10-14 13:22:37 +07:00
alex.sharov
2031989294 Pool: enable .All method 2021-10-13 09:47:33 +07:00
alex.sharov
379c101a50 better log 2021-10-13 09:33:52 +07:00
alex.sharov
bffb89e65a better log 2021-10-13 09:01:43 +07:00
alex.sharov
9eae3ce63a add codeEvict list metric 2021-10-12 15:59:35 +07:00
alex.sharov
f066f52b04 add codeEvict list metric 2021-10-12 15:16:25 +07:00
Alex Sharov
a745f2391c
Remove debug lines from cache (#109) 2021-10-12 11:17:33 +07:00
ledgerwatch
083ee83906
Generalise patricia tree, initial compress (#103)
* Generalise patricia tree, initial compress

* Include tranform

* Generalise Insert

* More on compression

* Fix lint

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-10-11 18:31:49 +01:00
Alex Sharov
6a77e30374
Code cache (#108) 2021-10-11 21:25:22 +07:00
Alex Sharov
bbcf1f0cff
save (#106) 2021-10-10 19:37:10 +07:00
Alex Sharov
7d8355a99a
Pool: sort by nonceDistance inside Red pool (#105) 2021-10-10 16:41:32 +07:00
Alex Sharov
ac51da3a55
add lenth package (#104) 2021-10-08 09:40:16 +07:00
ledgerwatch
240f7f1212
Patricia tree (binary) as a memory efficient alternative to Aho-Corassick (#97)
* First commit

* Refactor

* Fixes

* Now with fuzz tests

* Add matching

* Fixes for empty key

* Reduce garbage during matching

* Swap state objects

* Find longest matches

* Simplify FindLongestMatches

* Simplify matches

* Switch from pointers to Match

* Use pointer for pt

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-10-06 15:28:56 +01:00
Alex Sharov
e4ae867351
,save (#101) 2021-10-06 15:14:58 +07:00
Alex Sharov
04d7bfe3ce
Fix race in cache (#100) 2021-10-05 16:06:22 +07:00
Alex Sharov
cc20173b74
MDBX: Don't block when open db from another process if main process holds long RW tx (#99) 2021-10-05 15:30:06 +07:00
Alex Sharov
fa97bdba0a
Pool v2: --txpool.accountslots flag support (#98) 2021-10-03 13:27:28 +07:00
Alex Sharov
57c724bbc6
--txpool.pricelimit support (#96) 2021-10-02 17:34:33 +07:00
Alex Sharov
b5be2a9ae3
downgrade mdbx to v0.10.1 (#95) 2021-09-30 09:50:43 +07:00
Alex Sharov
33aa4498f0
Pool: speedup iteration over all txs (#94) 2021-09-28 15:54:02 +07:00
alex.sharov
559f376ed4 save 2021-09-27 22:25:13 +07:00
Alex Sharov
ffac34a86f
Pool: break data-dependency between effectiveTip and other fields (#93) 2021-09-27 19:45:10 +07:00
Alex Sharov
53afdc9b69
--mdbx.augment.limit (#92) 2021-09-27 09:49:17 +07:00
Alex Sharov
9070cf769f
save (#91) 2021-09-26 19:48:57 +07:00
Alex Sharov
f5fa03d63f
Pool: switch to PendingBaseFee (#90) 2021-09-26 19:47:11 +07:00
Alexandr Borodulin
7740382188
Update tables.go (#86)
Co-authored-by: Aleksandr Borodulin <a.borodulin@axioma.lv>
2021-09-22 17:34:29 +07:00
Alex Sharov
3f138d4e75
return err on duplicate (#89) 2021-09-22 15:30:34 +07:00
Alex Sharov
ba2d50bea2
Pool: return err on duplicate rpc (#88) 2021-09-22 15:10:17 +07:00
Alex Sharov
4862356290
Pool: correct new pending txs notifications (#85) 2021-09-21 16:39:41 +07:00
Alex Sharov
13b0978d86
grpc enable instrumentation (#84) 2021-09-21 10:10:59 +07:00
ledgerwatch
47490aa942
Optimise RecSplit (#82)
* not allocate count

* Print timings

* More time measurement

* See time with fanout=2

* Less branching?

* Revert

* Split functions for fingeprint and bucket separation

* Save indices

* Fix limits

* Use original split formula

* Revert

* uint16

* Correctly measure 2

* Less branching again?

* No time measurements

* Cleanup

* Fix lint

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-09-20 17:39:32 +01:00
Alex Sharov
c40a022ab0
Pool: return lost error, fix race of 2 sentries, set high limits to see worst case (#83) 2021-09-20 20:16:32 +07:00
ledgerwatch
f2549ad6ec
Integration of recsplit (#79)
* Integration of recsplit

* Add tables

* Print bucket by bucket

* Not to print all keys

* Print correct bitSize

* switch to []byte

* Optimisation

* Fix

* Fix lint

* Performance improvements

* Print bucket info

* Add tracing

* Fixed split

Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-09-20 12:14:49 +01:00
Alex Sharov
6a7eeccad7
Pool: discard reasons, LRU (#80) 2021-09-20 12:44:29 +07:00
Alex Sharov
1c9602c785
revert 2421 2021-09-20 10:41:02 +07:00
ledgerwatch
312d43aa88
Recsplit encoding (#69)
* Recsplit encoding

* Added Golomb-Rice encoding

* More on encoding

* More

* Fix compile errors

* Fix fuzz test, add corpus

* Integrated Elias-Fano

* Fix lint

* Add select64

* More

* Add fuzz test for elias fano

* Debugging elias fano

* Fuzz test for elias fano

* More elias fano debugging

* Fix elias fano

* More fixes

* Fix to golombRiceLength

Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2021-09-18 22:59:27 +01:00
Alex Sharov
dfc14352d2
Pool: chain config, non-mainnet (#78) 2021-09-18 20:58:20 +07:00
Alexandr Borodulin
d32bc94cf8
Update tables.go (#76)
Co-authored-by: Aleksandr Borodulin <a.borodulin@axioma.lv>
2021-09-17 16:28:59 +07:00
Alex Sharov
8163e0cd93
Pool: cache based on txID (#75) 2021-09-17 09:56:04 +07:00
Alexandr Borodulin
1f3720472a
fixes ledgerwatch/erigon#2421 (#72)
* fixes ledgerwatch/erigon#2421

* Update tables.go

Co-authored-by: Aleksandr Borodulin <a.borodulin@axioma.lv>
Co-authored-by: ledgerwatch <akhounov@gmail.com>
2021-09-15 17:08:22 +01:00
Alex Sharov
71308b02b3
Pool: switch cache to tx.ID(), more metrics (#73) 2021-09-15 20:15:32 +07:00