Улей UDF: Не удается выполнить метод оценки

#java #hive #hiveql

Вопрос:

Получение исключения ниже при попытке выполнить запрос hive, который имеет UDF

 select transform_date(source_timestamp, source_tz, dest_tz, day_light_saving) from sourcetable;
 

Все поля являются строковыми.

 Failed with exception java.io.IOException:org.apache.hadoop.hive.ql.metadata.HiveException: 
Unable to execute method public java.lang.String hive_timezone.TimezoneConvertorUDF.evaluate(java.lang.String,java.lang.String,java.lang.String,java.lang.String)  
on object hive_timezone.TimezoneConvertorUDF@656842bc of class hive_timezone.TimezoneConvertorUDF 
with arguments {2020-5-15 09:15:000:java.lang.String, UTC:java.lang.String, 025:java.lang.String, Y:java.lang.String} of size 4
Time taken: 0.135 seconds
 
 public class TimezoneConvertorUDF extends UDF{
    
    public final static DateTimeFormatter HIVE_DATE_FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:s");
    
    public String evaluate(String sourceDateStr, String sourceTz, String destTz, String honorDST) {
        return convert(sourceDateStr,sourceTz, destTz, honorDST).format(HIVE_DATE_FORMATTER);
    }
}