public interface ConsistentErrorHandler extends ErrorHandler
MemcacheServiceException
exceptions should be handled by
ErrorHandler.handleServiceError(MemcacheServiceException)
.
This interface was added to enable handling MemcacheServiceException
thrown by the various MemcacheService.put(Object, Object)
methods while
preserving backward compatibility with ErrorHandler
which did not handle
such cases.Modifier and Type | Method and Description |
---|---|
void |
handleDeserializationError(InvalidValueException ivx)
Handles deserialization errors.
|
void |
handleServiceError(MemcacheServiceException ex)
Handles back-end service errors.
|
void handleDeserializationError(InvalidValueException ivx)
ErrorHandler
get
methods, if the retrieved value
cannot be deserialized. This normally indicates an application upgrade
since the cache entry was stored, and should thus be treated as a cache
miss, which is the behavior of LogAndContinueErrorHandler
(the
default).handleDeserializationError
in interface ErrorHandler
void handleServiceError(MemcacheServiceException ex)
ErrorHandler
MemcacheService
methods in the event of a service error. This is
also called for MemcacheService.put(Object, Object)
when the
combined key and value size is too large.
The handler may throw any RuntimeException
, or it may simply
return for "permissive" error handling, which will generally emulate
behavior of a cache miss due to a discarded entry.
handleServiceError
in interface ErrorHandler
ex
- the service error exception