Hi Ted, I fetched this, built it and deployed it without problems. I can not see any real difference other than this deploys two .jar (I tried that as well earlier).
I'm still trying to figure out why Drill is not picking up my UDFs Regards, -Stefán On Sun, Jul 19, 2015 at 10:45 PM, Ted Dunning <[email protected]> wrote: > Stefan, > > Have you seen this github project: > > https://github.com/mapr-demos/simple-drill-functions > > ? > > > On Sun, Jul 19, 2015 at 2:14 PM, Stefán Baxter <[email protected]> > wrote: > > > Hi Jim, > > > > I'm still not able to make this work. Do you have a sample .jar file > with a > > small example that you are running? > > > > Regards, > > -Stefan > > > > On Sun, Jul 19, 2015 at 6:46 PM, Ted Dunning <[email protected]> > > wrote: > > > > > > > > Sounds like a fine example, not because of sophistication but because > it > > > deals with dates. > > > > > > Check the drill logs. It is likely that drill is grumpy about > something > > > in your udf or packaging. > > > > > > Also, feel free to snitch the pom from the simple examples in order to > > get > > > the pieces assembled and packaged correctly. > > > > > > Sent from my iPhone > > > > > > > On Jul 19, 2015, at 11:25, Stefán Baxter <[email protected]> > > > wrote: > > > > > > > > Hi Jim, > > > > > > > > My UDF is currently so simple that I'm not sure you need it (or want > > it). > > > > > > > > It basically just rounds a timestamp value with ISO 8601 periods > > > > asRoundTimestamp(timestampvalue,'PT10M'). > > > > > > > > I would be more than happy to contribute to your project rather than > > > > building our own :). > > > > > > > > Is the repo public? > > > > > > > > Regards, > > > > -Stefan > > > > > > > > > > > > > > > >> On Sun, Jul 19, 2015 at 6:18 PM, Jim Bates <[email protected]> > > wrote: > > > >> > > > >> Maven will typically create a jar for class and a jar for source > when > > > told > > > >> to do so. I just include the source files in the same jar as the > class > > > >> files. There is a github example drill udf project we are working on > > to > > > >> include several examples to simplify the learning curve. If your > > > >> interested... I'd love to have you add your udf. > > > >> On Jul 19, 2015 12:59 PM, "Stefán Baxter" < > [email protected]> > > > >> wrote: > > > >> > > > >>> Hi again, > > > >>> > > > >>> Going over the documentation once more I came across this: > > > >>> > > > >>> - Add the sources and classes JAR files to Drill’s classpath. > > > >>> > > > >>> I'm only including a standard .jar (with classes no sources) and I > > > wonder > > > >>> why this dependency is listed. > > > >>> > > > >>> Anyways, that it the next step. > > > >>> > > > >>> A sample .jar that works with the drill-config counterpart would > be a > > > >>> welcome addition to the documentation. > > > >>> > > > >>> Regards, > > > >>> -Stefan > > > >>> > > > >>> > > > >>> On Sun, Jul 19, 2015 at 5:53 PM, Stefán Baxter < > > > >> [email protected]> > > > >>> wrote: > > > >>> > > > >>>> Hi Jim, > > > >>>> > > > >>>> Now I have added the file to the jar (both root and resources > > folder) > > > >> but > > > >>>> that does not seem to change anything. > > > >>>> > > > >>>> Any additional ideas? > > > >>>> > > > >>>> Regards, > > > >>>> -Stefan > > > >>>> > > > >>>> On Sun, Jul 19, 2015 at 5:40 PM, Stefán Baxter < > > > >>> [email protected]> > > > >>>> wrote: > > > >>>> > > > >>>>> NO! > > > >>>>> > > > >>>>> Thank you , will do that right now :) > > > >>>>> > > > >>>>> On Sun, Jul 19, 2015 at 5:38 PM, Jim Bates <[email protected]> > > > >> wrote: > > > >>>>> > > > >>>>>> Did you include a file drill-module.conf in your jar along with > > > >> source > > > >>>>>> files? > > > >>>>>> On Jul 19, 2015 12:20 PM, "Stefán Baxter" < > > > [email protected] > > > >>> > > > >>>>>> wrote: > > > >>>>>> > > > >>>>>>> Hi, > > > >>>>>>> > > > >>>>>>> I'm trying to deploy a UDF that I have written according to the > > > >>>>>>> documentation. > > > >>>>>>> > > > >>>>>>> I have also: > > > >>>>>>> > > > >>>>>>> 1. Copied the jar file > > > >>>>>>> to jars/3rdparty > > > >>>>>>> > > > >>>>>>> 2. Changed the config "conf/drill-override.conf" to include: > > > >>>>>>> drill.logical.function.package += > > > >> > ["org.apache.drill.exec.expr.fn.impl","com.activitystream.drill.udfs"] > > > >>>>>>> > > > >>>>>>> 3. Rerun the Drillbit > > > >>>>>>> bin/drillbit.sh start > > > >>>>>>> > > > >>>>>>> The log shows no sign of the the UDF being loaded but if I use > it > > > >> in > > > >>> a > > > >>>>>> SQL > > > >>>>>>> statement then this error is thrown: > > > >>>>>>> > > > >>>>>>> Error: PARSE ERROR: From line 1, column 184 to line 1, column > > 219: > > > >> No > > > >>>>>> match > > > >>>>>>> found for function signature asRoundTimeStamp(<ANY>, > <CHARACTER>) > > > >>>>>>> > > > >>>>>>> > > > >>>>>>> The relevant part of the UDF source: > > > >>>>>>> > > > >>>>>>> package com.activitystream.drill.udfs; > > > >>>>>>> > > > >>>>>>> public class ASUserDefinedFunctions { > > > >>>>>>> > > > >>>>>>> @FunctionTemplate(name = "asRoundTimeStamp", scope = > > > >>>>>>> FunctionTemplate.FunctionScope.SIMPLE, nulls = > > > >>>>>>> FunctionTemplate.NullHandling.NULL_IF_NULL) > > > >>>>>>> > > > >>>>>>> public static class RoundTimeStamp implements > DrillSimpleFunc > > > >>>>>>> > > > >>>>>>> > > > >>>>>>> Can anyone please assist? > > > >>>>>>> > > > >>>>>>> Regards, > > > >>>>>>> -Stefan > > > >> > > > > > >
