CPC G06F 16/2343 (2019.01) [G06F 16/2264 (2019.01); G06F 16/2365 (2019.01); G06F 16/2457 (2019.01)] | 9 Claims |
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.
|