Mike Percy has uploaded this change for review. ( http://gerrit.cloudera.org:8080/13646
Change subject: [java] Favor column ids over column names in scan tokens ...................................................................... [java] Favor column ids over column names in scan tokens Previously, a scan token would use column name to map a column in its projection to a column in the target table's current schema. Therefore, a scan token couldn't be used if a column were renamed between when the token is cut and when it is rehydrated into a scanner. This adjusts the Java client to prefer ids to names, to fix this behavior. Since this involves including column ids when serializing columns to PBs as part of scan tokens, but the server does not permit clients to send column ids in most cases, this patch adds a new serialization option that includes column ids. Note that this patch does not make _scanners_ resistant to column name changes. If a scanner is opened against a table and a column name changes on a replica before the scanner opens a server-side scanner on it, the scan will fail if the column is in the projection. A follow-up will add similar capability to the C++ client. Change-Id: Ib3f05a4175c7e7bfaec2cbd3586723e6de3823f0 Reviewed-on: http://gerrit.cloudera.org:8080/13562 Reviewed-by: Mike Percy <[email protected]> Tested-by: Kudu Jenkins (cherry picked from commit a97276f29697ca32f599053d0e0aaa6d1e521a63) --- M java/kudu-client/src/main/java/org/apache/kudu/client/AlterTableOptions.java M java/kudu-client/src/main/java/org/apache/kudu/client/CreateTableRequest.java M java/kudu-client/src/main/java/org/apache/kudu/client/KuduScanToken.java M java/kudu-client/src/main/java/org/apache/kudu/client/Operation.java M java/kudu-client/src/main/java/org/apache/kudu/client/ProtobufHelper.java M java/kudu-client/src/test/java/org/apache/kudu/client/TestKeyEncoding.java M java/kudu-client/src/test/java/org/apache/kudu/client/TestScanToken.java 7 files changed, 229 insertions(+), 67 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/46/13646/1 -- To view, visit http://gerrit.cloudera.org:8080/13646 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: branch-1.10.x Gerrit-MessageType: newchange Gerrit-Change-Id: Ib3f05a4175c7e7bfaec2cbd3586723e6de3823f0 Gerrit-Change-Number: 13646 Gerrit-PatchSet: 1 Gerrit-Owner: Mike Percy <[email protected]> Gerrit-Reviewer: Will Berkeley <[email protected]>
