Joe, Glad you got it to work. Mine wouldn’t even build with the hyphen in the package name. Not sure why. Would you consider posting this function on github or submitting a pull-request to have it incorporated in the next version of Drill?
> On Nov 22, 2016, at 13:20, Joseph Swingle <[email protected]> wrote: > > Charles and Arina, > Thank you for the help. I'm guessing I had 2 issues. > > 1. @Workspace annotation missing. Is this required? > 2. the drill-module.conf. I had mine including the class, based on one > of the examples I saw. The one you provided Charles, just had the java > package. > > I also moved the jars into the $DRILL_HOME/jars folder. > > Having the hyphen in the package has no effect. > > Thanks for the help. > > Joe > > On Sun, Nov 20, 2016 at 11:37 PM, Charles Givre <[email protected]> wrote: > >> Hi Joseph, >> I’m not sure what I did exactly, but this works. One thing I found was >> that my system didn’t seem to like the ‘-‘ character in the package name. >> >> >> >> >> >> >> >> On Nov 20, 2016, at 15:16, Joseph Swingle <[email protected]> wrote: >> >> Thanks Charles. >> executing mvn clean package >> >> POM is attached. >> >> >> On Sat, Nov 19, 2016 at 7:20 PM, Charles Givre <[email protected]> wrote: >> >>> Hi Joseph, >>> Can you share your pom.xml? Also what command are you using to build >>> your UDF? >>> Thanks, >>> — Charles >>> >>> >>>> On Nov 18, 2016, at 14:44, Joseph Swingle <[email protected]> wrote: >>>> >>>> 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.toS >>> tringFromUTF8( >>>> 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 >>>>>> >>>>> >>> >>> >> <pom.xml> >> >> >> >>
