US 11,940,994 B2
Mechanisms for maintaining chains without locks
Rui Zhang, Fremont, CA (US); Prateek Swamy, Fremont, CA (US); Yi Xia, Los Angeles, CA (US); Punit B. Shah, Castro Valley, CA (US); and Rama K. Korlapati, El Segundo, CA (US)
Assigned to Salesforce, Inc., San Francisco, CA (US)
Filed by salesforce.com, inc., San Francisco, CA (US)
Filed on Oct. 29, 2021, as Appl. No. 17/515,118.
Prior Publication US 2023/0135823 A1, May 4, 2023
Int. Cl. G06F 7/00 (2006.01); G06F 16/23 (2019.01); G06F 16/2455 (2019.01); G06F 17/00 (2019.01)
CPC G06F 16/2379 (2019.01) [G06F 16/24552 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A method, comprising:
maintaining, by a computer system, a chain structure that links and orders a set of database objects stored in a cache of the computer system, wherein the set of database objects is usable to affect a performance of a database transaction against a database;
receiving, by the computer system, transaction requests to perform database transactions with respect to the database;
as part of performing the database transactions, the computer system determining to perform an insertion operation to insert a first database object into the chain structure and an eviction operation to remove a second database object from the chain structure; and
performing, by the computer system, the insertion and eviction operations in parallel using a set of atomic operations without acquiring a lock on the chain structure.