Sorry, I quickly skimmed the thread and didn’t notice your comment.
Yes, indeed. I understand this. Just wanted to pose the question about infinite limits to try and force the thought-stream outside the box. Consider the last time we discussed this…
Thinking about it a little more, you couldn’t penalize a completely filled vault. Instead, I think one would need to use this “no more space condition” as tool to map out the current physical limitations of the network.
Consider the following thought experiment :
- User A - Smart phone based vault with 16GB storage capacity.
- User B - Desktop computer with a 8TB redundant disk array.
- Initial vault limit - 1GB
- Age based limit increase rate - 10x
Both users join the network, relocated, and handed 1GB. After user A attains a nodal age of 3, the network will assume that they can handle up to 100GB of storage, which is beyond the physical capacity of the device.
After user B attains a nodal are of 5, the network will assume that they can handle 10TB of data, which is beyond the capacity of their device.
The network will then fill each device as needed based on PUT demands. User A will soon let out an “out of space” error to the vault managers. The vault managers would then note the size of that vault then stop sending puts to this device. It will take a bit longer for User B to reach the same condition, perhaps before it even does, User B continuously adds more storage space to their machine so that the limit is never reached.
If an out of space condition occurs, the vault managers don’t need to stop sending puts to these vaults indefinitely. Perhaps once a vault limit has been reached, the vault managers will not make another attempt to send a chunk there until the same
number of chunks currently stored on the out of space device has been sent to other vaults in the section. Multiple out of space errors from the same vault could lead to compounded wait times (current_wait = 2*previous_wait), which would cut down on doomed PUT attempts.
One would think that vaults could just tell the vault managers how much space they have available up front for dynamic sizing, but the network wouldn’t be able to trust this without verifying anyhow.