Todd Lipcon has submitted this change and it was merged. Change subject: log: refactor log reading into an iterator-like interface ......................................................................
log: refactor log reading into an iterator-like interface This adds a new interface to iterate over a WAL one entry at a time. This interface is both more natural to use and more performant: by not materializing lots of entries in memory at the same time, the allocator thread cache should be kept much hotter and a smaller amount of memory can be reused, keeping CPU caches hotter. Currently, this is just a refactor of the internals, with the existing ReadEntries() method changed to use the iterator interface. Follow-on patches will change call sites to use the iterator instead. Change-Id: I5727951664600b7a591a6c892ea1e62469ceb109 Reviewed-on: http://gerrit.cloudera.org:8080/3038 Tested-by: Kudu Jenkins Reviewed-by: Adar Dembo <[email protected]> --- M src/kudu/consensus/log_util.cc M src/kudu/consensus/log_util.h 2 files changed, 233 insertions(+), 137 deletions(-) Approvals: Adar Dembo: Looks good to me, approved Kudu Jenkins: Verified -- To view, visit http://gerrit.cloudera.org:8080/3038 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: merged Gerrit-Change-Id: I5727951664600b7a591a6c892ea1e62469ceb109 Gerrit-PatchSet: 5 Gerrit-Project: kudu Gerrit-Branch: master Gerrit-Owner: Todd Lipcon <[email protected]> Gerrit-Reviewer: Adar Dembo <[email protected]> Gerrit-Reviewer: Kudu Jenkins Gerrit-Reviewer: Todd Lipcon <[email protected]>
