Todd Lipcon has submitted this change and it was merged. Change subject: KUDU-1396. Fix index building when an individual value overflows block ......................................................................
KUDU-1396. Fix index building when an individual value overflows block This fixes an infinite recursion when building the index for a cfile in the case that a single value is larger than the configured index block size. Previously, we would see that the block was full, propagate the key upwards, see that the new block was full, and continue until we crashed. The fix is relatively simple: we need to make sure that an index block has at least two elements before we propagate upwards. This adds a new cfile test which writes strings that are larger than 64KB. Change-Id: Ic27485bc0b2151e7c182c36e7ad6258dc549517b Reviewed-on: http://gerrit.cloudera.org:8080/2725 Reviewed-by: Adar Dembo <[email protected]> Tested-by: Kudu Jenkins --- M src/kudu/cfile/cfile-test-base.h M src/kudu/cfile/cfile-test.cc M src/kudu/cfile/index_block.cc M src/kudu/cfile/index_block.h M src/kudu/cfile/index_btree.cc 5 files changed, 66 insertions(+), 46 deletions(-) Approvals: Adar Dembo: Looks good to me, approved Kudu Jenkins: Verified -- To view, visit http://gerrit.cloudera.org:8080/2725 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: merged Gerrit-Change-Id: Ic27485bc0b2151e7c182c36e7ad6258dc549517b Gerrit-PatchSet: 4 Gerrit-Project: kudu Gerrit-Branch: master Gerrit-Owner: Todd Lipcon <[email protected]> Gerrit-Reviewer: Adar Dembo <[email protected]> Gerrit-Reviewer: Kudu Jenkins Gerrit-Reviewer: Todd Lipcon <[email protected]>
