Partial State Archival #1575
Replies: 5 comments 14 replies
-
|
Do you have a proposed network settings vote proposal that would need to go out with this change? |
Beta Was this translation helpful? Give feedback.
-
|
Overall this is excellent. I'd love to find a more descriptive name for this though. I think that "partial" is not a great indicator for what it is going on here and "live state prioritization" deals with the implications of this change rather than the change itself. |
Beta Was this translation helpful? Give feedback.
-
|
Re: memory limits In the CAP:
I would like more discussion on this. I didn't realize at first that this limit was removed instead of just being set to some high number. As the implementation is likely not 0-copy, we need to look at the "worst case scenario" of a well crated transaction set: As we're likely to increase all 3 of these over time, it seems that the actual memory utilization could skyrocket without limits:
Multiply all those things already gives a 25GB memory spike, this would be on top of everything else already residing in memory. To me the saving of not having this network setting at this stage doesn't seem to be worth the risk. |
Beta Was this translation helpful? Give feedback.
-
|
There's a potential DOS issue with how we handle state size related fees wrt module cache in CAP-65. CAP 65 caches all live WASM modules in memory. To prevent OOM based DOS, the number of live WASM modules that are required to be cached at any given time is bounded by I see two potential solutions.
Personally, I am pro option 2. I think given cache optimizations and recent optimizations to new node startup, the size of the BucketList is less of a concern now than it was previously, with the size of live state being the primary factor we need to meter. Classic still dominates BucketList size anyway, and write limits still provide a less direct way to slow BucketList growth from the soroban size. This also gives us the lowest fees while maintaining DOS safety, and using memory resources most tightly. It was also suggested that we break |
Beta Was this translation helpful? Give feedback.
-
|
if I'm understanding correctly this is just the distinction between the coarse initial-parse cost and the secondary refined cost (once we have a |
Beta Was this translation helpful? Give feedback.

Uh oh!
There was an error while loading. Please reload this page.
-
For protocol 23, I'm proposing we implement "partial" state archival. More context here.
Beta Was this translation helpful? Give feedback.
All reactions