Dan Hecht has posted comments on this change.

Change subject: IMPALA-5238: transfer reservations between trackers
......................................................................


Patch Set 5:

(6 comments)

http://gerrit.cloudera.org:8080/#/c/6708/5/be/src/runtime/bufferpool/reservation-tracker.cc
File be/src/runtime/bufferpool/reservation-tracker.cc:

Line 237:   DCHECK_EQ(path_to_root.back(), other_path_to_root.back());
maybe first dcheck they both aren't empty to support calling back()


PS5, Line 253:   
nit: indentation mismatch


Line 274:     if (i == other_path_to_root.size() - 1 && curr->parent_ != 
nullptr) {
this path could use a quick explanation


Line 278:   }
why is it okay to add the reservation into the other chain before subtracting 
it from this chain? i guess we are assuming that this function does not execute 
concurrently with anything that might consume reservations against the 
hierarchy, right? is that documented?


Line 281:     DecreaseReservation(bytes, false, path_to_root.back());
is this always safe while holding 'locks'?  Why can't we get into a deadlock if 
doing a->Transfer(b) and b->Transfer(a) concurrently?


http://gerrit.cloudera.org:8080/#/c/6708/5/be/src/runtime/bufferpool/reservation-tracker.h
File be/src/runtime/bufferpool/reservation-tracker.h:

PS5, Line 194: Decrase
typo


-- 
To view, visit http://gerrit.cloudera.org:8080/6708
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: I21f008abaf1aa4fcd2d854769a603b97589af3b3
Gerrit-PatchSet: 5
Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-Owner: Tim Armstrong <[email protected]>
Gerrit-Reviewer: Dan Hecht <[email protected]>
Gerrit-Reviewer: Tim Armstrong <[email protected]>
Gerrit-HasComments: Yes

Reply via email to