Evgenii Stratonikov
|
85f927d892
|
mpt: implement reference counting
Also postpone MPT initialization until `storeBlock`
because we need to read-and-check or save info about refcounting
depending on starting height.
|
2020-11-20 16:50:30 +03:00 |
|
Evgenii Stratonikov
|
1c559634aa
|
mpt: fill cached fields when getting node from store
Node which has been got from store shouldn't be flushed again.
|
2020-11-19 12:25:43 +03:00 |
|
Evgenii Stratonikov
|
fd9ff4102a
|
mpt: export func for decoding node with type
`NodeObject` can contain auxilliary fields and shouldn't be used from outside.
|
2020-11-19 12:25:43 +03:00 |
|
Roman Khimov
|
2b53877dff
|
mpt: don't flush nodes already present in the DB
It's just a waste of time.
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
|
2020-07-30 12:42:15 +03:00 |
|
Roman Khimov
|
475bf2445a
|
mpt: restructure nodes a bit, implement serialization and hash cache
It drastically reduces the number of allocations and hash calculations.
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
|
2020-07-30 12:42:15 +03:00 |
|