stellar / quickstart

Home of the stellar/quickstart docker image for development and testing
Apache License 2.0
186 stars 206 forks source link

Update `contractDataKeySizeBytes` for unlimited.json #579

Closed kalepail closed 6 months ago

kalepail commented 6 months ago

This is a value I'd like to be able to test as an unlimited size along with the rest of the bytes related values

Close https://github.com/stellar/quickstart/issues/577

leighmcculloch commented 6 months ago

My original goal with unlimited was to allow unbounded CPU usage, while retaining any other limits so that it was easy to work on contracts that did too much work, like what happens when someone tries to use crates from the Rust ecosystem that weren't built for use in minimal resource environments.

I intentionally didn't increase things like the contract data key size, because I thought it'd be too easy to do things like use the wrong type for a contract data key that would just never work in pubnet.

But if this is needed for testing out-there ideas, it makes sense to add it to the unlimited limits, and not create yet another limits options.

This looks good to me on that basis.

@sisuresh @dmkozh Are there any other config items we should be expanding if the goal is to make it as unlimited as possible?

kalepail commented 6 months ago

The way I use unlimited, and the way I suggest others use it, is to allow blasting past limits in order to more easily and precisely improve your contract while it's being developed. In order to do this best then all limits should be maxed out.

sisuresh commented 6 months ago

Yeah I think this is fine. If a user wants to test against realistic limits, they shouldn't be using unlimited. The entry size limit is already at it's max for unlimited, so doing the same for the key isn't a big deal.