You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kudu.apache.org by to...@apache.org on 2016/01/22 03:32:48 UTC
[3/3] incubator-kudu git commit: KUDU-1269: KuduScanner should expose
its projection schema
KUDU-1269: KuduScanner should expose its projection schema
While I was at it, I also copied the other public getters from
AsyncKuduScanner into KuduScanner.
Change-Id: I1568744669c2d632aa737658f79bb9ba336439ad
Reviewed-on: http://gerrit.cloudera.org:8080/1869
Reviewed-by: Jean-Daniel Cryans
Reviewed-by: Todd Lipcon <to...@apache.org>
Tested-by: Internal Jenkins
Project: http://git-wip-us.apache.org/repos/asf/incubator-kudu/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-kudu/commit/8260093b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-kudu/tree/8260093b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-kudu/diff/8260093b
Branch: refs/heads/master
Commit: 8260093b9e53445801c8b69d9b69700721c965ce
Parents: efa7e82
Author: Adar Dembo <ad...@cloudera.com>
Authored: Thu Jan 21 17:03:12 2016 -0800
Committer: Todd Lipcon <to...@apache.org>
Committed: Fri Jan 22 02:32:29 2016 +0000
----------------------------------------------------------------------
.../org/kududb/client/AsyncKuduScanner.java | 13 +++++-
.../java/org/kududb/client/KuduScanner.java | 45 ++++++++++++++++++++
2 files changed, 56 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-kudu/blob/8260093b/java/kudu-client/src/main/java/org/kududb/client/AsyncKuduScanner.java
----------------------------------------------------------------------
diff --git a/java/kudu-client/src/main/java/org/kududb/client/AsyncKuduScanner.java b/java/kudu-client/src/main/java/org/kududb/client/AsyncKuduScanner.java
index 0b4a5c2..ecb916a 100644
--- a/java/kudu-client/src/main/java/org/kududb/client/AsyncKuduScanner.java
+++ b/java/kudu-client/src/main/java/org/kududb/client/AsyncKuduScanner.java
@@ -321,7 +321,7 @@ public final class AsyncKuduScanner {
* @return a long representing the maximum number of rows that can be returned
*/
public long getLimit() {
- return limit;
+ return this.limit;
}
/**
@@ -346,7 +346,7 @@ public final class AsyncKuduScanner {
* from a tablet server
*/
public long getBatchSizeBytes() {
- return batchSizeBytes;
+ return this.batchSizeBytes;
}
/**
@@ -357,6 +357,15 @@ public final class AsyncKuduScanner {
return this.readMode;
}
+ /**
+ * Returns the projection schema of this scanner. If specific columns were
+ * not specified during scanner creation, the table schema is returned.
+ * @return the projection schema for this scanner
+ */
+ public Schema getProjectionSchema() {
+ return this.schema;
+ }
+
long getSnapshotTimestamp() {
return this.htTimestamp;
}
http://git-wip-us.apache.org/repos/asf/incubator-kudu/blob/8260093b/java/kudu-client/src/main/java/org/kududb/client/KuduScanner.java
----------------------------------------------------------------------
diff --git a/java/kudu-client/src/main/java/org/kududb/client/KuduScanner.java b/java/kudu-client/src/main/java/org/kududb/client/KuduScanner.java
index 962bdfd..cdaaa46 100644
--- a/java/kudu-client/src/main/java/org/kududb/client/KuduScanner.java
+++ b/java/kudu-client/src/main/java/org/kududb/client/KuduScanner.java
@@ -17,8 +17,11 @@
package org.kududb.client;
import com.stumbleupon.async.Deferred;
+
+import org.kududb.Schema;
import org.kududb.annotations.InterfaceAudience;
import org.kududb.annotations.InterfaceStability;
+import org.kududb.client.AsyncKuduScanner.ReadMode;
/**
* Synchronous version of {@link AsyncKuduScanner}. Offers the same API but with blocking methods.
@@ -66,6 +69,48 @@ public class KuduScanner {
}
/**
+ * Returns the maximum number of rows that this scanner was configured to return.
+ * @return a long representing the maximum number of rows that can be returned
+ */
+ public long getLimit() {
+ return asyncScanner.getLimit();
+ }
+
+ /**
+ * Returns if this scanner was configured to cache data blocks or not.
+ * @return true if this scanner will cache blocks, else else.
+ */
+ public boolean getCacheBlocks() {
+ return asyncScanner.getCacheBlocks();
+ }
+
+ /**
+ * Returns the maximum number of bytes returned by the scanner, on each batch.
+ * @return a long representing the maximum number of bytes that a scanner can receive at once
+ * from a tablet server
+ */
+ public long getBatchSizeBytes() {
+ return asyncScanner.getBatchSizeBytes();
+ }
+
+ /**
+ * Returns the ReadMode for this scanner.
+ * @return the configured read mode for this scanner
+ */
+ public ReadMode getReadMode() {
+ return asyncScanner.getReadMode();
+ }
+
+ /**
+ * Returns the projection schema of this scanner. If specific columns were
+ * not specified during scanner creation, the table schema is returned.
+ * @return the projection schema for this scanner
+ */
+ public Schema getProjectionSchema() {
+ return asyncScanner.getProjectionSchema();
+ }
+
+ /**
* A Builder class to build {@link KuduScanner}.
* Use {@link KuduClient#newScannerBuilder} in order to get a builder instance.
*/