US 7,600,063 B2
Techniques for improved read-write concurrency
Juan Loaiza, Woodside, Calif. (US); Neil MacNaughton, Los Gatos, Calif. (US); Eugene Ho, San Ramon, Calif. (US); Vipin Gokhale, Fremont, Calif. (US); Kiran Goyal, Foster City, Calif. (US); and Tirthankar Lahiri, Palo Alto, Calif. (US)
Assigned to Oracle International Corporation, Redwood Shores, Calif. (US)
Filed on Sep. 15, 2006, as Appl. No. 11/521,908.
Prior Publication US 2008/0071997 A1, Mar. 20, 2008
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 12/00 (2006.01)
U.S. Cl. 710—200  [710/240; 711/150] 36 Claims
OG exemplary drawing
 
1. A method comprising the steps of:
at a requestor node, sending a request for permission to perform a change to a resource;
in response to the request, receiving a first lock on the resource, wherein the first lock grants permission to perform the change to the resource without making the change permanent;
after receiving the first lock on the resource, performing the change to a copy of the resource without making another copy of the resource;
wherein the change is performed to the copy of the resource while the copy resides in shared memory, and wherein the shared memory is accessible by multiple processes that are executing on the requestor node;
after performing the change and before receiving permission to make the change permanent, preventing the change from becoming permanent;
after performing the change, receiving a second lock on the resource, wherein the second lock grants permission to make the change permanent; and
after receiving the second lock on the resource, ceasing to prevent the change from becoming permanent;
wherein the steps of the method are performed by one or more computing devices.