Impala Public Jenkins has submitted this change and it was merged. Change subject: IMPALA-4831: enforce BufferPool reservation invariants ......................................................................
IMPALA-4831: enforce BufferPool reservation invariants Before this patch ill-behaved code outside BufferPool could violate BufferPool invariants by calling methods on ReservationTracker() such as DecreaseReservation() or ReleaseFrom() or by hooking up Clients and ReservationTrackers in the wrong way (e.g. sharing a ReservationTracker between two Clients). Now each client creates and owns its ReservationTracker and restricts which methods can be called from outside BufferPool. This also reduces the amount of boilerplate code required to set up and tear down a client. Change-Id: Ic5b0c335d6e73250f7e5a3b9ce2f999c5119c573 Reviewed-on: http://gerrit.cloudera.org:8080/6313 Reviewed-by: Dan Hecht <[email protected]> Tested-by: Impala Public Jenkins --- M be/src/runtime/bufferpool/buffer-pool-internal.h M be/src/runtime/bufferpool/buffer-pool-test.cc M be/src/runtime/bufferpool/buffer-pool.cc M be/src/runtime/bufferpool/buffer-pool.h M be/src/runtime/bufferpool/reservation-tracker.h M be/src/runtime/bufferpool/suballocator-test.cc M be/src/runtime/bufferpool/suballocator.cc 7 files changed, 163 insertions(+), 150 deletions(-) Approvals: Impala Public Jenkins: Verified Dan Hecht: Looks good to me, approved -- To view, visit http://gerrit.cloudera.org:8080/6313 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: merged Gerrit-Change-Id: Ic5b0c335d6e73250f7e5a3b9ce2f999c5119c573 Gerrit-PatchSet: 4 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Tim Armstrong <[email protected]> Gerrit-Reviewer: Dan Hecht <[email protected]> Gerrit-Reviewer: Impala Public Jenkins
