There was a change in Drill 1.3 or 1.4 that required additional
specification.

See here:

https://drill.apache.org/docs/adding-custom-functions-to-drill/

--
Jacques Nadeau
CTO and Co-Founder, Dremio

On Thu, Mar 17, 2016 at 10:13 AM, Shankar Mane <shankar.m...@games24x7.com>
wrote:

> @Jacques Nadeau
>
> Earlier in 1.2.0, we used blank drill-module.conf file as a part of UDF
> itself. And this file was not added into drill  "conf" directory.
> Functions were working fine.
>
> Same we did in 1.6.0, but drill is not able to find the function.
>
> Btw As you suggested let me do changes. And will update here once done.
>
> Regards,
> Shankar
> On 17 Mar 2016 22:31, "Jacques Nadeau" <jacq...@dremio.com> wrote:
>
> > I think your problem here is that you override all classpath scanning
> > packages (and also are using a wildcard in the name).
> >
> > You should try to only append your special packages like this:
> >
> > drill.classpath.scanning.package+= "com.companynanme.drill"
> >
> > --
> > Jacques Nadeau
> > CTO and Co-Founder, Dremio
> >
> > On Thu, Mar 17, 2016 at 8:25 AM, Shankar Mane <
> shankar.m...@games24x7.com>
> > wrote:
> >
> > >
> > >
> >
> --------------------------------------------------------------------------------
> > >
> > > 1. Drill in cluster is *working fine *when *customized*
> drill-module.conf
> > > file is *not present *in dir
> "apache-drill-1.6.0/conf/drill-module.conf"
> > >
> > >
> > >
> > >
> >
> --------------------------------------------------------------------------------
> > >
> > >
> > > 2. Custom UDF is not working as describe below :
> > >
> > > i have copied my custom UDF into dir "apache-drill-1.6.0/jars/3rdparty"
> > on
> > > all nodes and restarted all drillbits.
> > >
> > >
> > > udf filename=udfutil-0.0.1-SNAPSHOT.jar
> > > jar *structure* -
> > > /*
> > > META-INF/
> > > META-INF/MANIFEST.MF
> > > com/
> > > com/companyname/
> > > com/companyname/drill/
> > > drill-module.conf
> > > com/companyname/drill/channeltest.class
> > > com/companyname/drill/DateFunc.class
> > > com/companyname/drill/DateExtract.class
> > > com/companyname/drill/DecodeURI.class
> > > com/companyname/drill/ChannelID.class
> > > com/companyname/drill/BrowserFuncNew.class
> > > com/companyname/drill/ToDate.class
> > > META-INF/maven/
> > > META-INF/maven/com.companyname.drill.udf/
> > > META-INF/maven/com.companyname.drill.udf/udfutil/
> > > META-INF/maven/com.companyname.drill.udf/udfutil/pom.xml
> > > META-INF/maven/com.companyname.drill.udf/udfutil/pom.properties
> > > */
> > >
> > >
> > > -- And login to drill to check whether function is working or not
> > > /*
> > > 0: jdbc:drill:> select DateFunc(1458228298) from (values(1)) ;
> > > *Error: VALIDATION ERROR: From line 1, column 8 to line 1, column 26:
> No
> > > match found for function signature DateFunc(<NUMERIC>)*
> > > */
> > >
> > > *IT FAILED....*
> > >
> > >
> > >
> > >
> > >
> >
> --------------------------------------------------------------------------------
> > >
> > > 3. Now as described on website, now i edited file
> "*drill-module.conf*".
> > > And copied this file to all nodes in cluster and restarted all
> drillbits.
> > >
> > > vi apache-drill-1.6.0/conf/drill-module.conf
> > >
> > > /*
> > > drill: {
> > > classpath.scanning: {
> > > packages: [
> > > "com.companyname.drill.*"
> > > ]
> > > }
> > > }
> > > */
> > >
> > > *But DRILL GET SHUTDOWN on all nodes.*
> > >
> > >
> > >
> > >
> > > *Please help me to resolved this issue. Or suggest any other way to
> > invoke
> > > my custome UDFs. *
> > >
> > >
> > >
> > >
> > >
> > > On Thu, Mar 17, 2016 at 6:50 PM, Abdel Hakim Deneche <
> > > adene...@maprtech.com>
> > > wrote:
> > >
> > > > Easiest fix when Drill fails to load a storage plugin is to delete
> the
> > > > existing configurations. Deleting /tmp/drill/ should resolve this.
> > > >
> > > > I know this may not be practical in some cases, and other developers
> > may
> > > > give you a better solution.
> > > >
> > > > On Thu, Mar 17, 2016 at 2:13 PM, Shankar Mane <
> > > shankar.m...@games24x7.com>
> > > > wrote:
> > > >
> > > > > *drillbit.out =>*
> > > > >
> > > > >
> > > > > Exception in thread "main"
> > > > > org.apache.drill.exec.exception.DrillbitStartupException: Failure
> > > during
> > > > > initial startup of Drillbit.
> > > > > at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:284)
> > > > > at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:261)
> > > > > at org.apache.drill.exec.server.Drillbit.main(Drillbit.java:257)
> > > > > Caused by: java.lang.IllegalStateException:
> > > > > com.fasterxml.jackson.databind.JsonMappingException: Could not
> > resolve
> > > > type
> > > > > id 'kudu' into a subtype of [simple type, class
> > > > > org.apache.drill.common.logical.StoragePluginConfig]: known type
> ids
> > =
> > > > > [InfoSchemaConfig, StoragePluginConfig, SystemTablePluginConfig,
> > file,
> > > > > jdbc, mock, named]
> > > > >  at [Source: {
> > > > >   "storage":{
> > > > >     kudu : {
> > > > >       type:"kudu",
> > > > >       masterAddresses: "1.2.3.4",
> > > > >       enabled: false
> > > > >     }
> > > > >   }
> > > > > }
> > > > > ; line: 4, column: 12] (through reference chain:
> > > > >
> > > > >
> > > >
> > >
> >
> org.apache.drill.exec.planner.logical.StoragePlugins["storage"]->java.util.LinkedHashMap["kudu"])
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> org.apache.drill.exec.store.StoragePluginRegistryImpl.createPlugins(StoragePluginRegistryImpl.java:182)
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> org.apache.drill.exec.store.StoragePluginRegistryImpl.init(StoragePluginRegistryImpl.java:126)
> > > > > at org.apache.drill.exec.server.Drillbit.run(Drillbit.java:113)
> > > > > at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:281)
> > > > > ... 2 more
> > > > > Caused by: com.fasterxml.jackson.databind.JsonMappingException:
> Could
> > > not
> > > > > resolve type id 'kudu' into a subtype of [simple type, class
> > > > > org.apache.drill.common.logical.StoragePluginConfig]: known type
> ids
> > =
> > > > > [InfoSchemaConfig, StoragePluginConfig, SystemTablePluginConfig,
> > file,
> > > > > jdbc, mock, named]
> > > > >  at [Source: {
> > > > >   "storage":{
> > > > >     kudu : {
> > > > >       type:"kudu",
> > > > >       masterAddresses: "1.2.3.4",
> > > > >       enabled: false
> > > > >     }
> > > > >   }
> > > > > }
> > > > > ; line: 4, column: 12] (through reference chain:
> > > > >
> > > > >
> > > >
> > >
> >
> org.apache.drill.exec.planner.logical.StoragePlugins["storage"]->java.util.LinkedHashMap["kudu"])
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.JsonMappingException.from(JsonMappingException.java:216)
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.DeserializationContext.unknownTypeException(DeserializationContext.java:983)
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.jsontype.impl.TypeDeserializerBase._handleUnknownTypeId(TypeDeserializerBase.java:281)
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.jsontype.impl.TypeDeserializerBase._findDeserializer(TypeDeserializerBase.java:163)
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.jsontype.impl.AsPropertyTypeDeserializer._deserializeTypedForId(AsPropertyTypeDeserializer.java:106)
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.jsontype.impl.AsPropertyTypeDeserializer.deserializeTypedFromObject(AsPropertyTypeDeserializer.java:91)
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.deser.AbstractDeserializer.deserializeWithType(AbstractDeserializer.java:142)
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.deser.std.MapDeserializer._readAndBindStringMap(MapDeserializer.java:497)
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.deser.std.MapDeserializer.deserialize(MapDeserializer.java:341)
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.deser.std.MapDeserializer.deserialize(MapDeserializer.java:26)
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.deser.SettableBeanProperty.deserialize(SettableBeanProperty.java:490)
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeWithErrorWrapping(BeanDeserializer.java:465)
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeUsingPropertyBased(BeanDeserializer.java:380)
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeFromObjectUsingNonDefault(BeanDeserializerBase.java:1123)
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:298)
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:133)
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3788)
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2779)
> > > > > at
> > > > >
> > > > >
> > > >
> > >
> >
> org.apache.drill.exec.store.StoragePluginRegistryImpl.createPlugins(StoragePluginRegistryImpl.java:144)
> > > > > ... 5 more
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > On Thu, Mar 17, 2016 at 6:38 PM, Shankar Mane <
> > > > shankar.m...@games24x7.com>
> > > > > wrote:
> > > > >
> > > > > > *drillbit.out =>*
> > > > > >
> > > > > >
> > > > > > Exception in thread "main"
> > > > > > org.apache.drill.exec.exception.DrillbitStartupException: Failure
> > > > during
> > > > > > initial startup of Drillbit.
> > > > > > at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:284)
> > > > > > at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:261)
> > > > > > at org.apache.drill.exec.server.Drillbit.main(Drillbit.java:257)
> > > > > > Caused by: java.lang.IllegalStateException:
> > > > > > com.fasterxml.jackson.databind.JsonMappingException: Could not
> > > resolve
> > > > > type
> > > > > > id 'kudu' into a subtype of [simple type, class
> > > > > > org.apache.drill.common.logical.StoragePluginConfig]: known type
> > ids
> > > =
> > > > > > [InfoSchemaConfig, StoragePluginConfig, SystemTablePluginConfig,
> > > file,
> > > > > > jdbc, mock, named]
> > > > > >  at [Source: {
> > > > > >   "storage":{
> > > > > >     kudu : {
> > > > > >       type:"kudu",
> > > > > >       masterAddresses: "1.2.3.4",
> > > > > >       enabled: false
> > > > > >     }
> > > > > >   }
> > > > > > }
> > > > > > ; line: 4, column: 12] (through reference chain:
> > > > > >
> > > > >
> > > >
> > >
> >
> org.apache.drill.exec.planner.logical.StoragePlugins["storage"]->java.util.LinkedHashMap["kudu"])
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> org.apache.drill.exec.store.StoragePluginRegistryImpl.createPlugins(StoragePluginRegistryImpl.java:182)
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> org.apache.drill.exec.store.StoragePluginRegistryImpl.init(StoragePluginRegistryImpl.java:126)
> > > > > > at org.apache.drill.exec.server.Drillbit.run(Drillbit.java:113)
> > > > > > at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:281)
> > > > > > ... 2 more
> > > > > > Caused by: com.fasterxml.jackson.databind.JsonMappingException:
> > Could
> > > > not
> > > > > > resolve type id 'kudu' into a subtype of [simple type, class
> > > > > > org.apache.drill.common.logical.StoragePluginConfig]: known type
> > ids
> > > =
> > > > > > [InfoSchemaConfig, StoragePluginConfig, SystemTablePluginConfig,
> > > file,
> > > > > > jdbc, mock, named]
> > > > > >  at [Source: {
> > > > > >   "storage":{
> > > > > >     kudu : {
> > > > > >       type:"kudu",
> > > > > >       masterAddresses: "1.2.3.4",
> > > > > >       enabled: false
> > > > > >     }
> > > > > >   }
> > > > > > }
> > > > > > ; line: 4, column: 12] (through reference chain:
> > > > > >
> > > > >
> > > >
> > >
> >
> org.apache.drill.exec.planner.logical.StoragePlugins["storage"]->java.util.LinkedHashMap["kudu"])
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.JsonMappingException.from(JsonMappingException.java:216)
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.DeserializationContext.unknownTypeException(DeserializationContext.java:983)
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.jsontype.impl.TypeDeserializerBase._handleUnknownTypeId(TypeDeserializerBase.java:281)
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.jsontype.impl.TypeDeserializerBase._findDeserializer(TypeDeserializerBase.java:163)
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.jsontype.impl.AsPropertyTypeDeserializer._deserializeTypedForId(AsPropertyTypeDeserializer.java:106)
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.jsontype.impl.AsPropertyTypeDeserializer.deserializeTypedFromObject(AsPropertyTypeDeserializer.java:91)
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.deser.AbstractDeserializer.deserializeWithType(AbstractDeserializer.java:142)
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.deser.std.MapDeserializer._readAndBindStringMap(MapDeserializer.java:497)
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.deser.std.MapDeserializer.deserialize(MapDeserializer.java:341)
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.deser.std.MapDeserializer.deserialize(MapDeserializer.java:26)
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.deser.SettableBeanProperty.deserialize(SettableBeanProperty.java:490)
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeWithErrorWrapping(BeanDeserializer.java:465)
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeUsingPropertyBased(BeanDeserializer.java:380)
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeFromObjectUsingNonDefault(BeanDeserializerBase.java:1123)
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:298)
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:133)
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3788)
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2779)
> > > > > > at
> > > > > >
> > > > >
> > > >
> > >
> >
> org.apache.drill.exec.store.StoragePluginRegistryImpl.createPlugins(StoragePluginRegistryImpl.java:144)
> > > > > > ... 5 more
> > > > > >
> > > > > >
> > > > > > On Thu, Mar 17, 2016 at 6:21 PM, Shankar Mane <
> > > > > shankar.m...@games24x7.com>
> > > > > > wrote:
> > > > > >
> > > > > >> I am not able to start drill 1.6.0. Please find the attached
> file
> > > for
> > > > > >> more details.
> > > > > >>
> > > > > >>
> > > > > >
> > > > >
> > > >
> > > >
> > > >
> > > > --
> > > >
> > > > Abdelhakim Deneche
> > > >
> > > > Software Engineer
> > > >
> > > >   <http://www.mapr.com/>
> > > >
> > > >
> > > > Now Available - Free Hadoop On-Demand Training
> > > > <
> > > >
> > >
> >
> http://www.mapr.com/training?utm_source=Email&utm_medium=Signature&utm_campaign=Free%20available
> > > > >
> > > >
> > >
> >
>

Reply via email to