ignite-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Vyacheslav Koptilin (Jira)" <j...@apache.org>
Subject [jira] [Created] (IGNITE-12621) Node leave may cause NullPointerException during IO message processing if security is enabled
Date Tue, 04 Feb 2020 17:26:00 GMT
Vyacheslav Koptilin created IGNITE-12621:
--------------------------------------------

             Summary: Node leave may cause NullPointerException during IO message processing
if security is enabled
                 Key: IGNITE-12621
                 URL: https://issues.apache.org/jira/browse/IGNITE-12621
             Project: Ignite
          Issue Type: Bug
            Reporter: Vyacheslav Koptilin
            Assignee: Vyacheslav Koptilin
             Fix For: 2.9


In case the node will receive IO message from a dead node *after* receiving discovery message
about node fail, {{ctx.discovery().node(uuid)}} will return {{null}}, which in turn will cause
{{NullPointerException}}.
We can fix it by peeking disco cache history for retrieving attributes of the dead node.

See:
{code}
    /** {@inheritDoc} */
    @Override public OperationSecurityContext withContext(UUID nodeId) {
        return withContext(
            secCtxs.computeIfAbsent(nodeId,
                uuid -> nodeSecurityContext(
                    marsh, U.resolveClassLoader(ctx.config()), ctx.discovery().node(uuid)
                )
            )
        );
    }
{code}


{noformat}
Caused by: java.lang.NullPointerException
	at org.apache.ignite.internal.processors.security.SecurityUtils.nodeSecurityContext(SecurityUtils.java:135)
	at org.apache.ignite.internal.processors.security.IgniteSecurityProcessor.lambda$withContext$0(IgniteSecurityProcessor.java:112)
	at java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1660)
	at org.apache.ignite.internal.processors.security.IgniteSecurityProcessor.withContext(IgniteSecurityProcessor.java:111)
{noformat}






--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Mime
View raw message