I've written a UDF to convert currency values which are stored in an external table as double together with the currency type as string.
The currency udf extends UDF and has one method to convert the value:
public DoubleWritable evaluate(DoubleWritable value, Text baseCurrency, Text targetCurrency)
In the select statement I call the function. value and currency are defined with the right types in the external table:convert_currency(value,currency,'EUR')
and it throws the following error:Wrong arguments ''EUR'': No matching method for class com.xxx.hive.udf.UDFCurrencyConverter with (double, string, string). Possible choices: _FUNC_(org.apache.hadoop.io.DoubleWritable, string, string)
That is with Hive version 0.8.1.6
Has anybody a hint what is going wrong?
Edward Capriolo 2012-12-23, 15:44
Oliver Krohne 2012-12-23, 15:51