Michael Smith has posted comments on this change. ( http://gerrit.cloudera.org:8080/23852 )
Change subject: IMPALA-14661: Optimize admissiond memory usage by compressing exec requests ...................................................................... Patch Set 6: (6 comments) http://gerrit.cloudera.org:8080/#/c/23852/5/be/src/rpc/sidecar-util.h File be/src/rpc/sidecar-util.h: http://gerrit.cloudera.org:8080/#/c/23852/5/be/src/rpc/sidecar-util.h@63 PS5, Line 63: std::unique_ptr<TCompressed> compressed_obj; Doesn't need to be a unique_ptr, just instantiate the object TCompressed compressed_obj; http://gerrit.cloudera.org:8080/#/c/23852/5/be/src/rpc/thrift-util.h File be/src/rpc/thrift-util.h: http://gerrit.cloudera.org:8080/#/c/23852/5/be/src/rpc/thrift-util.h@281 PS5, Line 281: std::unique_ptr<TCompressed>* dest) { This should just be a `TCompressed*`, not unique_ptr<TCompressed>*. It's up to the caller how the objects lifetime is managed. http://gerrit.cloudera.org:8080/#/c/23852/5/be/src/rpc/thrift-util.h@293 PS5, Line 293: compressed_str.resize(max_out); nit: could be a single constructor std::string compressed_str{max_out, '\0'}; http://gerrit.cloudera.org:8080/#/c/23852/5/be/src/rpc/thrift-util.h@296 PS5, Line 296: uint8_t* out_ptr = reinterpret_cast<uint8_t*>(&compressed_str[0]); nit: prefer "compressed_str.data()" http://gerrit.cloudera.org:8080/#/c/23852/5/be/src/scheduling/admission-controller.h File be/src/scheduling/admission-controller.h: http://gerrit.cloudera.org:8080/#/c/23852/5/be/src/scheduling/admission-controller.h@109 PS5, Line 109: const TQueryExecRequest* request() const override { nit: I think this is more readable with whitespace between functions, matching AdmissionExecRequestUncompressed. http://gerrit.cloudera.org:8080/#/c/23852/5/be/src/scheduling/admission-controller.cc File be/src/scheduling/admission-controller.cc: http://gerrit.cloudera.org:8080/#/c/23852/5/be/src/scheduling/admission-controller.cc@364 PS5, Line 364: unique_ptr<TQueryExecRequest> new_req = std::make_unique<TQueryExecRequest>(); nit: with the current API initializing this is pointless, it's overwritten by DecompressThrift. With the API update I proposed, we do need to initialize it. -- To view, visit http://gerrit.cloudera.org:8080/23852 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I5a676d1a806451cbf84b0a3f8a706d7c6655e12d Gerrit-Change-Number: 23852 Gerrit-PatchSet: 6 Gerrit-Owner: Yida Wu <[email protected]> Gerrit-Reviewer: Abhishek Rawat <[email protected]> Gerrit-Reviewer: Impala Public Jenkins <[email protected]> Gerrit-Reviewer: Michael Smith <[email protected]> Gerrit-Reviewer: Yida Wu <[email protected]> Gerrit-Comment-Date: Fri, 16 Jan 2026 00:30:50 +0000 Gerrit-HasComments: Yes
