RetryLater (Throttled)

This section describes the DataCacheException exception that has an error code of RetryLater and a substatus of Throttled. Applications that get this error are trying to write data to cache hosts that are critically low on memory.

There are many different causes for low memory on the cache hosts. For example, if eviction is disabled for a large and growing cache, this can cause one or more cache hosts to become throttled. For more information, see Eviction. It is also possible that the memory requirements for the various applications that use the cache cluster exceed the cluster's current capacity. For more information about diagnosing and resolving throttling, see Throttling.

Application design can contribute to cache servers entering the throttled state. Applications that create custom regions must realize that those regions will be located on a single cache host in the cache cluster. If the application stores two gigabytes of data in a custom region, all cache hosts in the cluster must have three gigabytes or more of physical memory. In addition, each cache host must have correctly configured cache sizes and high watermark values to provide room for two gigabytes of data in a single region.

Applications can also lock items in the cache with the GetAndLock method of the DataCache class. Items that are locked stay in the cache even after they have expired. If the application does not call PutAndUnlock or Unlock, the locked items in the cache can contribute to memory consumption.

See Also

Concepts

Application Exceptions

  2012-10-26