[ https://issues.apache.org/jira/browse/IGNITE-1884?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Vladimir Ozerov closed IGNITE-1884. ----------------------------------- > .Net: JNI local ref can't be accessed from another thread > --------------------------------------------------------- > > Key: IGNITE-1884 > URL: https://issues.apache.org/jira/browse/IGNITE-1884 > Project: Ignite > Issue Type: Bug > Components: interop > Affects Versions: 1.1.4 > Reporter: Pavel Tupitsyn > Assignee: Vladimir Ozerov > Priority: Blocker > Fix For: 1.5 > > > Documentation: > https://docs.oracle.com/javase/7/docs/technotes/guides/jni/spec/design.html > {code} > Local references are only valid in the thread in which they are created. The > native code must not pass local references from one thread to another. > {code} > We have two places where we DO pass local JNI reference to another thread: > * CacheParallelLoadStoreAdapter > * CacheTestStore.LoadCache > And, potentially (due to user code): > * UnmanagedCallbacks.DataStreamerStreamReceiverInvoke > For some reason it has worked for us before. > But renamings in IGNITE-1881 have caused test execution order to change, and > these store tests cause process crash. > To reproduce, BinaryBuilderSelfTest (former PortableApiSelfTest) has to be > executed before store tests. All other tests can be excluded. 100% repro > rate: "FATAL ERROR in native method: Bad global or local ref passed to JNI". -- This message was sent by Atlassian JIRA (v6.3.4#6332)