bowenli86 commented on a change in pull request #8522:
[FLINK-12572][hive]Implement TableSource and InputFormat to read Hive tables
URL: https://github.com/apache/flink/pull/8522#discussion_r287214355
##########
File path:
flink-connectors/flink-connector-hive/src/main/java/org/apache/flink/table/catalog/hive/util/HiveTableUtil.java
##########
@@ -71,4 +91,115 @@ public static TableSchema
createTableSchema(List<FieldSchema> cols, List<FieldSc
return columns;
}
+
+ /**
+ * Convert partition value string to actual type in flink.
+ * @param partitionValue
+ * @param clazz
+ * @return
+ */
+ public static Object getActualObjectFromString(String partitionValue,
Class clazz) {
+ Object partitionObject = null;
+ if (String.class.equals(clazz)) {
+ partitionObject = partitionValue;
+ } else if (Short.class.equals(clazz)) {
+ partitionObject = Short.parseShort(partitionValue);
+ } else if (Integer.class.equals(clazz)) {
+ partitionObject = Integer.parseInt(partitionValue);
+ } else if (Long.class.equals(clazz)) {
+ partitionObject = Long.parseLong(partitionValue);
+ } else if (Float.class.equals(clazz)) {
+ partitionObject = Float.parseFloat(partitionValue);
+ } else if (Double.class.equals(clazz)) {
+ partitionObject = Double.parseDouble(partitionValue);
+ } else if (Boolean.class.equals(clazz)) {
+ partitionObject = Boolean.parseBoolean(partitionValue);
+ } else if (Timestamp.class.equals(clazz)) {
+ partitionObject = Timestamp.parse(partitionValue);
+ } else if (Date.class.equals(clazz)) {
+ partitionObject = Date.parse(partitionValue);
+ } else if (Time.class.equals(clazz)) {
+ partitionObject = Time.parse(partitionValue);
+ } else if (BigDecimal.class.equals(clazz)) {
Review comment:
can a hive partition value be `BigDecimal` and `BigInteger`?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services