This is an automated email from the ASF dual-hosted git repository.
jcamacho pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hive.git
The following commit(s) were added to refs/heads/master by this push:
new 5baaa94 HIVE-22996: BasicStats parsing should check proactively for
null or empty string (Jesus Camacho Rodriguez, reviewed by Gopal Vijayaraghavan)
5baaa94 is described below
commit 5baaa94c316d75854eae07ca99062d15ff1a554e
Author: Jesus Camacho Rodriguez <[email protected]>
AuthorDate: Fri Mar 6 11:40:42 2020 -0800
HIVE-22996: BasicStats parsing should check proactively for null or empty
string (Jesus Camacho Rodriguez, reviewed by Gopal Vijayaraghavan)
Close apache/hive#942
---
.../java/org/apache/hadoop/hive/ql/stats/BasicStats.java | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/stats/BasicStats.java
b/ql/src/java/org/apache/hadoop/hive/ql/stats/BasicStats.java
index e38a067..02a9f15 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/stats/BasicStats.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/stats/BasicStats.java
@@ -31,6 +31,7 @@ import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
+import org.apache.commons.lang3.StringUtils;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.hive.common.StatsSetupConst;
@@ -305,10 +306,15 @@ public class BasicStats {
long result = -1;
if (params != null) {
- try {
- result = Long.parseLong(params.get(fieldName));
- } catch (NumberFormatException e) {
- result = -1;
+ String val = params.get(fieldName);
+ if (!StringUtils.isBlank(val)) {
+ try {
+ result = Long.parseLong(val);
+ } catch (NumberFormatException e) {
+ // Pass-through. This should not happen and we will LOG it,
+ // but do not fail query.
+ LOG.warn("Error parsing {} value: {}", fieldName, val);
+ }
}
}
return result;