-
Improvement
-
Resolution: Done
-
Medium
-
None
-
None
LazyDataObject's full augmentation resolution via augmentations() performs unnecessary lock operation to guard creation of further LDOs, which are quite fast to build in order to not compute the same thing twice even under contended initialization. Due to the nature of LDO use, contention on initialization quite unlikely and computation of augmentations is not very expensive. We can therefore relax the synchronization into a compare-and-swap resync, which is much lighter-weight operation than locking.