Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Issue 5262 - high contention in find_entry_internal_dn on mixed load (#…
…5264) Bug description: Under high mixed load (update/read), the pressure on the entry cache is so high that during an update by the time the entry is added into the cache, it is then removed from the cache before it is locked for the update. If such event occurs 1000 times in a raw, the update fails. Another issue is that when updating the parent entry of a deleted entry (numsubordinates), if it fails to lock the parent it does not return the parent entry. So refcnt becomes invalid. Fix description: To reduce the likelyhood of failure, if an entry is removed from the entry cache before it is locked, then pause 100ms before retrying to upload/lock it. In the case of the failure to lock the parent entry, the entry should be returned. relates: #5262 Reviewed by: Pierre Rogier, Mark Reynolds, Simon Pichugin, William Brown
- Loading branch information