You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Nov 15, 2023. It is now read-only.
Right now all the storage functions used by contracts take a fixed 32 byte key as input. The contracts pallet hashes this key with blake2_256.
This completely removes the possibility to iterate over (key, value) pairs. The fixed key size also forces contracts to either hash or pad their keys which adds additional complexity.
We should do the following:
Add a new version for all storage primitives that take a variable sized key.
Hash the key with blake2_128_concat instead of blake2_256.
Add a new Get type to the Config that constitutes the limit of the key. Not to the Schedule.
Benchmark these functions with the maximum key size.
I think a sensible default for this max key size could be 128byte.