It's best to demonstrate with an example. Let's say minimum backup age 7, always keep backups on the 1st, count quota 3. Here's some ways one could understand this combination:
- Ignore the count quota. Always keep the backups taken on the last 7 days, and never delete the backup taken on the 1st (current approach).
- Always keep the backups taken on the last 7 days. Never delete the backup taken on the 1st, but if there are more than 3 backups which are more than 7 days old, delete them (what you described).
- Always keep the backups taken on the last 7 days, unless there are more than 3 of them. Never delete the backups taken on the 1st. (The idea being that you are maybe taking a backup every 3 days automatically but could also be taking manual backups before upgrades, therefore you do not want to keep too many of them)
- Always keep the backups taken on the last 7 days, unless there are more than 3 of them. Never delete the backups taken on the 1st, unless there are more than 3.
- Always keep the backups taken on the last 7 days, and do not delete the backup taken on the 1st. However, if the total number of backups kept is more than 3, delete the older backups regardless of their age and whether they were taken on the 1st.
Neither option is right or wrong per se. However, they are mutually exclusive. Therefore, I had to pick one. I picked the one the vast majority of my clients had been asking for.
This is not something that can be made as an option. It would require me to have five different implementations for these two quota settings, times two (because we have local and remote quotas). This is very error-prone both on my part and my users' part. To make things worse, mistakes would result in backups being deleted forever which is a major problem.
In conclusion, I am not going to implement that. I see a lot more trouble than benefit with this.
Besides, if you are not regularly taking automated backups it makes no sense having the maximum age quota. You should just have the count quota. Think about it and you will see it makes a lot more sense in your use case.
Nicholas K. Dionysopoulos
Lead Developer and Director
🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!