Taras Bobrovytsky has posted comments on this change. Change subject: IMPALA-4787: Optimize APPX_MEDIAN() memory usage ......................................................................
Patch Set 15: (4 comments) http://gerrit.cloudera.org:8080/#/c/6025/15/be/src/exprs/aggregate-functions-ir.cc File be/src/exprs/aggregate-functions-ir.cc: Line 979: // array and reallocating when the array is full. When this object is serialized, the > "When this object is serialized into an output buffer, the samples array is Done Line 1042: // memory containing this object and the samples array is freed. The serialized object > remove the implicit Delete() call and make that explicit at the call site. The problem is that we have to make some modifications to the object before serializing it. For example, we set inline to true on line 1066. So Delete will not work any more. One option is to set those variables, then copy, then set them to their original values. I was considering doing that before, but I thought it might be confusing. What do you think is the right thing to do here? Line 1162: // Size of the samples array. > be specific by referencing the member explicitly. Done Line 1180: // Reallocates the samples array increasing it's capacity to "new_capacity" rounded up > fix punctuation. Rephrased the comment. -- To view, visit http://gerrit.cloudera.org:8080/6025 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: I99adaad574d4fb0a3cf38c6cbad8b2a23df12968 Gerrit-PatchSet: 15 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Taras Bobrovytsky <[email protected]> Gerrit-Reviewer: Alex Behm <[email protected]> Gerrit-Reviewer: Jim Apple <[email protected]> Gerrit-Reviewer: Marcel Kornacker <[email protected]> Gerrit-Reviewer: Matthew Jacobs <[email protected]> Gerrit-Reviewer: Mostafa Mokhtar <[email protected]> Gerrit-Reviewer: Taras Bobrovytsky <[email protected]> Gerrit-HasComments: Yes
