The impl of the global variant of clear() does not reset the negative lookup cache for some entityIDs.
The variant clear(entityID) does work correctly.
This is because the global variant obtains the list of entityIDs over which to iterate by looking at the indexed descriptors in the backing store. If you did not previous successfully resolve metadata for a particular entityID, then it won't be in there (duh).
Environment
None
Activity
Brent Putman
March 20, 2020 at 6:51 PM
Fixed in c9762dfeeb08c73608ff9aa3427d60f3a039dc74.
Fix was to have the global clear() iterate over the union of the indexed descriptors' entityIDs + the entityIDs which have mgmt data present. Obtaining the latter required adding a new method to the dynamic backing store impl.
Also fixed similar issue in the cleanup sweeper task to process the union-ed entityID set.
The impl of the global variant of
clear()
does not reset the negative lookup cache for some entityIDs.The variant
clear(entityID
) does work correctly.This is because the global variant obtains the list of entityIDs over which to iterate by looking at the indexed descriptors in the backing store. If you did not previous successfully resolve metadata for a particular entityID, then it won't be in there (duh).