Abhishek Chennaka has uploaded this change for review. ( 
http://gerrit.cloudera.org:8080/21244


Change subject: [WIP] KUDU-3518: Fix unexpected new predicate
......................................................................

[WIP] KUDU-3518: Fix unexpected new predicate

With the changes introduced in a previous patch[1], there has been
reports of errors during scan operations. This patches fixes these
scan errors.

The issue happens when there is a predicate on primary key column
with index i and no predicate on primary key column with index i+1.
In such a scenario a new predicate is added on the primary key
column with index i+1 as a part of ScanSpec::LiftPrimaryKeyBounds().
Since this new predicate is not a part of the base schema in the
materializing iterator, we encounter this issue.

The fix is simply to not call the ScanSpec::LiftPrimaryKeyBounds()
in this scenario as we do not need to add new predicates to the
existing scan spec causing the unexpected behavior. The tradeoff
with this fix is that the performance benefits in
ScanSpec::LiftPrimaryKeyBounds() will not be present anymore at
disk rowset level.

Feedback needed on any better alternatives to fix the issue while
I am putting together tests for the patch.

[1] https://gerrit.cloudera.org/#/c/18434/

Change-Id: I220df7ec1b4f95726c913a19125f4647267d12b1
---
M src/kudu/common/scan_spec.cc
M src/kudu/common/scan_spec.h
M src/kudu/tablet/cfile_set.cc
3 files changed, 14 insertions(+), 8 deletions(-)



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I220df7ec1b4f95726c913a19125f4647267d12b1
Gerrit-Change-Number: 21244
Gerrit-PatchSet: 1
Gerrit-Owner: Abhishek Chennaka <[email protected]>

Reply via email to