US 11,853,574 B1
Container flush ownership assignment
Vladimir Shveidel, Pardes-Hana (IL); Geng Han, Beijing (CN); and Changyu Feng, Beijing (CN)
Assigned to Dell Products L.P., Hopkinton, MA (US)
Filed by Dell Products L.P., Hopkinton, MA (US)
Filed on Jun. 21, 2022, as Appl. No. 17/845,332.
Int. Cl. G06F 3/06 (2006.01)
CPC G06F 3/064 (2013.01) [G06F 3/0604 (2013.01); G06F 3/067 (2013.01); G06F 3/0631 (2013.01); G06F 3/0659 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method comprising:
receiving a plurality of write operations at a data storage system including a plurality of nodes comprising a first node and a second node, wherein the plurality of write operations write to a plurality of target logical addresses included in a first logical block address (LBA) range;
maintaining a first counter and a second counter of a first container associated with the first LBA range, wherein the first container is associated with a first list of recorded write operations of a log having target logical addresses in the first LBA range, wherein the first list includes a first plurality of page descriptors (PDESCs) corresponding to entries of the log for the plurality of write operations, wherein the first counter indicates how many of the plurality of write operations are received at the first node and the second counter indicates how many of the plurality of write operations are received at the second node, wherein, for each of the plurality of write operations received by the first node, the first node stores write data written by said each write operation in a first cache local to the first node, and for each of the plurality of write operations received by the second node, the second node stores write data written by said each write operation in a second cache local to the second node;
performing first processing to determine a flush owner of the first container, said first processing including:
comparing the first counter and the second counter;
responsive to said comparing determining the first counter is greater than the second counter, assigning the first node as the flush owner of the first container;
responsive to said comparing determining the second counter is greater than the first container, assigning the second node as the flush owner of the first container; and
responsive to said comparing determining that the first counter is equal to the second counter, performing second processing to determine which of the first node and the second node is the flush owner of the first container; and
the flush owner of the first container flushing the first list of recorded write operations of the log associated with the first container.