Azure File Sync recall is a key feature associated with cloud tiering in Azure File Sync. When cloud tiering is enabled, files that are infrequently accessed (known as “cool” files) are stored in the cloud to save local storage space. However, the file’s metadata and structure (namespace) remain on the local server.
When a user or application tries to access a tiered file, the recall process is triggered. This process seamlessly retrieves the file’s content from the Azure file share in the cloud and makes it available locally. The recall happens automatically, ensuring minimal disruption for users.
Issue Description
In a recent Azure File Sync environment, recall failures were observed due to the following error:
RecallToDiskType: No
This error indicated that the file system cache usage had reached its maximum threshold. As a result, tiered files failed to download their full data content as expected.
Troubleshooting the Issue
To address the recall failure, the following steps were taken:
1. Understanding the Cause
It was identified that the recall failures were due to memory limits. By default:
- 10% of the allocated memory is reserved for recalls.
- If recalls exceed 60% of this reserved memory, they are served from memory and not written to disk.
This behavior caused issues when the memory threshold was exceeded.
2. Verifying the Data Recall Process
The team verified how the data was being recalled by:
- Checking the data size requested for recall.
- Ensuring the recalled data matched the data written to disk on the server endpoint.
- Reviewing the File Sync Agent Recall Results (Event ID 1110) to confirm whether recalls were successful or failed.
3. Adjusting Memory Settings
To resolve the issue, the memory allocation for recalls was increased by modifying the registry settings. The following commands were executed:
reg ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Azure\StorageSync" /v BottomlessFilterSharedMemSizePercentage /t REG_DWORD /d 30 /f
reg ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Azure\StorageSync" /v BottomlessFilterCacheUsagePercentage /t REG_DWORD /d 70 /f
fltmc unload StorageSync
fltmc load StorageSync
net stop filesyncsvc
net start filesyncsvc
These changes allowed 30% of the server’s total memory to be used for recalls, improving the ability to persist recalled data to disk.
Resolution
By implementing the above steps, the recall failures caused by file system cache limitations were successfully resolved. This ensured a smoother and more reliable data recall process in the Azure File Sync environment.
Extra Tips
Here are some additional resources to help you better understand and manage Azure File Sync cloud tiering:
Conclusion
Azure File Sync recall is essential for optimizing local storage usage while maintaining seamless access to cloud-tiered files. Understanding and troubleshooting issues such as memory limits can help ensure a reliable and efficient recall process. By following the steps outlined above, you can resolve recall failures and improve the performance of your Azure File Sync environment.