You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@orc.apache.org by om...@apache.org on 2016/05/26 20:50:29 UTC
[3/3] orc git commit: Copying patch for HIVE-13332.
Copying patch for HIVE-13332.
Signed-off-by: Owen O'Malley <om...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/orc/repo
Commit: http://git-wip-us.apache.org/repos/asf/orc/commit/bfbdc504
Tree: http://git-wip-us.apache.org/repos/asf/orc/tree/bfbdc504
Diff: http://git-wip-us.apache.org/repos/asf/orc/diff/bfbdc504
Branch: refs/heads/master
Commit: bfbdc504afd13e95a737824dd5e8bb0001eb33c8
Parents: 7bde940
Author: Owen O'Malley <om...@apache.org>
Authored: Thu May 26 13:39:13 2016 -0700
Committer: Owen O'Malley <om...@apache.org>
Committed: Thu May 26 13:48:31 2016 -0700
----------------------------------------------------------------------
.../src/java/org/apache/orc/tools/FileDump.java | 24 +++++++++++++++-----
.../java/org/apache/orc/tools/JsonFileDump.java | 10 ++++++--
2 files changed, 26 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/orc/blob/bfbdc504/java/core/src/java/org/apache/orc/tools/FileDump.java
----------------------------------------------------------------------
diff --git a/java/core/src/java/org/apache/orc/tools/FileDump.java b/java/core/src/java/org/apache/orc/tools/FileDump.java
index e32027f..1a1d8ab 100644
--- a/java/core/src/java/org/apache/orc/tools/FileDump.java
+++ b/java/core/src/java/org/apache/orc/tools/FileDump.java
@@ -96,7 +96,7 @@ public final class FileDump {
public static void main(String[] args) throws Exception {
Configuration conf = new Configuration();
- List<Integer> rowIndexCols = null;
+ List<Integer> rowIndexCols = new ArrayList<Integer>(0);
Options opts = createOptions();
CommandLine cli = new GnuParser().parse(opts, args);
@@ -115,10 +115,15 @@ public final class FileDump {
}
if (cli.hasOption("r")) {
- String[] colStrs = cli.getOptionValue("r").split(",");
- rowIndexCols = new ArrayList<Integer>(colStrs.length);
- for (String colStr : colStrs) {
- rowIndexCols.add(Integer.parseInt(colStr));
+ String val = cli.getOptionValue("r");
+ if (val != null && val.trim().equals("*")) {
+ rowIndexCols = null; // All the columns
+ } else {
+ String[] colStrs = cli.getOptionValue("r").split(",");
+ rowIndexCols = new ArrayList<Integer>(colStrs.length);
+ for (String colStr : colStrs) {
+ rowIndexCols.add(Integer.parseInt(colStr));
+ }
}
}
@@ -317,7 +322,7 @@ public final class FileDump {
}
private static void printMetaDataImpl(final String filename,
- final Configuration conf, final List<Integer> rowIndexCols, final boolean printTimeZone,
+ final Configuration conf, List<Integer> rowIndexCols, final boolean printTimeZone,
final List<String> corruptFiles) throws IOException {
Path file = new Path(filename);
Reader reader = getReader(file, conf, corruptFiles);
@@ -348,6 +353,12 @@ public final class FileDump {
}
ColumnStatistics[] stats = reader.getStatistics();
int colCount = stats.length;
+ if (rowIndexCols == null) {
+ rowIndexCols = new ArrayList<>(colCount);
+ for (int i = 0; i < colCount; ++i) {
+ rowIndexCols.add(i);
+ }
+ }
System.out.println("\nFile Statistics:");
for (int i = 0; i < stats.length; ++i) {
System.out.println(" Column " + i + ": " + stats[i].toString());
@@ -712,6 +723,7 @@ public final class FileDump {
return paddedBytes;
}
+ @SuppressWarnings("static-access")
static Options createOptions() {
Options result = new Options();
http://git-wip-us.apache.org/repos/asf/orc/blob/bfbdc504/java/core/src/java/org/apache/orc/tools/JsonFileDump.java
----------------------------------------------------------------------
diff --git a/java/core/src/java/org/apache/orc/tools/JsonFileDump.java b/java/core/src/java/org/apache/orc/tools/JsonFileDump.java
index 75153a2..e2048ea 100644
--- a/java/core/src/java/org/apache/orc/tools/JsonFileDump.java
+++ b/java/core/src/java/org/apache/orc/tools/JsonFileDump.java
@@ -18,6 +18,7 @@
package org.apache.orc.tools;
import java.io.IOException;
+import java.util.ArrayList;
import java.util.List;
import java.util.Set;
@@ -114,6 +115,12 @@ public class JsonFileDump {
ColumnStatistics[] stats = reader.getStatistics();
int colCount = stats.length;
+ if (rowIndexCols == null) {
+ rowIndexCols = new ArrayList<>(colCount);
+ for (int i = 0; i < colCount; ++i) {
+ rowIndexCols.add(i);
+ }
+ }
writer.key("fileStatistics").array();
for (int i = 0; i < stats.length; ++i) {
writer.object();
@@ -165,8 +172,7 @@ public class JsonFileDump {
writer.endObject();
}
writer.endArray();
-
- if (rowIndexCols != null && !rowIndexCols.isEmpty()) {
+ if (!rowIndexCols.isEmpty()) {
// include the columns that are specified, only if the columns are included, bloom filter
// will be read
boolean[] sargColumns = new boolean[colCount];