You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Alexander Belyak (JIRA)" <ji...@apache.org> on 2017/09/20 09:27:00 UTC

[jira] [Created] (IGNITE-6451) AssertionError: null in GridCacheIoManager.onSend on stop

Alexander Belyak created IGNITE-6451:
----------------------------------------

             Summary: AssertionError: null in GridCacheIoManager.onSend on stop
                 Key: IGNITE-6451
                 URL: https://issues.apache.org/jira/browse/IGNITE-6451
             Project: Ignite
          Issue Type: Bug
          Components: general
    Affects Versions: 1.8
            Reporter: Alexander Belyak
            Priority: Minor


If we stop node while sending message (after GridCacheIoManager.onSend test if grid is stopping) - we get AssertionError, for example, from:
{noformat}
java.lang.AssertionError: null
        at org.apache.ignite.internal.processors.cache.GridCacheMessage.marshalCollection(GridCacheMessage.java:481) ~[ignite-core-1.10.3.ea15-SNAPSHOT.jar:2.0.0-SNAPSHOT]
        at org.apache.ignite.internal.processors.cache.query.GridCacheQueryResponse.prepareMarshal(GridCacheQueryResponse.java:134) ~[ignite-core-1.10.3.ea15-SNAPSHOT.jar:2.0.0-SNAPSHOT]
        at org.apache.ignite.internal.processors.cache.GridCacheIoManager.onSend(GridCacheIoManager.java:917) [ignite-core-1.10.3.ea15-SNAPSHOT.jar:2.0.0-SNAPSHOT]
{noformat}
I think we need more reliable approach to stop grid, ideally - we must stop all activity as first step of stopping grid and go to next step only after it. Or we can just add many tests in code like after each 
cctx = ctx.getCacheContext(cacheId) 
do 
if (cctx == null && ...kernalContext().isStopping())
 return false; //<= handle parallel stop here to correctly cancel operation
I think its important because no one can trust db with assertions in logs!



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)