You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by jd...@apache.org on 2014/10/15 04:09:28 UTC
svn commit: r1631934 - in /hive/branches/branch-0.14:
hcatalog/core/src/test/java/org/apache/hive/hcatalog/data/schema/TestHCatSchemaUtils.java
serde/src/java/org/apache/hadoop/hive/serde2/typeinfo/StructTypeInfo.java
Author: jdere
Date: Wed Oct 15 02:09:27 2014
New Revision: 1631934
URL: http://svn.apache.org/r1631934
Log:
HIVE-8386: HCAT api call is case sensitive on fields in struct column (Jason Dere, reviewed by Sushanth Sowmyan)
Modified:
hive/branches/branch-0.14/hcatalog/core/src/test/java/org/apache/hive/hcatalog/data/schema/TestHCatSchemaUtils.java
hive/branches/branch-0.14/serde/src/java/org/apache/hadoop/hive/serde2/typeinfo/StructTypeInfo.java
Modified: hive/branches/branch-0.14/hcatalog/core/src/test/java/org/apache/hive/hcatalog/data/schema/TestHCatSchemaUtils.java
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.14/hcatalog/core/src/test/java/org/apache/hive/hcatalog/data/schema/TestHCatSchemaUtils.java?rev=1631934&r1=1631933&r2=1631934&view=diff
==============================================================================
--- hive/branches/branch-0.14/hcatalog/core/src/test/java/org/apache/hive/hcatalog/data/schema/TestHCatSchemaUtils.java (original)
+++ hive/branches/branch-0.14/hcatalog/core/src/test/java/org/apache/hive/hcatalog/data/schema/TestHCatSchemaUtils.java Wed Oct 15 02:09:27 2014
@@ -35,10 +35,10 @@ public class TestHCatSchemaUtils extends
public void testSimpleOperation() throws Exception {
String typeString = "struct<name:string,studentid:int,"
- + "contact:struct<phno:string,email:string>,"
+ + "contact:struct<phNo:string,email:string>,"
+ "currently_registered_courses:array<string>,"
+ "current_grades:map<string,string>,"
- + "phnos:array<struct<phno:string,type:string>>,blah:array<int>>";
+ + "phNos:array<struct<phNo:string,type:string>>,blah:array<int>>";
TypeInfo ti = TypeInfoUtils.getTypeInfoFromTypeString(typeString);
@@ -46,8 +46,9 @@ public class TestHCatSchemaUtils extends
LOG.info("Type name : {}", ti.getTypeName());
LOG.info("HCatSchema : {}", hsch);
assertEquals(hsch.size(), 1);
- assertEquals(ti.getTypeName(), hsch.get(0).getTypeString());
- assertEquals(hsch.get(0).getTypeString(), typeString);
+ // Looks like HCatFieldSchema.getTypeString() lower-cases its results
+ assertEquals(ti.getTypeName().toLowerCase(), hsch.get(0).getTypeString());
+ assertEquals(hsch.get(0).getTypeString(), typeString.toLowerCase());
}
@SuppressWarnings("unused")
Modified: hive/branches/branch-0.14/serde/src/java/org/apache/hadoop/hive/serde2/typeinfo/StructTypeInfo.java
URL: http://svn.apache.org/viewvc/hive/branches/branch-0.14/serde/src/java/org/apache/hadoop/hive/serde2/typeinfo/StructTypeInfo.java?rev=1631934&r1=1631933&r2=1631934&view=diff
==============================================================================
--- hive/branches/branch-0.14/serde/src/java/org/apache/hadoop/hive/serde2/typeinfo/StructTypeInfo.java (original)
+++ hive/branches/branch-0.14/serde/src/java/org/apache/hadoop/hive/serde2/typeinfo/StructTypeInfo.java Wed Oct 15 02:09:27 2014
@@ -102,7 +102,7 @@ public final class StructTypeInfo extend
public TypeInfo getStructFieldTypeInfo(String field) {
String fieldLowerCase = field.toLowerCase();
for (int i = 0; i < allStructFieldNames.size(); i++) {
- if (fieldLowerCase.equals(allStructFieldNames.get(i))) {
+ if (fieldLowerCase.equalsIgnoreCase(allStructFieldNames.get(i))) {
return allStructFieldTypeInfos.get(i);
}
}