Alexey Serbin has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/23490 )
Change subject: KUDU-1261 instantiate templates for RowPtr::GetArray() ...................................................................... KUDU-1261 instantiate templates for RowPtr::GetArray() This patch adds KuduScanBatch::RowPtr::GetArray<>() template instantiations for all the necessary column data types. Since Kudu C++ client API still officially supports C++98, it's necessary to have template instantiations for RowPtr::GetArray(), similar to RowPtr::Get() for non-array getters. Otherwise, there might be linker errors: see [1] for details. This patch also contains a fix for a crash if trying to read an empty boolean array using the RowPtr::GetArray typed accessor. The corresponding end-to-end tests are included in client-test.cc, along with scenarios of calling the RowPtr::GetArray() on a column that is a null array. [1] https://isocpp.org/wiki/faq/templates#separate-template-fn-defn-from-decl Change-Id: I50b36c48959b00874921c6b56d210cf7358619f4 Reviewed-on: http://gerrit.cloudera.org:8080/23490 Reviewed-by: Abhishek Chennaka <[email protected]> Tested-by: Alexey Serbin <[email protected]> --- M src/kudu/client/client-test.cc M src/kudu/client/scan_batch.cc M src/kudu/client/scan_batch.h M src/kudu/common/partial_row.h 4 files changed, 407 insertions(+), 38 deletions(-) Approvals: Abhishek Chennaka: Looks good to me, approved Alexey Serbin: Verified -- To view, visit http://gerrit.cloudera.org:8080/23490 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I50b36c48959b00874921c6b56d210cf7358619f4 Gerrit-Change-Number: 23490 Gerrit-PatchSet: 4 Gerrit-Owner: Alexey Serbin <[email protected]> Gerrit-Reviewer: Abhishek Chennaka <[email protected]> Gerrit-Reviewer: Alexey Serbin <[email protected]> Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Marton Greber <[email protected]> Gerrit-Reviewer: Riza Suminto <[email protected]>
