Hello,

1. I think the issue with Incompatible class error is due to backward
incompatible changes between slf4j-api 1.7.25 and ignite-log4j. I agree for
most cases we need not worry on the dependency compatibility but incase of
incompatible changes excluding dependencies helps.

2. The link I shared is to check if ignite instance is already present in
same jvm. When you are starting one node in terminal and another using
storm project then they are in separate jvm. You can try the same by
starting 2 nodes in terminal. The key point to note here is you are
using TcpDiscoveryMulticastIpFinder
in the xml config and you have also provided 127.0.0.1:47500..47530 as your
ip address and port range so each node as you start will discover each
other and create a cluster.

3. This issue can be solved using following options:

a) One way to solve the issue you described would be to use a IgniteClient
in your storm project and read the data from the remote node (prod or local
running in port assume 47500), process the data and stream the data using
StormStreamer in another node (assume for example node running in 47501).

b) You can also choose to use TcpDiscoveryVmIpFinder and create you own
cluster and read data from one node and write to another.

HTH

Regards,
Saikat



On Wed, Sep 5, 2018 at 1:09 AM, monstereo <mehmetozangu...@gmail.com> wrote:

> I have many questions
>
> *1)* This issue really annoying me, here is the error:(occurs in storm
> project)
> *java.lang.IncompatibleClassChangeError: Implementing class     at
> java.lang.ClassLoader.defineClass1(Native Method) ~[?:1.8.0_181]        at
> java.lang.ClassLoader.defineClass(ClassLoader.java:763) ~[?:1.8.0_181]  at
> java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
> ~[?:1.8.0_181]  at
> java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
> ~[?:1.8.0_181]
> at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
> ~[?:1.8.0_181]
> at java.net.URLClassLoader$1.run(URLClassLoader.java:368) ~[?:1.8.0_181]
>       at
> java.net.URLClassLoader$1.run(URLClassLoader.java:362) ~[?:1.8.0_181]   at
> java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_181]
> at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
> ~[?:1.8.0_181]
> at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[?:1.8.0_181]
>        at
> sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
> ~[?:1.8.0_181]
> at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:1.8.0_181]
>        at
> java.lang.Class.forName0(Native Method) ~[?:1.8.0_181]  at
> java.lang.Class.forName(Class.java:264) ~[?:1.8.0_181]  at
> org.apache.ignite.internal.util.IgniteUtils.addLog4jNoOpLogger(
> IgniteUtils.java:8366)
> ~[ignite-core-2.5.0.jar:2.5.0]  at
> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:930)
> ~[ignite-core-2.5.0.jar:2.5.0]  at
> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:854)
> ~[ignite-core-2.5.0.jar:2.5.0]  at
> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:724)
> ~[ignite-core-2.5.0.jar:2.5.0]  at
> org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:693)
> ~[ignite-core-2.5.0.jar:2.5.0]*
>
> now, i have solved but i need proper solution, because i know that when i
> convert to jar, it gives me error(always it gives).
> Here is the my solution: according to the this line
> "org.apache.ignite.internal.util.IgniteUtils.addLog4jNoOpLogger",
> I have realized that ignite-storm uses storm and log4j as a dependency
> Then I excluded these dependency from pom.xml, and it works.
> However, this is really stupid issue, do i have to care all dependency all
> the time?
>
> *2)* Link that you provided says that  // if an ignite instance is already
> started in same JVM then use it.
> can you explain this. Right now i am working on local mode.
> I already open one ignite node on the terminal.
> then I open one ignite node inside the storm project
> Now, I am opening 2 different JVM or one. (Same question for production
> mode, think of it terminal and storm project are inside different machines)
>
> *3)* As far as I know, StormStreamer<String, Integer> igniteStormStreamer =
> new StormSt.. () this, it creates new ignite node.
> For my project, I have one ignite node on a machine,
> Then to get cache data from that machine, I will open another ignite node
> in
> storm (actually in spout inside the open method)
> Then I process the datas via spouts bolts etc..
> Then I will write the last processed data to new ignite cache (uses
> StormStreamer)
> However, because of I have created ignite node once, when I use
> stormstreamer, i am getting IgniteAlreadyStarted exceptions
> How can i solved that? (Note that: I have to be sure that one ignite node
> will be created in the storm)
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>

Reply via email to