[ 
https://issues.apache.org/jira/browse/IGNITE-12049?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17014168#comment-17014168
 ] 

Alexey Scherbakov commented on IGNITE-12049:
--------------------------------------------

[~SomeFire]

I'm getting NPE while adding a custom class to user attributes map:

final Map<String, Object> userAttrs = fail ? null : new 
SslClientNodeAttributesFactory().create();
if (userAttrs != null)
     userAttrs.put("myattr", new MyClass(0, "qqq"));

{noformat}
java.lang.Thread.State: RUNNABLE
          at java.lang.NullPointerException.<init>(NullPointerException.java:60)
          at 
org.apache.ignite.internal.MarshallerContextImpl.registerClassName(MarshallerContextImpl.java:293)
          at 
org.apache.ignite.internal.marshaller.optimized.OptimizedMarshallerUtils.classDescriptor(OptimizedMarshallerUtils.java:204)
          at 
org.apache.ignite.internal.marshaller.optimized.OptimizedObjectOutputStream.writeObject0(OptimizedObjectOutputStream.java:201)
          at 
org.apache.ignite.internal.marshaller.optimized.OptimizedObjectOutputStream.writeObjectOverride(OptimizedObjectOutputStream.java:159)
          at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:344)
          at 
org.apache.ignite.internal.util.IgniteUtils.writeMap(IgniteUtils.java:5390)
          at 
org.apache.ignite.internal.processors.rest.client.message.GridClientAbstractMessage.writeExternal(GridClientAbstractMessage.java:146)
          at 
org.apache.ignite.internal.processors.rest.client.message.GridClientTopologyRequest.writeExternal(GridClientTopologyRequest.java:123)
          at 
org.apache.ignite.internal.marshaller.optimized.OptimizedObjectOutputStream.writeExternalizable(OptimizedObjectOutputStream.java:319)
          at 
org.apache.ignite.internal.marshaller.optimized.OptimizedClassDescriptor.write(OptimizedClassDescriptor.java:838)
          at 
org.apache.ignite.internal.marshaller.optimized.OptimizedObjectOutputStream.writeObject0(OptimizedObjectOutputStream.java:242)
          at 
org.apache.ignite.internal.marshaller.optimized.OptimizedObjectOutputStream.writeObjectOverride(OptimizedObjectOutputStream.java:159)
          at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:344)
          at 
org.apache.ignite.internal.marshaller.optimized.OptimizedMarshaller.marshal0(OptimizedMarshaller.java:202)
          at 
org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.marshal(AbstractNodeNameAwareMarshaller.java:57)
          at 
org.apache.ignite.internal.util.IgniteUtils.marshal(IgniteUtils.java:10405)
          at 
org.apache.ignite.internal.client.marshaller.optimized.GridClientOptimizedMarshaller.marshal(GridClientOptimizedMarshaller.java:88)
          at 
org.apache.ignite.internal.processors.rest.protocols.tcp.GridTcpRestParser.encode(GridTcpRestParser.java:235)
          at 
org.apache.ignite.internal.util.nio.GridNioCodecFilter.onSessionWrite(GridNioCodecFilter.java:94)
          at 
org.apache.ignite.internal.util.nio.GridNioFilterAdapter.proceedSessionWrite(GridNioFilterAdapter.java:121)
          at 
org.apache.ignite.internal.util.nio.GridNioFilterChain$TailFilter.onSessionWrite(GridNioFilterChain.java:269)
          at 
org.apache.ignite.internal.util.nio.GridNioFilterChain.onSessionWrite(GridNioFilterChain.java:192)
          at 
org.apache.ignite.internal.util.nio.GridNioSessionImpl.send(GridNioSessionImpl.java:113)
          at 
org.apache.ignite.internal.client.impl.connection.GridClientNioTcpConnection.makeRequest(GridClientNioTcpConnection.java:480)
          at 
org.apache.ignite.internal.client.impl.connection.GridClientNioTcpConnection.makeRequest(GridClientNioTcpConnection.java:424)
          at 
org.apache.ignite.internal.client.impl.connection.GridClientNioTcpConnection.topology(GridClientNioTcpConnection.java:959)
          at 
org.apache.ignite.internal.client.impl.connection.GridClientConnectionManagerAdapter.init(GridClientConnectionManagerAdapter.java:236)
          at 
org.apache.ignite.internal.client.impl.GridClientImpl.tryInitTopology(GridClientImpl.java:488)
          at 
org.apache.ignite.internal.client.impl.GridClientImpl.<init>(GridClientImpl.java:195)
          at 
org.apache.ignite.internal.client.GridClientFactory.start(GridClientFactory.java:58)
          at 
org.apache.ignite.internal.processors.security.client.SslCertificatesCheckTest.testSslCertificates(SslCertificatesCheckTest.java:218)
          at 
sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:-1)
          at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
          at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
          at java.lang.reflect.Method.invoke(Method.java:498)
          at 
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
          at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
          at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
          at 
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
          at 
org.apache.ignite.testframework.junits.GridAbstractTest$7.run(GridAbstractTest.java:2090)
          at java.lang.Thread.run(Thread.java:748)
{noformat}

Currently I also observe merge conflict with master branch, can you fix ?

> Add user attributes to thin clients
> -----------------------------------
>
>                 Key: IGNITE-12049
>                 URL: https://issues.apache.org/jira/browse/IGNITE-12049
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Ryabov Dmitrii
>            Assignee: Ryabov Dmitrii
>            Priority: Minor
>          Time Spent: 1.5h
>  Remaining Estimate: 0h
>
> Add user attributes to thin clients (like node attributes for server nodes). 
> Make sure that custom authenticators can use these attributes.



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

Reply via email to