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

Andrey Gura edited comment on IGNITE-1007 at 7/23/15 10:05 AM:
---------------------------------------------------------------

Now all threads that request some data structure will blocked on countDownLatch 
until {{DataStructuresProcessor}} will not finish initialization.

Fix merged into ignite-sprint-6.


was (Author: agura):
Fix merged into ignite-sprint-6.

> Race in data structures processor
> ---------------------------------
>
>                 Key: IGNITE-1007
>                 URL: https://issues.apache.org/jira/browse/IGNITE-1007
>             Project: Ignite
>          Issue Type: Bug
>          Components: data structures
>            Reporter: Yakov Zhdanov
>            Assignee: Andrey Gura
>            Priority: Critical
>             Fix For: sprint-6
>
>
> Please take a look at stack trace
> {noformat}
> org.apache.ignite.marshaller.optimized.OptimizedObjectInputStream.readObjectOverride(OptimizedObjectInputStream.java:252)
>         at java.io.ObjectInputStream.readObject(ObjectInputStream.java:364)
>         at
> org.apache.ignite.marshaller.optimized.OptimizedMarshaller.unmarshal(OptimizedMarshaller.java:236)
>         ... 15 more
> Caused by: java.lang.reflect.InvocationTargetException
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>         at java.lang.reflect.Method.invoke(Method.java:606)
>         at
> org.apache.ignite.marshaller.optimized.OptimizedObjectInputStream.readExternalizable(OptimizedObjectInputStream.java:455)
>         ... 35 more
> Caused by: java.lang.NullPointerException
>         at
> org.apache.ignite.internal.processors.datastructures.DataStructuresProcessor.getCollection(DataStructuresProcessor.java:804)
>         at
> org.apache.ignite.internal.processors.datastructures.DataStructuresProcessor.set(DataStructuresProcessor.java:1124)
>         at
> org.apache.ignite.internal.processors.datastructures.GridCacheSetProxy.readResolve(GridCacheSetProxy.java:548)
>         ... 40 more
> {noformat}
> I suspect that {{utilityCache}} has not been initialized yet. We need to 
> protect such places with latch or igniteFuture which should be released 
> (completed) on the last line of "onKernalStart" and on the 1st of 
> "onKernalStop" for safety.
> Source reference: 
> http://apache-ignite-users.70518.x6.nabble.com/Failed-to-deserialize-in-a-cluster-with-a-distributed-singleton-job-td462.html



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

Reply via email to