Hi Arina,
I apologize for not getting back to you sooner, and if this doesn't get
formatted properly. I just want to MD5 a string in a query.
I have pasted the java code for the function below. I included DRILL-4776
in my initial question, because it pretty much summed up my frustration
trying to deploy this function.
Here are the additional things I have done.
1. drill-module.conf. I have tried including in my jars. I have tried
including it empty in my jar, I have added to $DRILL/conf folder.
2. I have both the classes and sources jars in $DRILL/jars. I have even
tried putting them in $DRILL/jars/3rdParty
3. Source hasn't changed it is below.
A simple query like this one: SELECT (`finish` - `start`) as
`taken`,`start`,finish, outcome, username, to_md5(queryText)
FROM drillprofiles.`default`.`drillbit_queries.json` limit 2;
give following error:
Error: VALIDATION ERROR: From line 1, column 75 to line 1, column 91: No
match found for function signature to_md5(<ANY>)
@FunctionTemplate( name = "to_md5", scope = FunctionTemplate.FunctionScope.
SIMPLE, nulls = FunctionTemplate.NullHandling.NULL_IF_NULL)
public class MD5MaskFunc implements DrillSimpleFunc {
@Param
NullableVarCharHolder input;
@Output
VarCharHolder out;
@Inject
DrillBuf buffer;
HashFunction hashFunction;
public void setup() {
hashFunction = Hashing.md5();
}
public void eval() {
String stringValue =
org.apache.drill.exec.expr.fn.impl.StringFunctionHelpers.toStringFromUTF8(
input.start, input.end, input.buffer);
HashCode hashCode = hashFunction.hashString(stringValue,
StandardCharsets.UTF_8);//hashFunction.hashString(stringValue);
String outputValue = hashCode.toString();
// put the output value in the out buffer
out.buffer = buffer;
out.start = 0;
out.end = outputValue.getBytes().length;
buffer.setBytes(0, outputValue.getBytes());
}
}
On Wed, Nov 9, 2016 at 11:09 AM, Arina Yelchiyeva <
[email protected]> wrote:
> Hi Joseph,
>
> custom functions work should work fine in 1.8. At least I am not aware of
> any issues.
> Can you specify what problems with custom UDFs do you have?
>
> Kind regards
> Arina
>
> On Wed, Nov 9, 2016 at 6:02 PM, Joseph Swingle <[email protected]>
> wrote:
>
> > Drill team,
> >
> > Are Custom Functions simply broke in Version 1.8?
> >
> > Any movement on DRILL-4776 would be appreciated.
> >
> > Heck, willing to even fix all the doc, provided someone can provide me
> a
> > Custom Function that works in 1.8.
> >
> > https://issues.apache.org/jira/browse/DRILL-4776
> >
>