You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@kudu.apache.org by "Dan Burkert (Code Review)" <ge...@cloudera.org> on 2016/07/05 22:08:01 UTC
[kudu-CR] KUDU-1309: [java client] support tables with non-covering partition-key ranges
Hello Kudu Jenkins,
I'd like you to reexamine a change. Please visit
http://gerrit.cloudera.org:8080/3388
to look at the new patch set (#7).
Change subject: KUDU-1309: [java client] support tables with non-covering partition-key ranges
......................................................................
KUDU-1309: [java client] support tables with non-covering partition-key ranges
This commit adds support for accessing and creating tables with non-covering
range partitions to the Java client. The only public interface introduced is the
CreateTableOptions.addRangeBound method. Otherwise, all the changes are
necessary for reading or writing to tables with range partition gaps. Right now
if a client attempts to write to a non-covered range, a NotFound status is
returned, which matches the C++ client. JD pointed out that this makes it
impossible for applications to distinguish between failed updates because the
row doesn't exist, and failed updates because the partition range doesn't exist.
I plan to fix this by introducing a new status code and fixing both clients in a
follow up commit.
Change-Id: Id65a1f8a95bb16fc0360a17021a391afd3c9d03f
---
M java/kudu-client/src/main/java/org/kududb/client/AsyncKuduClient.java
M java/kudu-client/src/main/java/org/kududb/client/AsyncKuduScanner.java
M java/kudu-client/src/main/java/org/kududb/client/AsyncKuduSession.java
M java/kudu-client/src/main/java/org/kududb/client/Batch.java
M java/kudu-client/src/main/java/org/kududb/client/BatchResponse.java
M java/kudu-client/src/main/java/org/kududb/client/Bytes.java
M java/kudu-client/src/main/java/org/kududb/client/CreateTableOptions.java
M java/kudu-client/src/main/java/org/kududb/client/CreateTableRequest.java
M java/kudu-client/src/main/java/org/kududb/client/KuduRpc.java
M java/kudu-client/src/main/java/org/kududb/client/KuduRpcResponse.java
A java/kudu-client/src/main/java/org/kududb/client/NonCoveredRangeCache.java
A java/kudu-client/src/main/java/org/kududb/client/NonCoveredRangeException.java
M java/kudu-client/src/main/java/org/kududb/client/Operation.java
M java/kudu-client/src/main/java/org/kududb/client/OperationResponse.java
M java/kudu-client/src/main/java/org/kududb/client/Partition.java
M java/kudu-client/src/main/java/org/kududb/client/RowError.java
M java/kudu-client/src/main/java/org/kududb/client/RowResultIterator.java
M java/kudu-client/src/test/java/org/kududb/client/BaseKuduTest.java
M java/kudu-client/src/test/java/org/kududb/client/TestFlexiblePartitioning.java
M java/kudu-client/src/test/java/org/kududb/client/TestKuduClient.java
M java/kudu-client/src/test/java/org/kududb/client/TestKuduSession.java
M java/kudu-client/src/test/java/org/kududb/client/TestKuduTable.java
22 files changed, 830 insertions(+), 138 deletions(-)
git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/88/3388/7
--
To view, visit http://gerrit.cloudera.org:8080/3388
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Id65a1f8a95bb16fc0360a17021a391afd3c9d03f
Gerrit-PatchSet: 7
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Dan Burkert <da...@cloudera.com>
Gerrit-Reviewer: Adar Dembo <ad...@cloudera.com>
Gerrit-Reviewer: Dan Burkert <da...@cloudera.com>
Gerrit-Reviewer: Jean-Daniel Cryans <jd...@apache.org>
Gerrit-Reviewer: Kudu Jenkins