Optimize MPT-backed storage Seek #1503

Open
opened 2025-12-28 17:16:39 +00:00 by sami · 1 comment
Owner

Originally created by @AnnaShaleva on GitHub (Mar 27, 2025).

Current Behavior

util upload-state CLI command utilizes MPT-backed storage (in particular, Seek operation over the whole contract storage). As it is postulated in https://github.com/nspcc-dev/neo-go/pull/3845#issuecomment-2756597644, the Seek&upload time at the same blockchain height varies from 26-30min to 1h25m. 26-30m is an expected value that is comparable with the full MPT traversal process, but 1h25m is something unexpectedly slow.

Expected Behavior

At least, I'd expect Seek operation to take relatively the same amount of time for the same blockchain height. It would also be nice to optimize traversal time, but I'm not sure we can do it.

Originally created by @AnnaShaleva on GitHub (Mar 27, 2025). ## Current Behavior `util upload-state` CLI command utilizes MPT-backed storage (in particular, `Seek` operation over the whole contract storage). As it is postulated in https://github.com/nspcc-dev/neo-go/pull/3845#issuecomment-2756597644, the Seek&upload time at the same blockchain height varies from 26-30min to 1h25m. 26-30m is an expected value that is comparable with the full MPT traversal process, but 1h25m is something unexpectedly slow. ## Expected Behavior At least, I'd expect `Seek` operation to take relatively the same amount of time for the same blockchain height. It would also be nice to optimize traversal time, but I'm not sure we can do it.
Author
Owner

@AnnaShaleva commented on GitHub (Mar 27, 2025):

Before digging into this issue we need to try to reproduce it in "aseptic" environment, i.e. to measure a pure Seek time at 7M of mainnet height without any additional overhead brought from objects uploading or dump file construction.

@AnnaShaleva commented on GitHub (Mar 27, 2025): Before digging into this issue we need to try to reproduce it in "aseptic" environment, i.e. to measure a pure Seek time at 7M of mainnet height without any additional overhead brought from objects uploading or dump file construction.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
nspcc-dev/neo-go#1503
No description provided.