Closed arielvalentin closed 5 years ago
Thanks for making this reproducible. Not sure what is going on but shouldn't be too hard to figure out.
Are there any pointers on this topic? I'm facing the same issue with two bolts, defined inside my topology file. It complains that it can't load the topology file itself to instanciate the bolts (but it obviously works fine for the topology).
org.jruby.exceptions.RaiseException: (LoadError) no such file to load -- user_story_topology
at org.jruby.RubyKernel.require(org/jruby/RubyKernel.java:1072)
at RUBY.require(/storm-local/supervisor/stormdist/user_story_topology-16-1434707409/stormjar.jar!/META-INF/jruby.home/lib/ruby/shared/rubygems/core_ext/kernel_require.rb:54)
at RUBY.(root)(<script>:1) at backtype.storm.daemon.executor$fn__6647$fn__6659.invoke(executor.clj:692)
at backtype.storm.util$async_loop$fn__459.invoke(util.clj:461)
I tried to write a set of bolts/spouts with the intent of sharing them in multiple topologies. I chose to package them in gems and then reference them in a different project, however the topology fails to load the components when the target project packages additional directories in the jar. I have created a sample project to help reproduce the error here: https://github.com/arielvalentin/redstorm-examples
E.g. Building the topology without any :include_dir works fine:
``` bash```` $> redstorm jar
bash
Stacktraceorg.jruby.exceptions.RaiseException: (LoadError) no such file to load -- target/gems/gems/jetstream-core-0.0.1/lib/jetstream/core/my_spout at org.jruby.RubyKernel.require(org/jruby/RubyKernel.java:1054) ~[stormjar.jar:na] at RUBY.require(jar:file:/var/lib/storm/supervisor/stormdist/ugg-10-1405466035/stormjar.jar!/META-INF/jruby.home/lib/ruby/shared/rubygems/custom_require.rb:36) ~[na:na] at RUBY.initialize(/home/midpoint/.gem/jruby/1.9.3/gems/redstorm-0.6.6/lib/red_storm/proxy/spout.rb:38) ~[na:na] at backtype.storm.daemon.executor$eval3848$fn3849$fn3864.invoke(executor.clj:519) ~[na:na]