Joe McDonnell has uploaded this change for review. ( http://gerrit.cloudera.org:8080/19929
Change subject: IMPALA-12154: Trim recency list appropriate for LIRS ToUninitialize() ...................................................................... IMPALA-12154: Trim recency list appropriate for LIRS ToUninitialize() The LIRS implementation relies on the invariant that the last entry on the recency list is PROTECTED. This is not being enforced properly when the code removes an entry from the recency list in ToUninitialized(). This comes up when an entry is erased or when a protected element is overwritten. This modifies ToUninitialized() to call TrimRecencyList() when removing the last entry on the recency list. To avoid recursion, it avoids this logic when TrimRecencyList() itself is calling ToUninitialized(). Tests: - Added a unit tests for erasing/overwriting the last entry on the recency list Change-Id: I83298e0a042174a09f0144aa336b2eb2b28bfee8 --- M be/src/util/cache/lirs-cache-test.cc M be/src/util/cache/lirs-cache.cc 2 files changed, 118 insertions(+), 4 deletions(-) git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/29/19929/1 -- To view, visit http://gerrit.cloudera.org:8080/19929 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I83298e0a042174a09f0144aa336b2eb2b28bfee8 Gerrit-Change-Number: 19929 Gerrit-PatchSet: 1 Gerrit-Owner: Joe McDonnell <[email protected]>
