You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by "Artem Shutak (JIRA)" <ji...@apache.org> on 2015/03/26 10:47:53 UTC

[jira] [Created] (IGNITE-604) [Test] To create tests which validate exceptions at IpcSharedMemoryUtils.cpp

Artem Shutak created IGNITE-604:
-----------------------------------

             Summary: [Test] To create tests which validate exceptions at IpcSharedMemoryUtils.cpp
                 Key: IGNITE-604
                 URL: https://issues.apache.org/jira/browse/IGNITE-604
             Project: Ignite
          Issue Type: Bug
            Reporter: Artem Shutak
            Assignee: Yakov Zhdanov
             Fix For: sprint-3


Steps to reproduce:
# Create a local class (or take one from extdata) - the remote nodes shouldn't have this class in their classpath - and put some entries with that class to REPLICATED cache with several nodes (you can use class instances as either keys or values).
# Stop local node.
# Increase the user version in META-INF/gridgain.xml.
# Start a local node an put some more entries with a local class. The current entries are not undeployed.

When local class's code changes, things are even more dramatic: when local node with modified class in classpath (and updated user version) joins the grid, remote nodes start sending him entries (preloading) with an old class version, and the marshaller throws exception due to class bytecode checksum mismatch. The fact that user version has changed is completely ignored.

Reproduced with {{GridP2PUserVersionChangeSelfTest.testCacheRedeployVersionChangeContinuousMode()}} in the ticket branch.

See GG-5678. Comment from original issue:
- Consulted with Yakov. The issue seems complex and will take much effort, we've decided to assign it to you for the moment.

Test have to be unmuted on TC after fix



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