Adar Dembo has uploaded this change for review. ( 
http://gerrit.cloudera.org:8080/14537


Change subject: KUDU-2980: fix ORDERED scans when key columns are misordered in 
projection
......................................................................

KUDU-2980: fix ORDERED scans when key columns are misordered in projection

This patch fixes KUDU-2980 by taking a stricter approach to how key columns
appear in ORDERED scan projections. Any key columns already in the
client-provided projection are completely ignored. Instead, when we rebuild
the projection server-side, the first section (i.e. the part with the key
columns) is built using the tablet's schema. After that, we incorporate any
remaining columns from the client-provided projection, dropping any key
columns. Finally, we add any columns necessary to satisfy predicates.

The new fuzz test reproduces the bug very easily, and is expansive enough to
provide additional coverage for funky projection and predicate ordering. I
looped it 1000 times in dist-test without failure.

Change-Id: Idb213f466c7d01b6953a863d8aa53a34b5ac8893
Reviewed-on: http://gerrit.cloudera.org:8080/14503
Tested-by: Kudu Jenkins
Reviewed-by: Andrew Wong <[email protected]>
(cherry picked from commit e23e52a1b2040f12361824fde5334b46c879b142)
---
M src/kudu/client/client-test.cc
M src/kudu/common/generic_iterators.cc
M src/kudu/common/partial_row.h
M src/kudu/integration-tests/data_gen_util.cc
M src/kudu/integration-tests/data_gen_util.h
M src/kudu/tserver/tablet_service.cc
M src/kudu/util/random_util.h
7 files changed, 195 insertions(+), 32 deletions(-)



  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/37/14537/1
--
To view, visit http://gerrit.cloudera.org:8080/14537
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: branch-1.11.x
Gerrit-MessageType: newchange
Gerrit-Change-Id: Idb213f466c7d01b6953a863d8aa53a34b5ac8893
Gerrit-Change-Number: 14537
Gerrit-PatchSet: 1
Gerrit-Owner: Adar Dembo <[email protected]>

Reply via email to