-
Notifications
You must be signed in to change notification settings - Fork 27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(init): speed up initialization #392
Conversation
fcadac4
to
f13f2b1
Compare
6395d65
to
f37ecdc
Compare
Codecov Report
@@ Coverage Diff @@
## dev #392 +/- ##
==========================================
- Coverage 82.65% 82.63% -0.02%
==========================================
Files 174 175 +1
Lines 15939 16228 +289
Branches 2503 2550 +47
==========================================
+ Hits 13174 13410 +236
- Misses 2309 2342 +33
- Partials 456 476 +20
Continue to review full report at Codecov.
|
8173a0f
to
83701ca
Compare
83701ca
to
7e6587d
Compare
f7c25de
to
e16499c
Compare
e16499c
to
9187fba
Compare
038731a
to
cde83cb
Compare
cde83cb
to
f4d7f46
Compare
f4d7f46
to
718bc00
Compare
Using the latest snapshot (
data-20220303175324.tar.gz
) as a base, initialization is about 60% faster when using all existing in-disk indexes (some indexes are still in-memory only), and about 120% faster than using all in-disk indexes but rebuilding them on every initialization (the current behavior before this PR):But still in-disk indexes are not enabled by default, they require cli argument
--x-rocksdb-indexes
.Last bits:
hathor/indexes/address_index.py:36
tx_meta.voided_by should not be skipped, add a test for thathathor/indexes/deps_index.py:110
check whether the it really makes sense to filter-out voided txshathor/indexes/tips_index.py:63
check whether looking at validation.is_final makes sense for all indexeshathor/indexes/manager.py:44
check if soft-voided txs are handled correctlyhathor/indexes/manager.py:147
move iterator selector to the storage and only consider DFS sort when a flag is used