[jira] [Updated] (IGNITE-1823) Peer class loading can produce ClassCastException with DeploymentMode.SHARED (default)
[ https://issues.apache.org/jira/browse/IGNITE-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vladimir Ozerov updated IGNITE-1823: Fix Version/s: (was: 2.3) > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default) > -- > > Key: IGNITE-1823 > URL: https://issues.apache.org/jira/browse/IGNITE-1823 > Project: Ignite > Issue Type: Bug > Components: general >Affects Versions: ignite-1.4, 1.5.0.final >Reporter: Artem Shutak > Labels: community > Attachments: client-run-1.log, client-run-2.log, server.log > > > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default). > Steps to reproduce (tested with 1.4 and 1.5-SNAPSHOT). > - Build Ignite under java 7. > - Run ignite.sh with default configuration and enabled peer class loading > under Java 8 > - Run Test class under java8 > - Run Test class under java8 again. On second run you will get > ClassCastException. > Looks like the issue is Ignite use different classloaders for first and > second run of Test (Task class deployed and undeployed each time). > Workarounds: > - Use another DeploymentMode. For example in this case Ignite works fine with > CONTINUOUS deployment mode. > - Don't use peer class loading and add jars with custom tasks to classpath of > server nodes. > Exception: > {noformat} > [19:56:03,013][SEVERE][ignite-#18%sys-null%][GridTaskWorker] Failed to obtain > remote job result policy for result from ComputeTask.result(..) method (will > fail the whole task): GridJobResultImpl [job=C2 [], sib=GridJobSiblingImpl > [sesId=37a6da9b051-7d576228-e0e4-492c-a325-35ce4fc40ea0, > jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, > nodeId=cadb35ba-9bc8-4f05-b9ce-03344883743f, isJobDone=false], > jobCtx=GridJobContextImpl > [jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, timeoutObj=null, > attrs={}], node=TcpDiscoveryNode [id=cadb35ba-9bc8-4f05-b9ce-03344883743f, > addrs=[0:0:0:0:0:0:0:1%lo, 127.0.0.1, 192.168.1.159], > sockAddrs=[/192.168.1.159:47500, /0:0:0:0:0:0:0:1%lo:47500, /127.0.0.1:47500, > /192.168.1.159:47500], discPort=47500, order=1, intOrder=1, > lastExchangeTime=1446224162137, loc=false, ver=1.5.0#20151029-sha1:91059ba8, > isClient=false], ex=class o.a.i.IgniteException: mypackage.Task cannot be > cast to mypackage.Task, hasRes=true, isCancelled=false, isOccupied=true] > class org.apache.ignite.IgniteException: Remote job threw user exception > (override or implement ComputeTask.result(..) method if you would like to > have automatic failover for this exception). > at > org.apache.ignite.compute.ComputeTaskAdapter.result(ComputeTaskAdapter.java:101) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:903) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:896) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6403) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:896) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:792) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:995) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1219) > at > org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811) > at > org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106) > at > org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774) > 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) > Caused by: class org.apache.ignite.IgniteException: mypackage.Task cannot be > cast to mypackage.Task > at > org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1792) > at > org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:509) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6371) > at > org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:503) > at > org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:456) > at > org.apache.ignite.internal.util.worker.GridWorker.run(GridWo
[jira] [Updated] (IGNITE-1823) Peer class loading can produce ClassCastException with DeploymentMode.SHARED (default)
[ https://issues.apache.org/jira/browse/IGNITE-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vladimir Ozerov updated IGNITE-1823: Fix Version/s: (was: 2.1) 2.2 > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default) > -- > > Key: IGNITE-1823 > URL: https://issues.apache.org/jira/browse/IGNITE-1823 > Project: Ignite > Issue Type: Bug > Components: general >Affects Versions: ignite-1.4, 1.5.0.final >Reporter: Artem Shutak > Labels: community > Fix For: 2.2 > > Attachments: client-run-1.log, client-run-2.log, server.log > > > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default). > Steps to reproduce (tested with 1.4 and 1.5-SNAPSHOT). > - Build Ignite under java 7. > - Run ignite.sh with default configuration and enabled peer class loading > under Java 8 > - Run Test class under java8 > - Run Test class under java8 again. On second run you will get > ClassCastException. > Looks like the issue is Ignite use different classloaders for first and > second run of Test (Task class deployed and undeployed each time). > Workarounds: > - Use another DeploymentMode. For example in this case Ignite works fine with > CONTINUOUS deployment mode. > - Don't use peer class loading and add jars with custom tasks to classpath of > server nodes. > Exception: > {noformat} > [19:56:03,013][SEVERE][ignite-#18%sys-null%][GridTaskWorker] Failed to obtain > remote job result policy for result from ComputeTask.result(..) method (will > fail the whole task): GridJobResultImpl [job=C2 [], sib=GridJobSiblingImpl > [sesId=37a6da9b051-7d576228-e0e4-492c-a325-35ce4fc40ea0, > jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, > nodeId=cadb35ba-9bc8-4f05-b9ce-03344883743f, isJobDone=false], > jobCtx=GridJobContextImpl > [jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, timeoutObj=null, > attrs={}], node=TcpDiscoveryNode [id=cadb35ba-9bc8-4f05-b9ce-03344883743f, > addrs=[0:0:0:0:0:0:0:1%lo, 127.0.0.1, 192.168.1.159], > sockAddrs=[/192.168.1.159:47500, /0:0:0:0:0:0:0:1%lo:47500, /127.0.0.1:47500, > /192.168.1.159:47500], discPort=47500, order=1, intOrder=1, > lastExchangeTime=1446224162137, loc=false, ver=1.5.0#20151029-sha1:91059ba8, > isClient=false], ex=class o.a.i.IgniteException: mypackage.Task cannot be > cast to mypackage.Task, hasRes=true, isCancelled=false, isOccupied=true] > class org.apache.ignite.IgniteException: Remote job threw user exception > (override or implement ComputeTask.result(..) method if you would like to > have automatic failover for this exception). > at > org.apache.ignite.compute.ComputeTaskAdapter.result(ComputeTaskAdapter.java:101) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:903) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:896) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6403) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:896) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:792) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:995) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1219) > at > org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811) > at > org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106) > at > org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774) > 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) > Caused by: class org.apache.ignite.IgniteException: mypackage.Task cannot be > cast to mypackage.Task > at > org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1792) > at > org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:509) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6371) > at > org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:503) > at > org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:456) > at > org.apac
[jira] [Updated] (IGNITE-1823) Peer class loading can produce ClassCastException with DeploymentMode.SHARED (default)
[ https://issues.apache.org/jira/browse/IGNITE-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vladimir Ozerov updated IGNITE-1823: Component/s: (was: 1.4) general > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default) > -- > > Key: IGNITE-1823 > URL: https://issues.apache.org/jira/browse/IGNITE-1823 > Project: Ignite > Issue Type: Bug > Components: general >Affects Versions: ignite-1.4, 1.5.0.final >Reporter: Artem Shutak > Labels: community > Fix For: 2.1 > > Attachments: client-run-1.log, client-run-2.log, server.log > > > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default). > Steps to reproduce (tested with 1.4 and 1.5-SNAPSHOT). > - Build Ignite under java 7. > - Run ignite.sh with default configuration and enabled peer class loading > under Java 8 > - Run Test class under java8 > - Run Test class under java8 again. On second run you will get > ClassCastException. > Looks like the issue is Ignite use different classloaders for first and > second run of Test (Task class deployed and undeployed each time). > Workarounds: > - Use another DeploymentMode. For example in this case Ignite works fine with > CONTINUOUS deployment mode. > - Don't use peer class loading and add jars with custom tasks to classpath of > server nodes. > Exception: > {noformat} > [19:56:03,013][SEVERE][ignite-#18%sys-null%][GridTaskWorker] Failed to obtain > remote job result policy for result from ComputeTask.result(..) method (will > fail the whole task): GridJobResultImpl [job=C2 [], sib=GridJobSiblingImpl > [sesId=37a6da9b051-7d576228-e0e4-492c-a325-35ce4fc40ea0, > jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, > nodeId=cadb35ba-9bc8-4f05-b9ce-03344883743f, isJobDone=false], > jobCtx=GridJobContextImpl > [jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, timeoutObj=null, > attrs={}], node=TcpDiscoveryNode [id=cadb35ba-9bc8-4f05-b9ce-03344883743f, > addrs=[0:0:0:0:0:0:0:1%lo, 127.0.0.1, 192.168.1.159], > sockAddrs=[/192.168.1.159:47500, /0:0:0:0:0:0:0:1%lo:47500, /127.0.0.1:47500, > /192.168.1.159:47500], discPort=47500, order=1, intOrder=1, > lastExchangeTime=1446224162137, loc=false, ver=1.5.0#20151029-sha1:91059ba8, > isClient=false], ex=class o.a.i.IgniteException: mypackage.Task cannot be > cast to mypackage.Task, hasRes=true, isCancelled=false, isOccupied=true] > class org.apache.ignite.IgniteException: Remote job threw user exception > (override or implement ComputeTask.result(..) method if you would like to > have automatic failover for this exception). > at > org.apache.ignite.compute.ComputeTaskAdapter.result(ComputeTaskAdapter.java:101) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:903) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:896) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6403) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:896) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:792) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:995) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1219) > at > org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811) > at > org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106) > at > org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774) > 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) > Caused by: class org.apache.ignite.IgniteException: mypackage.Task cannot be > cast to mypackage.Task > at > org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1792) > at > org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:509) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6371) > at > org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:503) > at > org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:456) > at > org.apac
[jira] [Updated] (IGNITE-1823) Peer class loading can produce ClassCastException with DeploymentMode.SHARED (default)
[ https://issues.apache.org/jira/browse/IGNITE-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vladimir Ozerov updated IGNITE-1823: Fix Version/s: (was: 2.0) 2.1 > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default) > -- > > Key: IGNITE-1823 > URL: https://issues.apache.org/jira/browse/IGNITE-1823 > Project: Ignite > Issue Type: Bug > Components: 1.4 >Affects Versions: ignite-1.4, 1.5.0.final >Reporter: Artem Shutak > Labels: community > Fix For: 2.1 > > Attachments: client-run-1.log, client-run-2.log, server.log > > > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default). > Steps to reproduce (tested with 1.4 and 1.5-SNAPSHOT). > - Build Ignite under java 7. > - Run ignite.sh with default configuration and enabled peer class loading > under Java 8 > - Run Test class under java8 > - Run Test class under java8 again. On second run you will get > ClassCastException. > Looks like the issue is Ignite use different classloaders for first and > second run of Test (Task class deployed and undeployed each time). > Workarounds: > - Use another DeploymentMode. For example in this case Ignite works fine with > CONTINUOUS deployment mode. > - Don't use peer class loading and add jars with custom tasks to classpath of > server nodes. > Exception: > {noformat} > [19:56:03,013][SEVERE][ignite-#18%sys-null%][GridTaskWorker] Failed to obtain > remote job result policy for result from ComputeTask.result(..) method (will > fail the whole task): GridJobResultImpl [job=C2 [], sib=GridJobSiblingImpl > [sesId=37a6da9b051-7d576228-e0e4-492c-a325-35ce4fc40ea0, > jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, > nodeId=cadb35ba-9bc8-4f05-b9ce-03344883743f, isJobDone=false], > jobCtx=GridJobContextImpl > [jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, timeoutObj=null, > attrs={}], node=TcpDiscoveryNode [id=cadb35ba-9bc8-4f05-b9ce-03344883743f, > addrs=[0:0:0:0:0:0:0:1%lo, 127.0.0.1, 192.168.1.159], > sockAddrs=[/192.168.1.159:47500, /0:0:0:0:0:0:0:1%lo:47500, /127.0.0.1:47500, > /192.168.1.159:47500], discPort=47500, order=1, intOrder=1, > lastExchangeTime=1446224162137, loc=false, ver=1.5.0#20151029-sha1:91059ba8, > isClient=false], ex=class o.a.i.IgniteException: mypackage.Task cannot be > cast to mypackage.Task, hasRes=true, isCancelled=false, isOccupied=true] > class org.apache.ignite.IgniteException: Remote job threw user exception > (override or implement ComputeTask.result(..) method if you would like to > have automatic failover for this exception). > at > org.apache.ignite.compute.ComputeTaskAdapter.result(ComputeTaskAdapter.java:101) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:903) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:896) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6403) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:896) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:792) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:995) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1219) > at > org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811) > at > org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106) > at > org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774) > 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) > Caused by: class org.apache.ignite.IgniteException: mypackage.Task cannot be > cast to mypackage.Task > at > org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1792) > at > org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:509) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6371) > at > org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:503) > at > org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:456) > at > org.apache.i
[jira] [Updated] (IGNITE-1823) Peer class loading can produce ClassCastException with DeploymentMode.SHARED (default)
[ https://issues.apache.org/jira/browse/IGNITE-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vladimir Ozerov updated IGNITE-1823: Fix Version/s: (was: 1.8) 2.0 > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default) > -- > > Key: IGNITE-1823 > URL: https://issues.apache.org/jira/browse/IGNITE-1823 > Project: Ignite > Issue Type: Bug > Components: 1.4 >Affects Versions: ignite-1.4, 1.5.0.final >Reporter: Artem Shutak > Labels: community > Fix For: 2.0 > > Attachments: client-run-1.log, client-run-2.log, server.log > > > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default). > Steps to reproduce (tested with 1.4 and 1.5-SNAPSHOT). > - Build Ignite under java 7. > - Run ignite.sh with default configuration and enabled peer class loading > under Java 8 > - Run Test class under java8 > - Run Test class under java8 again. On second run you will get > ClassCastException. > Looks like the issue is Ignite use different classloaders for first and > second run of Test (Task class deployed and undeployed each time). > Workarounds: > - Use another DeploymentMode. For example in this case Ignite works fine with > CONTINUOUS deployment mode. > - Don't use peer class loading and add jars with custom tasks to classpath of > server nodes. > Exception: > {noformat} > [19:56:03,013][SEVERE][ignite-#18%sys-null%][GridTaskWorker] Failed to obtain > remote job result policy for result from ComputeTask.result(..) method (will > fail the whole task): GridJobResultImpl [job=C2 [], sib=GridJobSiblingImpl > [sesId=37a6da9b051-7d576228-e0e4-492c-a325-35ce4fc40ea0, > jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, > nodeId=cadb35ba-9bc8-4f05-b9ce-03344883743f, isJobDone=false], > jobCtx=GridJobContextImpl > [jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, timeoutObj=null, > attrs={}], node=TcpDiscoveryNode [id=cadb35ba-9bc8-4f05-b9ce-03344883743f, > addrs=[0:0:0:0:0:0:0:1%lo, 127.0.0.1, 192.168.1.159], > sockAddrs=[/192.168.1.159:47500, /0:0:0:0:0:0:0:1%lo:47500, /127.0.0.1:47500, > /192.168.1.159:47500], discPort=47500, order=1, intOrder=1, > lastExchangeTime=1446224162137, loc=false, ver=1.5.0#20151029-sha1:91059ba8, > isClient=false], ex=class o.a.i.IgniteException: mypackage.Task cannot be > cast to mypackage.Task, hasRes=true, isCancelled=false, isOccupied=true] > class org.apache.ignite.IgniteException: Remote job threw user exception > (override or implement ComputeTask.result(..) method if you would like to > have automatic failover for this exception). > at > org.apache.ignite.compute.ComputeTaskAdapter.result(ComputeTaskAdapter.java:101) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:903) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:896) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6403) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:896) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:792) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:995) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1219) > at > org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811) > at > org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106) > at > org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774) > 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) > Caused by: class org.apache.ignite.IgniteException: mypackage.Task cannot be > cast to mypackage.Task > at > org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1792) > at > org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:509) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6371) > at > org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:503) > at > org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:456) > at > org.apache.i
[jira] [Updated] (IGNITE-1823) Peer class loading can produce ClassCastException with DeploymentMode.SHARED (default)
[ https://issues.apache.org/jira/browse/IGNITE-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Denis Magda updated IGNITE-1823: Assignee: (was: Denis Magda) > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default) > -- > > Key: IGNITE-1823 > URL: https://issues.apache.org/jira/browse/IGNITE-1823 > Project: Ignite > Issue Type: Bug > Components: 1.4 >Affects Versions: ignite-1.4, 1.5.0.final >Reporter: Artem Shutak >Priority: Blocker > Labels: community > Fix For: 1.8 > > Attachments: client-run-1.log, client-run-2.log, server.log > > > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default). > Steps to reproduce (tested with 1.4 and 1.5-SNAPSHOT). > - Build Ignite under java 7. > - Run ignite.sh with default configuration and enabled peer class loading > under Java 8 > - Run Test class under java8 > - Run Test class under java8 again. On second run you will get > ClassCastException. > Looks like the issue is Ignite use different classloaders for first and > second run of Test (Task class deployed and undeployed each time). > Workarounds: > - Use another DeploymentMode. For example in this case Ignite works fine with > CONTINUOUS deployment mode. > - Don't use peer class loading and add jars with custom tasks to classpath of > server nodes. > Exception: > {noformat} > [19:56:03,013][SEVERE][ignite-#18%sys-null%][GridTaskWorker] Failed to obtain > remote job result policy for result from ComputeTask.result(..) method (will > fail the whole task): GridJobResultImpl [job=C2 [], sib=GridJobSiblingImpl > [sesId=37a6da9b051-7d576228-e0e4-492c-a325-35ce4fc40ea0, > jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, > nodeId=cadb35ba-9bc8-4f05-b9ce-03344883743f, isJobDone=false], > jobCtx=GridJobContextImpl > [jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, timeoutObj=null, > attrs={}], node=TcpDiscoveryNode [id=cadb35ba-9bc8-4f05-b9ce-03344883743f, > addrs=[0:0:0:0:0:0:0:1%lo, 127.0.0.1, 192.168.1.159], > sockAddrs=[/192.168.1.159:47500, /0:0:0:0:0:0:0:1%lo:47500, /127.0.0.1:47500, > /192.168.1.159:47500], discPort=47500, order=1, intOrder=1, > lastExchangeTime=1446224162137, loc=false, ver=1.5.0#20151029-sha1:91059ba8, > isClient=false], ex=class o.a.i.IgniteException: mypackage.Task cannot be > cast to mypackage.Task, hasRes=true, isCancelled=false, isOccupied=true] > class org.apache.ignite.IgniteException: Remote job threw user exception > (override or implement ComputeTask.result(..) method if you would like to > have automatic failover for this exception). > at > org.apache.ignite.compute.ComputeTaskAdapter.result(ComputeTaskAdapter.java:101) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:903) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:896) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6403) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:896) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:792) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:995) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1219) > at > org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811) > at > org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106) > at > org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774) > 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) > Caused by: class org.apache.ignite.IgniteException: mypackage.Task cannot be > cast to mypackage.Task > at > org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1792) > at > org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:509) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6371) > at > org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:503) > at > org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:456) > at > org.apach
[jira] [Updated] (IGNITE-1823) Peer class loading can produce ClassCastException with DeploymentMode.SHARED (default)
[ https://issues.apache.org/jira/browse/IGNITE-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Denis Magda updated IGNITE-1823: Priority: Major (was: Blocker) > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default) > -- > > Key: IGNITE-1823 > URL: https://issues.apache.org/jira/browse/IGNITE-1823 > Project: Ignite > Issue Type: Bug > Components: 1.4 >Affects Versions: ignite-1.4, 1.5.0.final >Reporter: Artem Shutak > Labels: community > Fix For: 1.8 > > Attachments: client-run-1.log, client-run-2.log, server.log > > > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default). > Steps to reproduce (tested with 1.4 and 1.5-SNAPSHOT). > - Build Ignite under java 7. > - Run ignite.sh with default configuration and enabled peer class loading > under Java 8 > - Run Test class under java8 > - Run Test class under java8 again. On second run you will get > ClassCastException. > Looks like the issue is Ignite use different classloaders for first and > second run of Test (Task class deployed and undeployed each time). > Workarounds: > - Use another DeploymentMode. For example in this case Ignite works fine with > CONTINUOUS deployment mode. > - Don't use peer class loading and add jars with custom tasks to classpath of > server nodes. > Exception: > {noformat} > [19:56:03,013][SEVERE][ignite-#18%sys-null%][GridTaskWorker] Failed to obtain > remote job result policy for result from ComputeTask.result(..) method (will > fail the whole task): GridJobResultImpl [job=C2 [], sib=GridJobSiblingImpl > [sesId=37a6da9b051-7d576228-e0e4-492c-a325-35ce4fc40ea0, > jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, > nodeId=cadb35ba-9bc8-4f05-b9ce-03344883743f, isJobDone=false], > jobCtx=GridJobContextImpl > [jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, timeoutObj=null, > attrs={}], node=TcpDiscoveryNode [id=cadb35ba-9bc8-4f05-b9ce-03344883743f, > addrs=[0:0:0:0:0:0:0:1%lo, 127.0.0.1, 192.168.1.159], > sockAddrs=[/192.168.1.159:47500, /0:0:0:0:0:0:0:1%lo:47500, /127.0.0.1:47500, > /192.168.1.159:47500], discPort=47500, order=1, intOrder=1, > lastExchangeTime=1446224162137, loc=false, ver=1.5.0#20151029-sha1:91059ba8, > isClient=false], ex=class o.a.i.IgniteException: mypackage.Task cannot be > cast to mypackage.Task, hasRes=true, isCancelled=false, isOccupied=true] > class org.apache.ignite.IgniteException: Remote job threw user exception > (override or implement ComputeTask.result(..) method if you would like to > have automatic failover for this exception). > at > org.apache.ignite.compute.ComputeTaskAdapter.result(ComputeTaskAdapter.java:101) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:903) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:896) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6403) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:896) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:792) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:995) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1219) > at > org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811) > at > org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106) > at > org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774) > 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) > Caused by: class org.apache.ignite.IgniteException: mypackage.Task cannot be > cast to mypackage.Task > at > org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1792) > at > org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:509) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6371) > at > org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:503) > at > org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:456) > at > org.apache.ignite.internal.util.worker.Gr
[jira] [Updated] (IGNITE-1823) Peer class loading can produce ClassCastException with DeploymentMode.SHARED (default)
[ https://issues.apache.org/jira/browse/IGNITE-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Pavel Tupitsyn updated IGNITE-1823: --- Fix Version/s: (was: 1.7) 1.8 > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default) > -- > > Key: IGNITE-1823 > URL: https://issues.apache.org/jira/browse/IGNITE-1823 > Project: Ignite > Issue Type: Bug > Components: 1.4 >Affects Versions: ignite-1.4, 1.5.0.final >Reporter: Artem Shutak >Assignee: Denis Magda >Priority: Blocker > Labels: community > Fix For: 1.8 > > Attachments: client-run-1.log, client-run-2.log, server.log > > > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default). > Steps to reproduce (tested with 1.4 and 1.5-SNAPSHOT). > - Build Ignite under java 7. > - Run ignite.sh with default configuration and enabled peer class loading > under Java 8 > - Run Test class under java8 > - Run Test class under java8 again. On second run you will get > ClassCastException. > Looks like the issue is Ignite use different classloaders for first and > second run of Test (Task class deployed and undeployed each time). > Workarounds: > - Use another DeploymentMode. For example in this case Ignite works fine with > CONTINUOUS deployment mode. > - Don't use peer class loading and add jars with custom tasks to classpath of > server nodes. > Exception: > {noformat} > [19:56:03,013][SEVERE][ignite-#18%sys-null%][GridTaskWorker] Failed to obtain > remote job result policy for result from ComputeTask.result(..) method (will > fail the whole task): GridJobResultImpl [job=C2 [], sib=GridJobSiblingImpl > [sesId=37a6da9b051-7d576228-e0e4-492c-a325-35ce4fc40ea0, > jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, > nodeId=cadb35ba-9bc8-4f05-b9ce-03344883743f, isJobDone=false], > jobCtx=GridJobContextImpl > [jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, timeoutObj=null, > attrs={}], node=TcpDiscoveryNode [id=cadb35ba-9bc8-4f05-b9ce-03344883743f, > addrs=[0:0:0:0:0:0:0:1%lo, 127.0.0.1, 192.168.1.159], > sockAddrs=[/192.168.1.159:47500, /0:0:0:0:0:0:0:1%lo:47500, /127.0.0.1:47500, > /192.168.1.159:47500], discPort=47500, order=1, intOrder=1, > lastExchangeTime=1446224162137, loc=false, ver=1.5.0#20151029-sha1:91059ba8, > isClient=false], ex=class o.a.i.IgniteException: mypackage.Task cannot be > cast to mypackage.Task, hasRes=true, isCancelled=false, isOccupied=true] > class org.apache.ignite.IgniteException: Remote job threw user exception > (override or implement ComputeTask.result(..) method if you would like to > have automatic failover for this exception). > at > org.apache.ignite.compute.ComputeTaskAdapter.result(ComputeTaskAdapter.java:101) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:903) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:896) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6403) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:896) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:792) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:995) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1219) > at > org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811) > at > org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106) > at > org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774) > 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) > Caused by: class org.apache.ignite.IgniteException: mypackage.Task cannot be > cast to mypackage.Task > at > org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1792) > at > org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:509) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6371) > at > org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:503) > at > org.apache.ignite.internal.processors.job.GridJ
[jira] [Updated] (IGNITE-1823) Peer class loading can produce ClassCastException with DeploymentMode.SHARED (default)
[ https://issues.apache.org/jira/browse/IGNITE-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Denis Magda updated IGNITE-1823: Fix Version/s: (was: 1.6) 1.7 > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default) > -- > > Key: IGNITE-1823 > URL: https://issues.apache.org/jira/browse/IGNITE-1823 > Project: Ignite > Issue Type: Bug > Components: 1.4 >Affects Versions: ignite-1.4, 1.5.0.final >Reporter: Artem Shutak >Assignee: Denis Magda >Priority: Blocker > Labels: community > Fix For: 1.7 > > Attachments: client-run-1.log, client-run-2.log, server.log > > > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default). > Steps to reproduce (tested with 1.4 and 1.5-SNAPSHOT). > - Build Ignite under java 7. > - Run ignite.sh with default configuration and enabled peer class loading > under Java 8 > - Run Test class under java8 > - Run Test class under java8 again. On second run you will get > ClassCastException. > Looks like the issue is Ignite use different classloaders for first and > second run of Test (Task class deployed and undeployed each time). > Workarounds: > - Use another DeploymentMode. For example in this case Ignite works fine with > CONTINUOUS deployment mode. > - Don't use peer class loading and add jars with custom tasks to classpath of > server nodes. > Exception: > {noformat} > [19:56:03,013][SEVERE][ignite-#18%sys-null%][GridTaskWorker] Failed to obtain > remote job result policy for result from ComputeTask.result(..) method (will > fail the whole task): GridJobResultImpl [job=C2 [], sib=GridJobSiblingImpl > [sesId=37a6da9b051-7d576228-e0e4-492c-a325-35ce4fc40ea0, > jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, > nodeId=cadb35ba-9bc8-4f05-b9ce-03344883743f, isJobDone=false], > jobCtx=GridJobContextImpl > [jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, timeoutObj=null, > attrs={}], node=TcpDiscoveryNode [id=cadb35ba-9bc8-4f05-b9ce-03344883743f, > addrs=[0:0:0:0:0:0:0:1%lo, 127.0.0.1, 192.168.1.159], > sockAddrs=[/192.168.1.159:47500, /0:0:0:0:0:0:0:1%lo:47500, /127.0.0.1:47500, > /192.168.1.159:47500], discPort=47500, order=1, intOrder=1, > lastExchangeTime=1446224162137, loc=false, ver=1.5.0#20151029-sha1:91059ba8, > isClient=false], ex=class o.a.i.IgniteException: mypackage.Task cannot be > cast to mypackage.Task, hasRes=true, isCancelled=false, isOccupied=true] > class org.apache.ignite.IgniteException: Remote job threw user exception > (override or implement ComputeTask.result(..) method if you would like to > have automatic failover for this exception). > at > org.apache.ignite.compute.ComputeTaskAdapter.result(ComputeTaskAdapter.java:101) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:903) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:896) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6403) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:896) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:792) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:995) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1219) > at > org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811) > at > org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106) > at > org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774) > 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) > Caused by: class org.apache.ignite.IgniteException: mypackage.Task cannot be > cast to mypackage.Task > at > org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1792) > at > org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:509) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6371) > at > org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:503) > at > org.apache.ignite.internal.processors.job.GridJobWork
[jira] [Updated] (IGNITE-1823) Peer class loading can produce ClassCastException with DeploymentMode.SHARED (default)
[ https://issues.apache.org/jira/browse/IGNITE-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Denis Magda updated IGNITE-1823: Priority: Blocker (was: Critical) > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default) > -- > > Key: IGNITE-1823 > URL: https://issues.apache.org/jira/browse/IGNITE-1823 > Project: Ignite > Issue Type: Bug > Components: 1.4 >Affects Versions: ignite-1.4, 1.5.0.final >Reporter: Artem Shutak >Assignee: Denis Magda >Priority: Blocker > Labels: community > Fix For: 1.6 > > Attachments: client-run-1.log, client-run-2.log, server.log > > > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default). > Steps to reproduce (tested with 1.4 and 1.5-SNAPSHOT). > - Build Ignite under java 7. > - Run ignite.sh with default configuration and enabled peer class loading > under Java 8 > - Run Test class under java8 > - Run Test class under java8 again. On second run you will get > ClassCastException. > Looks like the issue is Ignite use different classloaders for first and > second run of Test (Task class deployed and undeployed each time). > Workarounds: > - Use another DeploymentMode. For example in this case Ignite works fine with > CONTINUOUS deployment mode. > - Don't use peer class loading and add jars with custom tasks to classpath of > server nodes. > Exception: > {noformat} > [19:56:03,013][SEVERE][ignite-#18%sys-null%][GridTaskWorker] Failed to obtain > remote job result policy for result from ComputeTask.result(..) method (will > fail the whole task): GridJobResultImpl [job=C2 [], sib=GridJobSiblingImpl > [sesId=37a6da9b051-7d576228-e0e4-492c-a325-35ce4fc40ea0, > jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, > nodeId=cadb35ba-9bc8-4f05-b9ce-03344883743f, isJobDone=false], > jobCtx=GridJobContextImpl > [jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, timeoutObj=null, > attrs={}], node=TcpDiscoveryNode [id=cadb35ba-9bc8-4f05-b9ce-03344883743f, > addrs=[0:0:0:0:0:0:0:1%lo, 127.0.0.1, 192.168.1.159], > sockAddrs=[/192.168.1.159:47500, /0:0:0:0:0:0:0:1%lo:47500, /127.0.0.1:47500, > /192.168.1.159:47500], discPort=47500, order=1, intOrder=1, > lastExchangeTime=1446224162137, loc=false, ver=1.5.0#20151029-sha1:91059ba8, > isClient=false], ex=class o.a.i.IgniteException: mypackage.Task cannot be > cast to mypackage.Task, hasRes=true, isCancelled=false, isOccupied=true] > class org.apache.ignite.IgniteException: Remote job threw user exception > (override or implement ComputeTask.result(..) method if you would like to > have automatic failover for this exception). > at > org.apache.ignite.compute.ComputeTaskAdapter.result(ComputeTaskAdapter.java:101) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:903) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:896) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6403) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:896) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:792) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:995) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1219) > at > org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811) > at > org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106) > at > org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774) > 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) > Caused by: class org.apache.ignite.IgniteException: mypackage.Task cannot be > cast to mypackage.Task > at > org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1792) > at > org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:509) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6371) > at > org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:503) > at > org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWor
[jira] [Updated] (IGNITE-1823) Peer class loading can produce ClassCastException with DeploymentMode.SHARED (default)
[ https://issues.apache.org/jira/browse/IGNITE-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Denis Magda updated IGNITE-1823: Fix Version/s: 1.6 > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default) > -- > > Key: IGNITE-1823 > URL: https://issues.apache.org/jira/browse/IGNITE-1823 > Project: Ignite > Issue Type: Bug > Components: 1.4 >Affects Versions: ignite-1.4, 1.5.0.final >Reporter: Artem Shutak >Priority: Critical > Labels: community > Fix For: 1.6 > > Attachments: client-run-1.log, client-run-2.log, server.log > > > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default). > Steps to reproduce (tested with 1.4 and 1.5-SNAPSHOT). > - Build Ignite under java 7. > - Run ignite.sh with default configuration and enabled peer class loading > under Java 8 > - Run Test class under java8 > - Run Test class under java8 again. On second run you will get > ClassCastException. > Looks like the issue is Ignite use different classloaders for first and > second run of Test (Task class deployed and undeployed each time). > Workarounds: > - Use another DeploymentMode. For example in this case Ignite works fine with > CONTINUOUS deployment mode. > - Don't use peer class loading and add jars with custom tasks to classpath of > server nodes. > Exception: > {noformat} > [19:56:03,013][SEVERE][ignite-#18%sys-null%][GridTaskWorker] Failed to obtain > remote job result policy for result from ComputeTask.result(..) method (will > fail the whole task): GridJobResultImpl [job=C2 [], sib=GridJobSiblingImpl > [sesId=37a6da9b051-7d576228-e0e4-492c-a325-35ce4fc40ea0, > jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, > nodeId=cadb35ba-9bc8-4f05-b9ce-03344883743f, isJobDone=false], > jobCtx=GridJobContextImpl > [jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, timeoutObj=null, > attrs={}], node=TcpDiscoveryNode [id=cadb35ba-9bc8-4f05-b9ce-03344883743f, > addrs=[0:0:0:0:0:0:0:1%lo, 127.0.0.1, 192.168.1.159], > sockAddrs=[/192.168.1.159:47500, /0:0:0:0:0:0:0:1%lo:47500, /127.0.0.1:47500, > /192.168.1.159:47500], discPort=47500, order=1, intOrder=1, > lastExchangeTime=1446224162137, loc=false, ver=1.5.0#20151029-sha1:91059ba8, > isClient=false], ex=class o.a.i.IgniteException: mypackage.Task cannot be > cast to mypackage.Task, hasRes=true, isCancelled=false, isOccupied=true] > class org.apache.ignite.IgniteException: Remote job threw user exception > (override or implement ComputeTask.result(..) method if you would like to > have automatic failover for this exception). > at > org.apache.ignite.compute.ComputeTaskAdapter.result(ComputeTaskAdapter.java:101) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:903) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:896) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6403) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:896) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:792) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:995) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1219) > at > org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811) > at > org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106) > at > org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774) > 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) > Caused by: class org.apache.ignite.IgniteException: mypackage.Task cannot be > cast to mypackage.Task > at > org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1792) > at > org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:509) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6371) > at > org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:503) > at > org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:456) > at > org.apache.ignite.inte
[jira] [Updated] (IGNITE-1823) Peer class loading can produce ClassCastException with DeploymentMode.SHARED (default)
[ https://issues.apache.org/jira/browse/IGNITE-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Denis Magda updated IGNITE-1823: Labels: community (was: ) > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default) > -- > > Key: IGNITE-1823 > URL: https://issues.apache.org/jira/browse/IGNITE-1823 > Project: Ignite > Issue Type: Bug > Components: 1.4 >Affects Versions: ignite-1.4, 1.5.0.final >Reporter: Artem Shutak >Priority: Critical > Labels: community > Fix For: 1.6 > > Attachments: client-run-1.log, client-run-2.log, server.log > > > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default). > Steps to reproduce (tested with 1.4 and 1.5-SNAPSHOT). > - Build Ignite under java 7. > - Run ignite.sh with default configuration and enabled peer class loading > under Java 8 > - Run Test class under java8 > - Run Test class under java8 again. On second run you will get > ClassCastException. > Looks like the issue is Ignite use different classloaders for first and > second run of Test (Task class deployed and undeployed each time). > Workarounds: > - Use another DeploymentMode. For example in this case Ignite works fine with > CONTINUOUS deployment mode. > - Don't use peer class loading and add jars with custom tasks to classpath of > server nodes. > Exception: > {noformat} > [19:56:03,013][SEVERE][ignite-#18%sys-null%][GridTaskWorker] Failed to obtain > remote job result policy for result from ComputeTask.result(..) method (will > fail the whole task): GridJobResultImpl [job=C2 [], sib=GridJobSiblingImpl > [sesId=37a6da9b051-7d576228-e0e4-492c-a325-35ce4fc40ea0, > jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, > nodeId=cadb35ba-9bc8-4f05-b9ce-03344883743f, isJobDone=false], > jobCtx=GridJobContextImpl > [jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, timeoutObj=null, > attrs={}], node=TcpDiscoveryNode [id=cadb35ba-9bc8-4f05-b9ce-03344883743f, > addrs=[0:0:0:0:0:0:0:1%lo, 127.0.0.1, 192.168.1.159], > sockAddrs=[/192.168.1.159:47500, /0:0:0:0:0:0:0:1%lo:47500, /127.0.0.1:47500, > /192.168.1.159:47500], discPort=47500, order=1, intOrder=1, > lastExchangeTime=1446224162137, loc=false, ver=1.5.0#20151029-sha1:91059ba8, > isClient=false], ex=class o.a.i.IgniteException: mypackage.Task cannot be > cast to mypackage.Task, hasRes=true, isCancelled=false, isOccupied=true] > class org.apache.ignite.IgniteException: Remote job threw user exception > (override or implement ComputeTask.result(..) method if you would like to > have automatic failover for this exception). > at > org.apache.ignite.compute.ComputeTaskAdapter.result(ComputeTaskAdapter.java:101) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:903) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:896) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6403) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:896) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:792) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:995) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1219) > at > org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811) > at > org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106) > at > org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774) > 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) > Caused by: class org.apache.ignite.IgniteException: mypackage.Task cannot be > cast to mypackage.Task > at > org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1792) > at > org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:509) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6371) > at > org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:503) > at > org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:456) > at > org.apache.ign
[jira] [Updated] (IGNITE-1823) Peer class loading can produce ClassCastException with DeploymentMode.SHARED (default)
[ https://issues.apache.org/jira/browse/IGNITE-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Denis Magda updated IGNITE-1823: Priority: Critical (was: Major) > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default) > -- > > Key: IGNITE-1823 > URL: https://issues.apache.org/jira/browse/IGNITE-1823 > Project: Ignite > Issue Type: Bug > Components: 1.4 >Affects Versions: ignite-1.4, 1.5.0.final >Reporter: Artem Shutak >Priority: Critical > Labels: community > Fix For: 1.6 > > Attachments: client-run-1.log, client-run-2.log, server.log > > > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default). > Steps to reproduce (tested with 1.4 and 1.5-SNAPSHOT). > - Build Ignite under java 7. > - Run ignite.sh with default configuration and enabled peer class loading > under Java 8 > - Run Test class under java8 > - Run Test class under java8 again. On second run you will get > ClassCastException. > Looks like the issue is Ignite use different classloaders for first and > second run of Test (Task class deployed and undeployed each time). > Workarounds: > - Use another DeploymentMode. For example in this case Ignite works fine with > CONTINUOUS deployment mode. > - Don't use peer class loading and add jars with custom tasks to classpath of > server nodes. > Exception: > {noformat} > [19:56:03,013][SEVERE][ignite-#18%sys-null%][GridTaskWorker] Failed to obtain > remote job result policy for result from ComputeTask.result(..) method (will > fail the whole task): GridJobResultImpl [job=C2 [], sib=GridJobSiblingImpl > [sesId=37a6da9b051-7d576228-e0e4-492c-a325-35ce4fc40ea0, > jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, > nodeId=cadb35ba-9bc8-4f05-b9ce-03344883743f, isJobDone=false], > jobCtx=GridJobContextImpl > [jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, timeoutObj=null, > attrs={}], node=TcpDiscoveryNode [id=cadb35ba-9bc8-4f05-b9ce-03344883743f, > addrs=[0:0:0:0:0:0:0:1%lo, 127.0.0.1, 192.168.1.159], > sockAddrs=[/192.168.1.159:47500, /0:0:0:0:0:0:0:1%lo:47500, /127.0.0.1:47500, > /192.168.1.159:47500], discPort=47500, order=1, intOrder=1, > lastExchangeTime=1446224162137, loc=false, ver=1.5.0#20151029-sha1:91059ba8, > isClient=false], ex=class o.a.i.IgniteException: mypackage.Task cannot be > cast to mypackage.Task, hasRes=true, isCancelled=false, isOccupied=true] > class org.apache.ignite.IgniteException: Remote job threw user exception > (override or implement ComputeTask.result(..) method if you would like to > have automatic failover for this exception). > at > org.apache.ignite.compute.ComputeTaskAdapter.result(ComputeTaskAdapter.java:101) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:903) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:896) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6403) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:896) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:792) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:995) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1219) > at > org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811) > at > org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106) > at > org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774) > 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) > Caused by: class org.apache.ignite.IgniteException: mypackage.Task cannot be > cast to mypackage.Task > at > org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1792) > at > org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:509) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6371) > at > org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:503) > at > org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:456) > at > org.apac
[jira] [Updated] (IGNITE-1823) Peer class loading can produce ClassCastException with DeploymentMode.SHARED (default)
[ https://issues.apache.org/jira/browse/IGNITE-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Konstantin Boudnik updated IGNITE-1823: --- Affects Version/s: 1.5 ignite-1.4 > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default) > -- > > Key: IGNITE-1823 > URL: https://issues.apache.org/jira/browse/IGNITE-1823 > Project: Ignite > Issue Type: Bug > Components: 1.4 >Affects Versions: ignite-1.4, 1.5 >Reporter: Artem Shutak > Attachments: client-run-1.log, client-run-2.log, server.log > > > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default). > Steps to reproduce (tested with 1.4 and 1.5-SNAPSHOT). > - Build Ignite under java 7. > - Run ignite.sh with default configuration and enabled peer class loading > under Java 8 > - Run Test class under java8 > - Run Test class under java8 again. On second run you will get > ClassCastException. > Looks like the issue is Ignite use different classloaders for first and > second run of Test (Task class deployed and undeployed each time). > Workarounds: > - Use another DeploymentMode. For example in this case Ignite works fine with > CONTINUOUS deployment mode. > - Don't use peer class loading and add jars with custom tasks to classpath of > server nodes. > Exception: > {noformat} > [19:56:03,013][SEVERE][ignite-#18%sys-null%][GridTaskWorker] Failed to obtain > remote job result policy for result from ComputeTask.result(..) method (will > fail the whole task): GridJobResultImpl [job=C2 [], sib=GridJobSiblingImpl > [sesId=37a6da9b051-7d576228-e0e4-492c-a325-35ce4fc40ea0, > jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, > nodeId=cadb35ba-9bc8-4f05-b9ce-03344883743f, isJobDone=false], > jobCtx=GridJobContextImpl > [jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, timeoutObj=null, > attrs={}], node=TcpDiscoveryNode [id=cadb35ba-9bc8-4f05-b9ce-03344883743f, > addrs=[0:0:0:0:0:0:0:1%lo, 127.0.0.1, 192.168.1.159], > sockAddrs=[/192.168.1.159:47500, /0:0:0:0:0:0:0:1%lo:47500, /127.0.0.1:47500, > /192.168.1.159:47500], discPort=47500, order=1, intOrder=1, > lastExchangeTime=1446224162137, loc=false, ver=1.5.0#20151029-sha1:91059ba8, > isClient=false], ex=class o.a.i.IgniteException: mypackage.Task cannot be > cast to mypackage.Task, hasRes=true, isCancelled=false, isOccupied=true] > class org.apache.ignite.IgniteException: Remote job threw user exception > (override or implement ComputeTask.result(..) method if you would like to > have automatic failover for this exception). > at > org.apache.ignite.compute.ComputeTaskAdapter.result(ComputeTaskAdapter.java:101) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:903) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:896) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6403) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:896) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:792) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:995) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1219) > at > org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811) > at > org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106) > at > org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774) > 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) > Caused by: class org.apache.ignite.IgniteException: mypackage.Task cannot be > cast to mypackage.Task > at > org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1792) > at > org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:509) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6371) > at > org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:503) > at > org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:456) > at > org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:11
[jira] [Updated] (IGNITE-1823) Peer class loading can produce ClassCastException with DeploymentMode.SHARED (default)
[ https://issues.apache.org/jira/browse/IGNITE-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Artem Shutak updated IGNITE-1823: - Attachment: client-run-1.log client-run-2.log server.log Added logs. > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default) > -- > > Key: IGNITE-1823 > URL: https://issues.apache.org/jira/browse/IGNITE-1823 > Project: Ignite > Issue Type: Bug > Components: 1.4 >Reporter: Artem Shutak > Attachments: client-run-1.log, client-run-2.log, server.log > > > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default). > Steps to reproduce (tested with 1.4 and 1.5-SNAPSHOT). > - Build Ignite under java 7. > - Run ignite.sh with default configuration and enabled peer class loading > under Java 8 > - Run Test class under java8 > - Run Test class under java8 again. On second run you will get > ClassCastException. > Looks like the issue is Ignite use different classloaders for first and > second run of Test (Task class deployed and undeployed each time). > Workarounds: > - Use another DeploymentMode. For example in this case Ignite works fine with > CONTINUOUS deployment mode. > - Don't use peer class loading and add jars with custom tasks to classpath of > server nodes. > Exception: > {noformat} > [19:56:03,013][SEVERE][ignite-#18%sys-null%][GridTaskWorker] Failed to obtain > remote job result policy for result from ComputeTask.result(..) method (will > fail the whole task): GridJobResultImpl [job=C2 [], sib=GridJobSiblingImpl > [sesId=37a6da9b051-7d576228-e0e4-492c-a325-35ce4fc40ea0, > jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, > nodeId=cadb35ba-9bc8-4f05-b9ce-03344883743f, isJobDone=false], > jobCtx=GridJobContextImpl > [jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, timeoutObj=null, > attrs={}], node=TcpDiscoveryNode [id=cadb35ba-9bc8-4f05-b9ce-03344883743f, > addrs=[0:0:0:0:0:0:0:1%lo, 127.0.0.1, 192.168.1.159], > sockAddrs=[/192.168.1.159:47500, /0:0:0:0:0:0:0:1%lo:47500, /127.0.0.1:47500, > /192.168.1.159:47500], discPort=47500, order=1, intOrder=1, > lastExchangeTime=1446224162137, loc=false, ver=1.5.0#20151029-sha1:91059ba8, > isClient=false], ex=class o.a.i.IgniteException: mypackage.Task cannot be > cast to mypackage.Task, hasRes=true, isCancelled=false, isOccupied=true] > class org.apache.ignite.IgniteException: Remote job threw user exception > (override or implement ComputeTask.result(..) method if you would like to > have automatic failover for this exception). > at > org.apache.ignite.compute.ComputeTaskAdapter.result(ComputeTaskAdapter.java:101) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:903) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:896) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6403) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:896) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:792) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:995) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1219) > at > org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811) > at > org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106) > at > org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774) > 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) > Caused by: class org.apache.ignite.IgniteException: mypackage.Task cannot be > cast to mypackage.Task > at > org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1792) > at > org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:509) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6371) > at > org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:503) > at > org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:456) > at > org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) >
[jira] [Updated] (IGNITE-1823) Peer class loading can produce ClassCastException with DeploymentMode.SHARED (default)
[ https://issues.apache.org/jira/browse/IGNITE-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Artem Shutak updated IGNITE-1823: - Description: Peer class loading can produce ClassCastException with DeploymentMode.SHARED (default). Steps to reproduce (tested with 1.4 and 1.5-SNAPSHOT). - Build Ignite under java 7. - Run ignite.sh with default configuration and enabled peer class loading under Java 8 - Run Test class under java8 - Run Test class under java8 again. On second run you will get ClassCastException. Looks like the issue is Ignite use different classloaders for first and second run of Test (Task class deployed and undeployed each time). Workarounds: - Use another DeploymentMode. For example in this case Ignite works fine with CONTINUOUS deployment mode. - Don't use peer class loading and add jars with custom tasks to classpath of server nodes. Exception: {noformat} [19:56:03,013][SEVERE][ignite-#18%sys-null%][GridTaskWorker] Failed to obtain remote job result policy for result from ComputeTask.result(..) method (will fail the whole task): GridJobResultImpl [job=C2 [], sib=GridJobSiblingImpl [sesId=37a6da9b051-7d576228-e0e4-492c-a325-35ce4fc40ea0, jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, nodeId=cadb35ba-9bc8-4f05-b9ce-03344883743f, isJobDone=false], jobCtx=GridJobContextImpl [jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, timeoutObj=null, attrs={}], node=TcpDiscoveryNode [id=cadb35ba-9bc8-4f05-b9ce-03344883743f, addrs=[0:0:0:0:0:0:0:1%lo, 127.0.0.1, 192.168.1.159], sockAddrs=[/192.168.1.159:47500, /0:0:0:0:0:0:0:1%lo:47500, /127.0.0.1:47500, /192.168.1.159:47500], discPort=47500, order=1, intOrder=1, lastExchangeTime=1446224162137, loc=false, ver=1.5.0#20151029-sha1:91059ba8, isClient=false], ex=class o.a.i.IgniteException: mypackage.Task cannot be cast to mypackage.Task, hasRes=true, isCancelled=false, isOccupied=true] class org.apache.ignite.IgniteException: Remote job threw user exception (override or implement ComputeTask.result(..) method if you would like to have automatic failover for this exception). at org.apache.ignite.compute.ComputeTaskAdapter.result(ComputeTaskAdapter.java:101) at org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:903) at org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:896) at org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6403) at org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:896) at org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:792) at org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:995) at org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1219) at org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811) at org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106) at org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774) 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) Caused by: class org.apache.ignite.IgniteException: mypackage.Task cannot be cast to mypackage.Task at org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1792) at org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:509) at org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6371) at org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:503) at org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:456) at org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) at org.apache.ignite.internal.processors.job.GridJobProcessor.processJobExecuteRequest(GridJobProcessor.java:1166) at org.apache.ignite.internal.processors.job.GridJobProcessor$JobExecutionListener.onMessage(GridJobProcessor.java:1776) ... 6 more Caused by: java.lang.ClassCastException: mypackage.Task cannot be cast to mypackage.Task at mypackage.Test.lambda$main$cea8297e$1(Test.java:40) at org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1789) ... 13 more [19:56:03] Ignite node stopped OK [uptime=00:00:00:371] Exception in thread "main" class org.apache.ignite.IgniteExcept
[jira] [Updated] (IGNITE-1823) Peer class loading can produce ClassCastException with DeploymentMode.SHARED (default)
[ https://issues.apache.org/jira/browse/IGNITE-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Artem Shutak updated IGNITE-1823: - Component/s: 1.4 > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default) > -- > > Key: IGNITE-1823 > URL: https://issues.apache.org/jira/browse/IGNITE-1823 > Project: Ignite > Issue Type: Bug > Components: 1.4 >Reporter: Artem Shutak > > Peer class loading can produce ClassCastException with DeploymentMode.SHARED > (default). > Steps to reproduce. > - Build Ignite under java 7. > - Run ignite.sh with default configuration and enabled peer class loading > under Java 8 > - Run Test class under java8 > - Run Test class under java8 again. On second run you will get > ClassCastException. > Looks like the issue is Ignite use different classloaders for first and > second run of Test (Task class deployed and undeployed each time). > Workarounds: > - Use another DeploymentMode. For example in this case Ignite works fine with > CONTINUOUS deployment mode. > - Don't use peer class loading and add jars with custom tasks to classpath of > server nodes. > Exception: > {noformat} > [19:56:03,013][SEVERE][ignite-#18%sys-null%][GridTaskWorker] Failed to obtain > remote job result policy for result from ComputeTask.result(..) method (will > fail the whole task): GridJobResultImpl [job=C2 [], sib=GridJobSiblingImpl > [sesId=37a6da9b051-7d576228-e0e4-492c-a325-35ce4fc40ea0, > jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, > nodeId=cadb35ba-9bc8-4f05-b9ce-03344883743f, isJobDone=false], > jobCtx=GridJobContextImpl > [jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, timeoutObj=null, > attrs={}], node=TcpDiscoveryNode [id=cadb35ba-9bc8-4f05-b9ce-03344883743f, > addrs=[0:0:0:0:0:0:0:1%lo, 127.0.0.1, 192.168.1.159], > sockAddrs=[/192.168.1.159:47500, /0:0:0:0:0:0:0:1%lo:47500, /127.0.0.1:47500, > /192.168.1.159:47500], discPort=47500, order=1, intOrder=1, > lastExchangeTime=1446224162137, loc=false, ver=1.5.0#20151029-sha1:91059ba8, > isClient=false], ex=class o.a.i.IgniteException: mypackage.Task cannot be > cast to mypackage.Task, hasRes=true, isCancelled=false, isOccupied=true] > class org.apache.ignite.IgniteException: Remote job threw user exception > (override or implement ComputeTask.result(..) method if you would like to > have automatic failover for this exception). > at > org.apache.ignite.compute.ComputeTaskAdapter.result(ComputeTaskAdapter.java:101) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:903) > at > org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:896) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6403) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:896) > at > org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:792) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:995) > at > org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1219) > at > org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811) > at > org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106) > at > org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774) > 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) > Caused by: class org.apache.ignite.IgniteException: mypackage.Task cannot be > cast to mypackage.Task > at > org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1792) > at > org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:509) > at > org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6371) > at > org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:503) > at > org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:456) > at > org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) > at > org.apache.ignite.internal.processors.job.GridJobProcessor.processJobExecuteRequest(GridJobProcessor.java:1166) > at > org.apache.ignite.internal.processors.job.GridJobProces
[jira] [Updated] (IGNITE-1823) Peer class loading can produce ClassCastException with DeploymentMode.SHARED (default)
[ https://issues.apache.org/jira/browse/IGNITE-1823?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Artem Shutak updated IGNITE-1823: - Description: Peer class loading can produce ClassCastException with DeploymentMode.SHARED (default). Steps to reproduce. - Build Ignite under java 7. - Run ignite.sh with default configuration and enabled peer class loading under Java 8 - Run Test class under java8 - Run Test class under java8 again. On second run you will get ClassCastException. Looks like the issue is Ignite use different classloaders for first and second run of Test (Task class deployed and undeployed each time). Workarounds: - Use another DeploymentMode. For example in this case Ignite works fine with CONTINUOUS deployment mode. - Don't use peer class loading and add jars with custom tasks to classpath of server nodes. Exception: {noformat} [19:56:03,013][SEVERE][ignite-#18%sys-null%][GridTaskWorker] Failed to obtain remote job result policy for result from ComputeTask.result(..) method (will fail the whole task): GridJobResultImpl [job=C2 [], sib=GridJobSiblingImpl [sesId=37a6da9b051-7d576228-e0e4-492c-a325-35ce4fc40ea0, jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, nodeId=cadb35ba-9bc8-4f05-b9ce-03344883743f, isJobDone=false], jobCtx=GridJobContextImpl [jobId=47a6da9b051-cadb35ba-9bc8-4f05-b9ce-03344883743f, timeoutObj=null, attrs={}], node=TcpDiscoveryNode [id=cadb35ba-9bc8-4f05-b9ce-03344883743f, addrs=[0:0:0:0:0:0:0:1%lo, 127.0.0.1, 192.168.1.159], sockAddrs=[/192.168.1.159:47500, /0:0:0:0:0:0:0:1%lo:47500, /127.0.0.1:47500, /192.168.1.159:47500], discPort=47500, order=1, intOrder=1, lastExchangeTime=1446224162137, loc=false, ver=1.5.0#20151029-sha1:91059ba8, isClient=false], ex=class o.a.i.IgniteException: mypackage.Task cannot be cast to mypackage.Task, hasRes=true, isCancelled=false, isOccupied=true] class org.apache.ignite.IgniteException: Remote job threw user exception (override or implement ComputeTask.result(..) method if you would like to have automatic failover for this exception). at org.apache.ignite.compute.ComputeTaskAdapter.result(ComputeTaskAdapter.java:101) at org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:903) at org.apache.ignite.internal.processors.task.GridTaskWorker$3.apply(GridTaskWorker.java:896) at org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6403) at org.apache.ignite.internal.processors.task.GridTaskWorker.result(GridTaskWorker.java:896) at org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:792) at org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:995) at org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1219) at org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:811) at org.apache.ignite.internal.managers.communication.GridIoManager.access$1500(GridIoManager.java:106) at org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:774) 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) Caused by: class org.apache.ignite.IgniteException: mypackage.Task cannot be cast to mypackage.Task at org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1792) at org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:509) at org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6371) at org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:503) at org.apache.ignite.internal.processors.job.GridJobWorker.body(GridJobWorker.java:456) at org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) at org.apache.ignite.internal.processors.job.GridJobProcessor.processJobExecuteRequest(GridJobProcessor.java:1166) at org.apache.ignite.internal.processors.job.GridJobProcessor$JobExecutionListener.onMessage(GridJobProcessor.java:1776) ... 6 more Caused by: java.lang.ClassCastException: mypackage.Task cannot be cast to mypackage.Task at mypackage.Test.lambda$main$cea8297e$1(Test.java:40) at org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1789) ... 13 more [19:56:03] Ignite node stopped OK [uptime=00:00:00:371] Exception in thread "main" class org.apache.ignite.IgniteException: mypackage.Task cannot be cast