Understanding the 300GB Subnet Limitation

Recently there were plenty discussions about node provider rewards. Please use the search function if you’re interested in those.

The limits get raised when it doesn’t affect availability too much. The current limit is 450 or 700GB, depending on this. To give you some hints why it’s not easy to just raise the limit:

  • The entire subnet state is hashed in some way. It is possible to cache a lot of hashing, but theoretically a lot of files can change between checkpoints
  • State sync needs to be able to add/remove/update nodes to the current state relatively quickly in case a node has fallen behind or is added to the subnet
  • Nearly everything about the state needs to be quickly accessible. If you’re trying to run 10 queries on different canisters that use half of available stable storage you have to load/unload 10*50GB of state within <1 second
2 Likes