vinyl: enable quota upon recovery completion explicitly
Currently, we create a quota object with the limit maximized, and only set the configured limit when local recovery is complete, so as to make sure that no dump is triggered during recovery. As a result, we have to store the configured limit in vy_env::memory, which looks ugly, because this member is never used afterwards. Let's introduce a new method vy_quota_enable to enable quota so that we can set the limit right on quota object construction. This implies that we add a boolean flag to vy_quota and only check the limit if it is set. There's another reason to add such a method. Soon we will implement quota consumption rate limiting. Rate limiting requires a periodic timer that would replenish quota. It only makes sense to start such a timer upon recovery completion, which again leads us to an explicit method for enabling quota. vy_env::memory will be removed by the following patch along with a few other pointless members of vy_env. Needed for #1862
Please register or sign in to comment