System and method for maintaining cache coherency
First Claim
1. A system comprising:
- a processor;
a cache memory coupled to the processor and configured to store cache data, the cache memory assigned a current generation identifier (ID) associated with a last time the cache data was written to the cache memory, anda memory coupled to the processor and configured to store one or more processes, the one or more processes when executed by the processor operable to;
receive a notification that a device generation ID stored on a primary storage device coupled to the cache memory is less than the current generation ID of the cache memory, wherein the device generation ID is associated with a restored backup of the primary storage device, andbased on receiving the notification;
(1) mark first cache data, of the cache data stored in the cache memory, as invalid based on the first cache data associated with a different generation ID that is greater than the device generation ID stored on is the primary storage device, (2) receive a first data access request for the first cache data from a client, and (3) prevent transmitting the first cache data from the cache memory to the client based on marking the first cache data as invalid.
0 Assignments
0 Petitions
Accused Products
Abstract
Described herein is a system and method for maintaining cache coherency. The system and method may maintain coherency for a cache memory that is coupled to a plurality of primary storage devices. The system and method may write data to the cache memory and associate the data with a cache generation identification (ID). A different cache generation ID may be associated with each new set of data that is written to the cache memory. The cache generation ID may be written to the primary storage devices. A backup restore operation may be performed on one of the primary storage devices and a backup restore notification may be received. In response to the notification, the system and method may compare the cache generation ID with the generation ID stored on the restored primary storage device and invalidate data stored on the cache memory for the restored primary storage device.
37 Citations
20 Claims
-
1. A system comprising:
-
a processor; a cache memory coupled to the processor and configured to store cache data, the cache memory assigned a current generation identifier (ID) associated with a last time the cache data was written to the cache memory, and a memory coupled to the processor and configured to store one or more processes, the one or more processes when executed by the processor operable to; receive a notification that a device generation ID stored on a primary storage device coupled to the cache memory is less than the current generation ID of the cache memory, wherein the device generation ID is associated with a restored backup of the primary storage device, and based on receiving the notification;
(1) mark first cache data, of the cache data stored in the cache memory, as invalid based on the first cache data associated with a different generation ID that is greater than the device generation ID stored on is the primary storage device, (2) receive a first data access request for the first cache data from a client, and (3) prevent transmitting the first cache data from the cache memory to the client based on marking the first cache data as invalid. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method comprising:
-
receiving a notification that a device generation identifier (ID) stored on a primary storage device coupled to a cache memory of a storage system is less than a current generation ID of the cache memory, wherein the current generation ID is associated with a last time cache data was written to the cache memory and wherein the device generation ID is associated with a restored backup of the primary storage device; and based on receiving the notification; (1) marking, by a processor of the storage system, first cache data of the cache data as invalid based on the first cache data being associated with a different generation ID that is greater than the device generation ID stored on the primary storage device, (2) receiving a first data access request for the first cache data from a client, and (3) preventing transmission of the first cache data from the cache memory to the client based on marking the first cache data as invalid. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A non-transitory computer readable storage medium containing executable program instructions configured for execution by a processor and further configured for storage on the non-transitory computer readable storage medium, the computer readable storage medium comprising:
-
program instructions that receive a notification that a device generation identifier (ID) stored on a primary storage device coupled to a cache memory of a storage system is less than a current generation ID of the cache memory, wherein the current generation ID is associated with a last time cache data was written to the cache memory and wherein the device generation ID is associated with a restored backup of the primary storage device; and based on receiving the notification, program instructions that;
(1) mark first cache data of the cache data as invalid based on the first cache data being associated with a different generation ID that is greater than the device generation ID stored on the primary storage device, (2) receive a first data access request for the first cache data from a client, and (3) prevent transmission of the first cache data from the cache memory to the client based on marking the first cache data as invalid. - View Dependent Claims (18, 19, 20)
-
Specification