ShareFile user requests for file uploads, downloads, and deletions are handled by StorageZones Controller, which then communicates with the connected storage. For example, if the connected storage is a supported third-party storage system and a ShareFile user uploads a file, the ShareFile client sends the file to the persistent storage cache. StorageZones Controller then uploads the file to the third-party storage system.
StorageZones Controller manages the persistent storage cache using configurable settings in C:\inetpub\wwwroot\Citrix\StorageCenter\SCFileCleanSvc\FileDeleteService.exe.config. The settings that are specific to a supported third-party storage system are noted in this discussion.
For uploaded files:
- StorageZones Controller places uploaded files in a persistent storage cache (the PersistentStorage folder).
- The following settings control the timing of delete service operations:
- MinDeletionAge specifies the minimum time span between when a file was last accessed and when it can be deleted. Defaults to 1 day. Minimum setting is 8 hours.
- OffPeakTimeOfDayStart and OffPeakTimeOfDayEnd specify the start and stop times for file deletion. Defaults to 2 a.m. and 4 a.m.
- ProducerTimerInterval and DeleteTimerInterval control the frequency of delete service operations. Please contact support if the default values (1 day) are not appropriate for your site.
- The delete services also manages folders that contain temporary items such as encryption keys and queued files. The delete service removes those items 24 hours after they are created.
- For supported third-party storage systems only:
- The delete service determines whether a file in the storage cache has a corresponding blob in the supported third-party storage.
- By default, every 10 seconds (CheckSizeThreasholdTimer) the delete service determines if the storage cache has exceeded a disk threshold of 10 GB (DiskSpaceDropoutThresholdGB). If the threshold is exceeded, the delete service removes files that have not been accessed in the past hour (CacheCleanupFileThreasholdPeriodUnExpected). When the delete service runs as the result of normal scheduling (and not because the disk size reached the threshold), the service deletes files that have not been accessed in the past 24 hours (CacheCleanupFileThresholdPeriodNormal) if the blob is in supported third-party storage. If the blob is not in the third-party storage, the file remains in the storage cache.
For downloaded files:
- When StorageZones Controller receives a download request, it downloads the file from the persistent storage cache if the file is there. If the file is not in that cache, the controller downloads the file from the third-party storage system to the persistent storage cache. The delete service removes files that have not been accessed for the past 24 hours (CacheCleanupFileThresholdPeriodNormal).
For deleted files:
- The delete service gets from the ShareFile application a list of files that were deleted 45 days ago (Period).
- The delete service then removes the corresponding files from the storage location or the corresponding objects from the third-party storage.