Wednesday, January 7, 2015

SharePoint 2013: Drives are running out of free space

Problem

You see the following issue appear in Review Problems and Solutions in Central Administration:
 
TitleDrives are running out of free space.
Severity1 - Error
CategoryAvailability
ExplanationAvailable drive space is less than twice the value of physical memory. This is dangerous because it does not provide enough room for a full memory dump with continued operation. It also could cause problems with the Virtual Memory swap file
RemedyExamine the failing servers and delete old logs or free space on the drives. For more information about this rule, see
http://go.microsoft.com/fwlink/?LinkID=142688 
Failing Servers[a farm WFE]
Failing ServicesSPTimerService (SPTimerV4)
Rule SettingsView

You check the WFE's system drive and though it doesn't meet the 5xRAM rule, there is sufficient space to meet the 2xRAM rule. You happen to glance at other drives and see the log drive near saturation.  Looking through it, you find GB-sized ULS logs being generated every half hour in the ULS logs folder on this drive.  Opening up one of these files using ULSViewer, you find the following messages repeated:
Calling... SPDistributedCacheClusterCustomProvider:: GetValue(object transactionContext, string type, string key).
Successfully executed... SPDistributedCacheClusterCustomProvider:: GetValue(object transactionContext, string type, string key).
 Solution
  1. On the problematic WFE, open elevated SharePoint Management shell.
  2. Execute the following commands in the order shown:
    1. $instanceName ="SPDistributedCacheService Name=AppFabricCachingService" $serviceInstance = Get-SPServiceInstance | ? {($_.service.tostring()) -eq $instanceName -and ($_.server.name) -eq $env:computername} $serviceInstance.Unprovision()
    2. $instanceName ="SPDistributedCacheService Name=AppFabricCachingService" $serviceInstance = Get-SPServiceInstance | ? {($_.service.tostring()) -eq $instanceName -and ($_.server.name) -eq $env:computername} $serviceInstance.Provision()
    3. Stop-Cachecluster
    4. Start-CacheCluster
References
Notes

No comments: