[ 
https://issues.apache.org/jira/browse/IGNITE-4377?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pavel Tupitsyn updated IGNITE-4377:
-----------------------------------
    Description: 
When invoking a computation which returns an object from *client* node, "Cannot 
find schema for object with compact footer" exception occurs some times (only 
during first invocation)

{code}
class org.apache.ignite.binary.BinaryObjectException: Cannot find schema for 
object with compact footer [typeId=2005649068, schemaId=-1206298342]

        at 
org.apache.ignite.internal.binary.BinaryReaderExImpl.getOrCreateSchema(BinaryReaderExImpl.java:1738)
        at 
org.apache.ignite.internal.binary.BinaryReaderExImpl.<init>(BinaryReaderExImpl.java:279)
        at 
org.apache.ignite.internal.binary.BinaryReaderExImpl.<init>(BinaryReaderExImpl.java:178)
        at 
org.apache.ignite.internal.binary.BinaryReaderExImpl.<init>(BinaryReaderExImpl.java:157)
        at 
org.apache.ignite.internal.binary.GridBinaryMarshaller.deserialize(GridBinaryMarshaller.java:298)
        at 
org.apache.ignite.internal.binary.BinaryMarshaller.unmarshal0(BinaryMarshaller.java:100)
        at 
org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:82)
        at 
org.apache.ignite.internal.util.IgniteUtils.unmarshal(IgniteUtils.java:9751)
        at 
org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:808)
        at 
org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:996)
        at 
org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1221)
        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:1145)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
{code}

Reproducer:
{code}
package org.apache.ignite;

import org.apache.ignite.platform.PlatformComputeBinarizable;
import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;

public class ClientModeCompactFooterTest extends GridCommonAbstractTest {
    public ClientModeCompactFooterTest() {
        super(false);
    }

    public void test() throws Exception {
        for (int i =0; i < 100; i++) {
            startGrid("server", 
"modules\\platforms\\dotnet\\Apache.Ignite.Core.Tests\\Config\\Compute\\compute-grid1.xml");
            Ignite client = startGrid("client", 
"modules\\platforms\\dotnet\\Apache.Ignite.Core.Tests\\Config\\Compute\\compute-grid3.xml");

            PlatformComputeBinarizable res = 
client.compute().execute("org.apache.ignite.platform.PlatformComputeEchoTask", 
12);
            assertEquals(1, res.field);

            stopAllGrids();
        }
    }
}
{code}

  was:
When invoking a computation which returns an object from *client* node, "Cannot 
find schema for object with compact footer" exception occurs some times (only 
during first invocation)

{code}
class org.apache.ignite.binary.BinaryObjectException: Cannot find schema for 
object with compact footer [typeId=2005649068, schemaId=-1206298342]

        at 
org.apache.ignite.internal.binary.BinaryReaderExImpl.getOrCreateSchema(BinaryReaderExImpl.java:1738)
        at 
org.apache.ignite.internal.binary.BinaryReaderExImpl.<init>(BinaryReaderExImpl.java:279)
        at 
org.apache.ignite.internal.binary.BinaryReaderExImpl.<init>(BinaryReaderExImpl.java:178)
        at 
org.apache.ignite.internal.binary.BinaryReaderExImpl.<init>(BinaryReaderExImpl.java:157)
        at 
org.apache.ignite.internal.binary.GridBinaryMarshaller.deserialize(GridBinaryMarshaller.java:298)
        at 
org.apache.ignite.internal.binary.BinaryMarshaller.unmarshal0(BinaryMarshaller.java:100)
        at 
org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:82)
        at 
org.apache.ignite.internal.util.IgniteUtils.unmarshal(IgniteUtils.java:9751)
        at 
org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:808)
        at 
org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:996)
        at 
org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1221)
        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:1145)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
{code}

Reproducer:
{code}
package org.apache.ignite;

import org.apache.ignite.platform.PlatformComputeBinarizable;
import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;

public class ClientModeCompactFooterTest extends GridCommonAbstractTest {
    public ClientModeCompactFooterTest() {
        super(false);
    }

    public void test() throws Exception {
        for (int i =0; i < 100; i++) {
            startGrid("server", 
"modules\\platforms\\dotnet\\Apache.Ignite.Core.Tests\\Config\\Compute\\compute-grid1.xml");
            Ignite client = startGrid("client", 
"modules\\platforms\\dotnet\\Apache.Ignite.Core.Tests\\Config\\Compute\\compute-grid3.xml");

            IgniteCompute compute = 
client.compute(client.cluster().forServers());

            PlatformComputeBinarizable res = 
compute.execute("org.apache.ignite.platform.PlatformComputeEchoTask", 12);
            System.out.println(res.field);

            assertEquals(1, res.field);

            stopAllGrids();
        }
    }
}
{code}


> Cannot find schema for object with compact footer
> -------------------------------------------------
>
>                 Key: IGNITE-4377
>                 URL: https://issues.apache.org/jira/browse/IGNITE-4377
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache, compute
>    Affects Versions: 1.7, 1.8
>            Reporter: Pavel Tupitsyn
>            Priority: Critical
>             Fix For: 1.9
>
>
> When invoking a computation which returns an object from *client* node, 
> "Cannot find schema for object with compact footer" exception occurs some 
> times (only during first invocation)
> {code}
> class org.apache.ignite.binary.BinaryObjectException: Cannot find schema for 
> object with compact footer [typeId=2005649068, schemaId=-1206298342]
>       at 
> org.apache.ignite.internal.binary.BinaryReaderExImpl.getOrCreateSchema(BinaryReaderExImpl.java:1738)
>       at 
> org.apache.ignite.internal.binary.BinaryReaderExImpl.<init>(BinaryReaderExImpl.java:279)
>       at 
> org.apache.ignite.internal.binary.BinaryReaderExImpl.<init>(BinaryReaderExImpl.java:178)
>       at 
> org.apache.ignite.internal.binary.BinaryReaderExImpl.<init>(BinaryReaderExImpl.java:157)
>       at 
> org.apache.ignite.internal.binary.GridBinaryMarshaller.deserialize(GridBinaryMarshaller.java:298)
>       at 
> org.apache.ignite.internal.binary.BinaryMarshaller.unmarshal0(BinaryMarshaller.java:100)
>       at 
> org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:82)
>       at 
> org.apache.ignite.internal.util.IgniteUtils.unmarshal(IgniteUtils.java:9751)
>       at 
> org.apache.ignite.internal.processors.task.GridTaskWorker.onResponse(GridTaskWorker.java:808)
>       at 
> org.apache.ignite.internal.processors.task.GridTaskProcessor.processJobExecuteResponse(GridTaskProcessor.java:996)
>       at 
> org.apache.ignite.internal.processors.task.GridTaskProcessor$JobMessageListener.onMessage(GridTaskProcessor.java:1221)
>       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:1145)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>       at java.lang.Thread.run(Thread.java:745)
> {code}
> Reproducer:
> {code}
> package org.apache.ignite;
> import org.apache.ignite.platform.PlatformComputeBinarizable;
> import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
> public class ClientModeCompactFooterTest extends GridCommonAbstractTest {
>     public ClientModeCompactFooterTest() {
>         super(false);
>     }
>     public void test() throws Exception {
>         for (int i =0; i < 100; i++) {
>             startGrid("server", 
> "modules\\platforms\\dotnet\\Apache.Ignite.Core.Tests\\Config\\Compute\\compute-grid1.xml");
>             Ignite client = startGrid("client", 
> "modules\\platforms\\dotnet\\Apache.Ignite.Core.Tests\\Config\\Compute\\compute-grid3.xml");
>             PlatformComputeBinarizable res = 
> client.compute().execute("org.apache.ignite.platform.PlatformComputeEchoTask",
>  12);
>             assertEquals(1, res.field);
>             stopAllGrids();
>         }
>     }
> }
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to