Hi,

I'm sorry i think I'm messed up between scheduler and Hooks. I put the
Scheduler in the $STORM_HOME/lib also. In this case, are you sure the jar
is loaded when the topology is submitted? Usually in my case is the package
name

On Thu, May 28, 2015 at 12:24 PM, Ken Danniswara <[email protected]> wrote:

> Hi,
>
> In my case I'm putting the custom scheduler in the same jar with the
> submitted topology. I don't know if this is actually the best practice or
> not, but it works for me.
>
> On Thu, May 28, 2015 at 12:10 PM, Franca van Kaam <
> [email protected]> wrote:
>
>> Hello,
>>
>> I am trying to implement a custom scheduler as explained in
>> http://xumingming.sinaapp.com/885/twitter-storm-how-to-develop-a-pluggable-scheduler/
>> .
>>
>> However I seem to do something wrong in the last step of the tutorial,
>> because when I try to launch nimbus I get a ClassNotFoundException.
>>
>> 2015-05-28T11:39:24.499+0200 b.s.d.nimbus [INFO] Using custom scheduler:
>> storm.CameraScheduler
>> 2015-05-28T11:39:24.514+0200 b.s.d.nimbus [ERROR] Error on initialization
>> of server service-handler
>> java.lang.ClassNotFoundException: storm.CameraScheduler
>> at java.net.URLClassLoader$1.run(URLClassLoader.java:372) ~[na:1.8.0_31]
>> at java.net.URLClassLoader$1.run(URLClassLoader.java:361) ~[na:1.8.0_31]
>> at java.security.AccessController.doPrivileged(Native Method)
>> ~[na:1.8.0_31]
>> at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
>> ~[na:1.8.0_31]
>> at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[na:1.8.0_31]
>> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
>> ~[na:1.8.0_31]
>> at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[na:1.8.0_31]
>> at java.lang.Class.forName0(Native Method) ~[na:1.8.0_31]
>> at java.lang.Class.forName(Class.java:260) ~[na:1.8.0_31]
>> at backtype.storm.util$new_instance.invoke(util.clj:946)
>> ~[storm-core-0.9.3.jar:0.9.3]
>> at backtype.storm.daemon.nimbus$mk_scheduler.invoke(nimbus.clj:53)
>> ~[storm-core-0.9.3.jar:0.9.3]
>> at backtype.storm.daemon.nimbus$nimbus_data.invoke(nimbus.clj:78)
>> ~[storm-core-0.9.3.jar:0.9.3]
>> at
>> backtype.storm.daemon.nimbus$fn__5043$exec_fn__1108__auto____5044.invoke(nimbus.clj:898)
>> ~[storm-core-0.9.3.jar:0.9.3]
>> at clojure.lang.AFn.applyToHelper(AFn.java:163) [clojure-1.5.1.jar:na]
>> at clojure.lang.AFn.applyTo(AFn.java:151) [clojure-1.5.1.jar:na]
>> at clojure.core$apply.invoke(core.clj:617) ~[clojure-1.5.1.jar:na]
>> at
>> backtype.storm.daemon.nimbus$fn__5043$service_handler__5133.doInvoke(nimbus.clj:895)
>> [storm-core-0.9.3.jar:0.9.3]
>> at clojure.lang.RestFn.invoke(RestFn.java:421) [clojure-1.5.1.jar:na]
>> at
>> backtype.storm.daemon.nimbus$launch_server_BANG_.invoke(nimbus.clj:1152)
>> [storm-core-0.9.3.jar:0.9.3]
>> at backtype.storm.daemon.nimbus$_launch.invoke(nimbus.clj:1184)
>> [storm-core-0.9.3.jar:0.9.3]
>> at backtype.storm.daemon.nimbus$_main.invoke(nimbus.clj:1206)
>> [storm-core-0.9.3.jar:0.9.3]
>> at clojure.lang.AFn.applyToHelper(AFn.java:159) [clojure-1.5.1.jar:na]
>> at clojure.lang.AFn.applyTo(AFn.java:151) [clojure-1.5.1.jar:na]
>> at backtype.storm.daemon.nimbus.main(Unknown Source)
>> [storm-core-0.9.3.jar:0.9.3]
>> 2015-05-28T11:39:24.518+0200 b.s.util [ERROR] Halting process: ("Error on
>> initialization")
>> java.lang.RuntimeException: ("Error on initialization")
>> at backtype.storm.util$exit_process_BANG_.doInvoke(util.clj:325)
>> [storm-core-0.9.3.jar:0.9.3]
>> at clojure.lang.RestFn.invoke(RestFn.java:423) [clojure-1.5.1.jar:na]
>> at
>> backtype.storm.daemon.nimbus$fn__5043$service_handler__5133.doInvoke(nimbus.clj:895)
>> [storm-core-0.9.3.jar:0.9.3]
>> at clojure.lang.RestFn.invoke(RestFn.java:421) [clojure-1.5.1.jar:na]
>> at
>> backtype.storm.daemon.nimbus$launch_server_BANG_.invoke(nimbus.clj:1152)
>> [storm-core-0.9.3.jar:0.9.3]
>> at backtype.storm.daemon.nimbus$_launch.invoke(nimbus.clj:1184)
>> [storm-core-0.9.3.jar:0.9.3]
>> at backtype.storm.daemon.nimbus$_main.invoke(nimbus.clj:1206)
>> [storm-core-0.9.3.jar:0.9.3]
>> at clojure.lang.AFn.applyToHelper(AFn.java:159) [clojure-1.5.1.jar:na]
>> at clojure.lang.AFn.applyTo(AFn.java:151) [clojure-1.5.1.jar:na]
>> at backtype.storm.daemon.nimbus.main(Unknown Source)
>> [storm-core-0.9.3.jar:0.9.3]
>>
>>
>> How should I package my scheduler and where exactly should I put it?
>> At the moment what I have done is package my CameraScheduler.class in
>> CameraScheduler.jar and add it to my $STORM_HOME/lib. But apparently
>> this is wrong... Any help?
>>
>
>

Reply via email to