substrate icon indicating copy to clipboard operation
substrate copied to clipboard

Remove Storage Layer Limit

Open shawntabrizi opened this issue 3 years ago • 2 comments

This PR removes the limit of creating new transactional storage layers.

Instead, we will rely on the stack depth limit and sensible runtime development patterns to avoid people abusing the limit on transactional storage layers. And sensible depth of transactional layers should have a nominal impact into the measured performance of extrinsics.

Note that it is still important that we track the number of storage layers, since we want to be able to tell that we are in a transactional layer at any point in time.

shawntabrizi avatar Jun 23 '22 23:06 shawntabrizi

Hey, is anyone still working on this? Due to the inactivity this issue has been automatically marked as stale. It will be closed if no further activity occurs. Thank you for your contributions.

stale[bot] avatar Aug 31 '22 01:08 stale[bot]

I'm still not convinced that this is a good idea. The problem I'm seeing here is that over different wasmtime version, the same wasm file could have a different stack limit. We would need deterministic stack metering for the runtime as well: https://github.com/paritytech/substrate/issues/9298

CC @pepyakin @koute

bkchr avatar Sep 14 '22 18:09 bkchr

(Weird did not see a notification for this) Yep, I agree with @bkchr here, and some additional defense wouldn't hurt until we iron this out.

pepyakin avatar Sep 26 '22 22:09 pepyakin

ok will close

shawntabrizi avatar Sep 27 '22 02:09 shawntabrizi