US 12,001,417 B2
Data locking
Richard Pilz, Dresden (DE); Adrian Mocan, Dresden (DE); Katja Pfeifer, Dresden (DE); and Tom Spiegler, Dresden (DE)
Assigned to SAP SE, Walldorf (DE)
Filed by SAP SE, Walldorf (DE)
Filed on Sep. 6, 2021, as Appl. No. 17/467,367.
Application 17/467,367 is a continuation of application No. 15/875,353, filed on Jan. 19, 2018, granted, now 11,113,261.
Prior Publication US 2021/0397597 A1, Dec. 23, 2021
Int. Cl. G06F 16/23 (2019.01); G06F 16/22 (2019.01); G06F 16/2457 (2019.01)
CPC G06F 16/2343 (2019.01) [G06F 16/2264 (2019.01); G06F 16/2365 (2019.01); G06F 16/2457 (2019.01)] 9 Claims
OG exemplary drawing
 
1. A computer-implemented method to update a locks table for a dataset, the method comprising:
receiving, by a processor, a request to set a lock state for a combination of at least two members of a dataset, the dataset including database data tables including a fixed plurality of dimensions each having a fixed plurality of members and a locks table specifying one of a fixed plurality of lock states for different combinations of the plurality of members of the dataset, and the fixed plurality of members each having an associated index value defined by a database index table for each of the plurality of dimensions;
splitting, by the processor, a first dimension of the combination of the members of the request to ensure each of the members in the combination of the request have a unique index value in the locks table relative other members in the first dimension by determining whether the members in the combination of the request in the first dimension have an index value shared with the other members in the first dimension and assigning the unique index value to the members in the combination of the request in the first dimension in an instance the index value is shared and updating the locks table with the unique index value assigned to the members of the first dimension, the lock state for the at least two members of the request is unchanged;
amending, by the processor, the locks table by successively splitting each of the dimensions other than the first dimension of the members of the combination of the request to ensure the members of the request in each of the dimensions other than the first dimension have a unique index value relative other members in each of the dimensions other than the first dimension and the lock state for the at least two members of the request is unchanged;
updating, by the processor in response to a conclusion of the successive amending of the locks table, a lock state of the amended locks table for the combination of the at least two of members of the request; and
storing the updated locks table in a memory.