You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by ha...@apache.org on 2014/01/14 05:44:35 UTC
svn commit: r1557932 -
/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/Table.java
Author: hashutosh
Date: Tue Jan 14 04:44:35 2014
New Revision: 1557932
URL: http://svn.apache.org/r1557932
Log:
HIVE-5515 : Writing to an HBase table throws IllegalArgumentException, failing job submission (Viraj Bhat via Ashutosh Chauhan & Sushanth Sowmyan)
Modified:
hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/Table.java
Modified: hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/Table.java
URL: http://svn.apache.org/viewvc/hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/Table.java?rev=1557932&r1=1557931&r2=1557932&view=diff
==============================================================================
--- hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/Table.java (original)
+++ hive/trunk/ql/src/java/org/apache/hadoop/hive/ql/metadata/Table.java Tue Jan 14 04:44:35 2014
@@ -47,6 +47,7 @@ import org.apache.hadoop.hive.metastore.
import org.apache.hadoop.hive.metastore.api.StorageDescriptor;
import org.apache.hadoop.hive.ql.io.HiveFileFormatUtils;
import org.apache.hadoop.hive.ql.io.HiveOutputFormat;
+import org.apache.hadoop.hive.ql.io.HivePassThroughOutputFormat;
import org.apache.hadoop.hive.ql.io.HiveSequenceFileOutputFormat;
import org.apache.hadoop.hive.serde.serdeConstants;
import org.apache.hadoop.hive.serde2.Deserializer;
@@ -321,8 +322,22 @@ public class Table implements Serializab
}
c = getStorageHandler().getOutputFormatClass();
} else {
- c = Class.forName(className, true,
- JavaUtils.getClassLoader());
+ // if HivePassThroughOutputFormat
+ if (className.equals(
+ HivePassThroughOutputFormat.HIVE_PASSTHROUGH_OF_CLASSNAME)) {
+ if (getStorageHandler() != null) {
+ // get the storage handler real output format class
+ c = getStorageHandler().getOutputFormatClass();
+ }
+ else {
+ //should not happen
+ return null;
+ }
+ }
+ else {
+ c = Class.forName(className, true,
+ JavaUtils.getClassLoader());
+ }
}
if (!HiveOutputFormat.class.isAssignableFrom(c)) {
if (getStorageHandler() != null) {