Я пишу UDF в кусте
public ObjectInspector initialize(ObjectInspector[] arguments) throws UDFArgumentException {
if (arguments.length != 2) {
throw new UDFArgumentLengthException(UDF_NAME + " requires 2 arguments.");
}
SubTypeInspector = (JavaStringObjectInspector) arguments[1];
length = (DoubleObjectInspector) arguments[2];
-------------
------------
}
Приведенный выше код выдал следующую ошибку Ошибка при компиляции оператора: FAILED: ClassCastException org.apache.hadoop.hive.serde2.objectinspector.primitive.WritableConstantStringObjectInspectorневозможно привести к org.apache.hadoop.hive.serde2.objectinspector.primitive.JavaStringObjectInspector
В то время как приведение типов с помощью StringObjectInspector работает нормально. Пожалуйста, помогите мне понять разницу между StringObjectInspector и JavaStringObjectInspector