You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ignite.apache.org by rflachlan <rf...@gmail.com> on 2017/02/20 20:56:39 UTC

Task was not deployed error

Hello,
I am new to Ignite, and am stuck on something probably very basic.

I have a compute job that needs to (a) run 1000 tasks; (b) calculate some
statistics; (c) run another set of the same 1000 tasks (same classes, and
methods, different initial parameters). The program correctly runs the first
1000 tasks across my test cluster of three machines (three Ignite servers;
program run as a client on one of the machines). But then, when it tries to
run the second set of tasks, I get errors. For the Ignite server running on
the local machine, it starts running again (correctly). For the servers on
the other two machines, there is a pause for ~6s, then "SEVERE" errors. In
the servers, these are reported as:

[20:35:41,697][SEVERE][pub-#286%null%][GridJobProcessor] Task was not
deployed or was redeployed since task execution
[taskName=com.lachlan.maven.SongABCIg.SongABCIg$1,
taskClsName=com.lachlan.maven.SongABCIg.SongABCIg$1, codeVer=0,
clsLdrId=e925b3d5a51-5aa311c1-4c5d-47a4-a4ff-2a27e008d841,
seqNum=1487622853278, depMode=SHARED, dep=null]
class org.apache.ignite.IgniteDeploymentException: Task was not deployed or
was redeployed since task execution
[taskName=com.lachlan.maven.SongABCIg.SongABCIg$1,
taskClsName=com.lachlan.maven.SongABCIg.SongABCIg$1, codeVer=0,
clsLdrId=e925b3d5a51-5aa311c1-4c5d-47a4-a4ff-2a27e008d841,
seqNum=1487622853278, depMode=SHARED, dep=null]
	at
org.apache.ignite.internal.processors.job.GridJobProcessor.processJobExecuteRequest(GridJobProcessor.java:1159)
	at
org.apache.ignite.internal.processors.job.GridJobProcessor$JobExecutionListener.onMessage(GridJobProcessor.java:1894)
	at
org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1082)
	at
org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:710)
	at
org.apache.ignite.internal.managers.communication.GridIoManager.access$1700(GridIoManager.java:102)
	at
org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:673)
	at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)


These errors then cause a second set of errors in the client:
   [GridTaskWorker] Failed to obtain remote job policy for result from
ComputeTask.result(..) ....




I have implemented my code in a method that schedules the tasks and uses
IgniteCallable to collate results. I then calculate the statistics, and call
the method again. The Ignite code is:

try(Ignite ignite = Ignition.start(cfg)){
   IgniteCluster=ignite.cluster();
   Collection<IgniteCallable&lt;LinkedList&lt;Parameters>>> calls=new
ArrayList<>();
   for (int i=0; i<nsamps; i++){
     calls.add(new IgniteCallable....
...
    );
   Collection&lt;LinkedList&lt;Parameters>> res
=ignite.compute(cluster.forRemotes()).call(calls);


I'm obviously doing something fairly obvious incorrectly here. I'd greatly
appreciate any advice.

Rob




--
View this message in context: http://apache-ignite-users.70518.x6.nabble.com/Task-was-not-deployed-error-tp10743.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.

Re: Task was not deployed error

Posted by Nikolai Tikhonov <nt...@apache.org>.
Hi!

Try to enable peer class loading (by
IgniteConfiguration#setPeerClassLoadingEnabled to *true) *or deploy task
classes on all nodes manually (put jars with classes to all ignite\libs
folder). It would be great if you can share a maven project which reproduce
this case.

On Mon, Feb 20, 2017 at 11:56 PM, rflachlan <rf...@gmail.com> wrote:

> Hello,
> I am new to Ignite, and am stuck on something probably very basic.
>
> I have a compute job that needs to (a) run 1000 tasks; (b) calculate some
> statistics; (c) run another set of the same 1000 tasks (same classes, and
> methods, different initial parameters). The program correctly runs the
> first
> 1000 tasks across my test cluster of three machines (three Ignite servers;
> program run as a client on one of the machines). But then, when it tries to
> run the second set of tasks, I get errors. For the Ignite server running on
> the local machine, it starts running again (correctly). For the servers on
> the other two machines, there is a pause for ~6s, then "SEVERE" errors. In
> the servers, these are reported as:
>
> [20:35:41,697][SEVERE][pub-#286%null%][GridJobProcessor] Task was not
> deployed or was redeployed since task execution
> [taskName=com.lachlan.maven.SongABCIg.SongABCIg$1,
> taskClsName=com.lachlan.maven.SongABCIg.SongABCIg$1, codeVer=0,
> clsLdrId=e925b3d5a51-5aa311c1-4c5d-47a4-a4ff-2a27e008d841,
> seqNum=1487622853278, depMode=SHARED, dep=null]
> class org.apache.ignite.IgniteDeploymentException: Task was not deployed
> or
> was redeployed since task execution
> [taskName=com.lachlan.maven.SongABCIg.SongABCIg$1,
> taskClsName=com.lachlan.maven.SongABCIg.SongABCIg$1, codeVer=0,
> clsLdrId=e925b3d5a51-5aa311c1-4c5d-47a4-a4ff-2a27e008d841,
> seqNum=1487622853278, depMode=SHARED, dep=null]
>         at
> org.apache.ignite.internal.processors.job.GridJobProcessor.
> processJobExecuteRequest(GridJobProcessor.java:1159)
>         at
> org.apache.ignite.internal.processors.job.GridJobProcessor$
> JobExecutionListener.onMessage(GridJobProcessor.java:1894)
>         at
> org.apache.ignite.internal.managers.communication.
> GridIoManager.invokeListener(GridIoManager.java:1082)
>         at
> org.apache.ignite.internal.managers.communication.GridIoManager.
> processRegularMessage0(GridIoManager.java:710)
>         at
> org.apache.ignite.internal.managers.communication.
> GridIoManager.access$1700(GridIoManager.java:102)
>         at
> org.apache.ignite.internal.managers.communication.GridIoManager$5.run(
> GridIoManager.java:673)
>         at
> java.util.concurrent.ThreadPoolExecutor.runWorker(
> ThreadPoolExecutor.java:1142)
>         at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(
> ThreadPoolExecutor.java:617)
>         at java.lang.Thread.run(Thread.java:745)
>
>
> These errors then cause a second set of errors in the client:
>    [GridTaskWorker] Failed to obtain remote job policy for result from
> ComputeTask.result(..) ....
>
>
>
>
> I have implemented my code in a method that schedules the tasks and uses
> IgniteCallable to collate results. I then calculate the statistics, and
> call
> the method again. The Ignite code is:
>
> try(Ignite ignite = Ignition.start(cfg)){
>    IgniteCluster=ignite.cluster();
>    Collection<IgniteCallable&lt;LinkedList&lt;Parameters>>> calls=new
> ArrayList<>();
>    for (int i=0; i<nsamps; i++){
>      calls.add(new IgniteCallable....
> ...
>     );
>    Collection&lt;LinkedList&lt;Parameters>> res
> =ignite.compute(cluster.forRemotes()).call(calls);
>
>
> I'm obviously doing something fairly obvious incorrectly here. I'd greatly
> appreciate any advice.
>
> Rob
>
>
>
>
> --
> View this message in context: http://apache-ignite-users.
> 70518.x6.nabble.com/Task-was-not-deployed-error-tp10743.html
> Sent from the Apache Ignite Users mailing list archive at Nabble.com.
>