Abstract:
The present teaching relates to concurrency control in log-structured merge (LSM) data stores. In one example, a call is received from a thread for writing a value to a key of LSM components. A shared mode lock is set on the LSM components in response to the call. The value is written to the key once the shared mode lock is set on the LSM components. The shared mode lock is released from the LSM components after the value is written to the key.
Abstract:
In one embodiment, a set of lock and unlock instructions in a read phase of a computer-readable program is replaced with a first set of tracking instructions, wherein the first set of tracking instructions track a set of locked objects identifying objects that would have been locked by executing the set of lock and unlock instructions. A second set of tracking instructions is inserted into the read phase of the computer-readable program, wherein the second set of tracking instructions track a set of read objects indicating versions of objects that are read. Validation instructions are inserted into the computer-readable program, wherein the validation instructions validate that the versions of objects in the set of read objects have not changed since they were last read and lock the set of locked objects that would have been locked upon completing execution of the set of lock and unlock instructions. Update instructions are added to an update phase of the computer-readable program, where the update instructions increment a current version of an object each time a value of the object is updated or a lock of the object is released.
Abstract:
Disclosed herein is an enhanced device personalization that personalizes a user's experience with a device, e.g., a multi-user device. Rather than personalizing based on the specific user(s) that are using, an active entity, which represents a type of consumption, may be generated and used to make recommendations for personalizing an experience using the device. In a case of a multi-user device, each user's experience is personalized by determining an active entity for the user's experience and without knowledge of which user is using the device.
Abstract:
Disclosed herein is an enhanced device personalization that personalizes a user's experience with a device, e.g., a multi-user device. Rather than personalizing based on the specific user(s) that are using, an active entity, which represents a type of consumption, may be generated and used to make recommendations for personalizing an experience using the device. In a case of a multi-user device, each user's experience is personalized by determining an active entity for the user's experience and without knowledge of which user is using the device.
Abstract:
In one embodiment, a set of lock and unlock instructions in a read phase of a computer-readable program is replaced with a first set of tracking instructions, wherein the first set of tracking instructions track a set of locked objects identifying objects that would have been locked by executing the set of lock and unlock instructions. A second set of tracking instructions is inserted into the read phase of the computer-readable program, wherein the second set of tracking instructions track a set of read objects indicating versions of objects that are read. Validation instructions are inserted into the computer-readable program, wherein the validation instructions validate that the versions of objects in the set of read objects have not changed since they were last read and lock the set of locked objects that would have been locked upon completing execution of the set of lock and unlock instructions. Update instructions are added to an update phase of the computer-readable program, where the update instructions increment a current version of an object each time a value of the object is updated or a lock of the object is released.
Abstract:
Techniques are provided for detecting and resolving conflicts between native and transactional applications sharing a common database. As transactions are received at the database system, a timestamp is assigned to both the start and the commit time of a transaction, where the timestamps are synchronized with a logical clock in the database system. When the database system receives a native operation, the database system increments the time in the logical clock and assigns that updated time to the native operation. When the transaction is ready to commit, database system may determine conflicts between native and transactional operations. If the database system determines that a native operation conflicts with a transactional operation, database system will abort the transaction.