Alexey Serbin has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/17902 )
Change subject: [master] update on max_returned_locations semantics ...................................................................... [master] update on max_returned_locations semantics While looking at the partition-related code, I noticed that GetTableLocations RPC requires the 'max_returned_locations' field to be always set, even if it's necessary to fetch information on all tablets in a table. This patch updates the implementation of the GetTableLocations RPC to output information on every tablet in a table if the GetTableLocationsRequestPB::max_returned_locations field isn't set. This patch also contains a unit test for the new functionality. The primary incentive for this update was getting rid of the hard-coded values in test scenarios like we had in table_locations-itest.cc (see the diff for TableLocationsTest.TestRangeSpecificHashing as a part of this changelist). That hard-coding the expected limit on the number of returned locations for the 'max_returned_locations' field might hide a bug if there are more tablets actually created, and making it possible to request getting information on all the existing tablets in the API looked cleaner than introducing some hard-coded values like INT_MAX in the mentioned test scenario. As for the Kudu client library code, the 'max_returned_locations' field is still set to some heuristic values based on the type of tablet lookup performed, so there shouldn't be a huge amount of metadata returned for large fact tables in case of a real-life use case. Change-Id: Iebc2b2295576c0b1b637fdeb95d4f9ff7b4d51c7 Reviewed-on: http://gerrit.cloudera.org:8080/17902 Tested-by: Alexey Serbin <[email protected]> Reviewed-by: Alexey Serbin <[email protected]> --- M src/kudu/integration-tests/create-table-stress-test.cc M src/kudu/integration-tests/table_locations-itest.cc M src/kudu/master/catalog_manager-test.cc M src/kudu/master/catalog_manager.cc 4 files changed, 63 insertions(+), 6 deletions(-) Approvals: Alexey Serbin: Looks good to me, approved; Verified -- To view, visit http://gerrit.cloudera.org:8080/17902 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: Iebc2b2295576c0b1b637fdeb95d4f9ff7b4d51c7 Gerrit-Change-Number: 17902 Gerrit-PatchSet: 4 Gerrit-Owner: Alexey Serbin <[email protected]> Gerrit-Reviewer: Alexey Serbin <[email protected]> Gerrit-Reviewer: Andrew Wong <[email protected]> Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Tidy Bot (241)
