US 11,861,198 B2
Journal replay optimization
Kevin Daniel Varghese, San Jose, CA (US); Ananthan Subramanian, San Ramon, CA (US); and Asif Imtiyaz Pathan, San Jose, CA (US)
Assigned to NetApp, Inc., San Jose, CA (US)
Filed by NetApp Inc., San Jose, CA (US)
Filed on Apr. 25, 2022, as Appl. No. 17/728,441.
Prior Publication US 2023/0342053 A1, Oct. 26, 2023
Int. Cl. G06F 3/06 (2006.01)
CPC G06F 3/064 (2013.01) [G06F 3/067 (2013.01); G06F 3/0619 (2013.01); G06F 3/0656 (2013.01); G06F 3/0659 (2013.01)] 22 Claims
OG exemplary drawing
 
1. A system, comprising:
a distributed storage architecture including a plurality of nodes managing distributed storage comprised of storage devices hosted by the plurality of nodes; and
a node of the distributed storage architecture hosting a journal within which log records are created for write operations received by the node by:
evaluating an incoming write operation to identify an indirect block of data targeted by the incoming write operation;
evaluating the indirect block to determine whether the indirect block is dirty or clean, wherein the indirect block is dirty when the data has been modified with modifications not yet stored to the distributed storage and is clean when the data has not been modified with modifications not yet stored to the distributed storage;
refraining, in response to determining that the indirect block is dirty, from caching the indirect block into the journal; and
in response to determining that the indirect block is clean, caching the indirect block into a log record created within the journal for the incoming write operation.