This article documents the CentreStack retention policies and offer recommendations for settings based on best practices.
There are a number of retention policies that may be set either in the Default Group Policy or in the per-tenant Group Policy. This screenshot shows a portion of the retention policies that are available in the Default Group Policy:
For self-hosted CentreStack, in most cases it is recommended to alter the Default Group Policy > Retention Policy such that all tenants are affected. However, there may be some situations where a tenant has specific requirements, in which case the individual per-tenant Group Policy setting(s) may be set, overriding the Default Tenant Policy. See this article to understand the interaction of inheritance and override with Group Policy: Group Policy Inheritance and Override Behavior
Each retention policy is described below with a recommended setting. The justification for each recommendation is also described below.
- Keep last n version(s) of files in versioned folder: 20
The default of zero seems too undefined and there's no way to know what value the system selected. 20 seems like a nice even number that's large enough to roll back to many versions ago but not so large as to adversely affect storage consumption. A larger number for this value tends to increase cost but a smaller number increases the risk that a previous version is no longer available.
- Only purge versioned files that are more than n day(s) old: 7
Setting this setting to a value such as 7 days may be very useful to recover from ransomware. Leaving this value at the default of zero means that older files will be purged when the number of older revisions exceeds the version limit, in other words, the number of versions defined by the Keep last n version(s) of files in versioned folder setting. If this setting is greater than zero it is possible to have more revisions than the number defined in the version limit. For example, say this was set to 7 days and the version limit was 10. Suppose a file that normally changed 9 times a day, every day, for 5 days. You could have 45 versions of that file in 5 days and not 10 versions of the file.
- Purge previous versions that are more than n day(s) old: 0
Setting this number to version greater than zero will purge files that are older than the number that is set regardless if the number of versions is less than the version limit.
- Keep deleted files in versioned folder and/or Trash Can for n day(s): 90
In a versioned folder, deleted files are simply marked for deletion. They aren't actually purged until they are older than the number of days specified here. The higher this value the more you are protected against accidental deletion but the higher the potential storage costs
- Keep file change log for n day(s): 180
This value should never be less than the Keep deleted files in versioned folder and/or Trash Can for n day(s) setting because you would like to have a history of that files that were deleted even after they were purged. The higher this number the more rows that will be preserved in the xaf_filechangelog database table potentially affecting the database size. Setting this to zero means that no rows will be purged from the xaf_filechangelog. While zero would ensure a full history of file changes, the risk is that the database grows too big. Therefore you should set this to some reasonable number such as twice the Keep deleted files in versioned folder and/or Trash Can for n day(s) setting, and perhaps use a database backup strategy that allows you to examine old copies of the xaf_filechangelog table that are even older than the Keep file change log for n day(s) setting.
NOTE: There is a setting in Cluster Control Panel > Change Log > Keep file change log for n days that acts as a maximum limit for the age of the rows in the xaf_filechangelog table. In other words, the Default Group Policy and per-tenant settings may be less than Cluster Control Panel settings, but if they are more, they are essentially ignored.
- Keep audit trace for n day(s): 365
Similar to the Keep file change log for n day(s) setting, this determines how the age of the rows that are preserved in the xaf_audit database table. Setting this to zero means that no rows are purged from the xaf_audit table. If this is set to zero or a very high number the risk is that the size of the xaf_audit table could be quite large, especially if there is high user volume.
- Hide purge option from web file browser: Enabled
With this setting enabled, users will not be able to purge deleted content from the File Browser. This setting has no affect on tenant administrators
- Don't send email notifications when purging deleted content: Disabled
With this setting disabled, the system will send email notifications to the tenant admin when purging content. In most cases the tenant admin will wish to receive these emails.
- Include deleted but not yet purged items in storage quota: Disabled
When disabled, deleted content is not counted against the user's storage quota.