[
https://issues.apache.org/jira/browse/IGNITE-1884?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15010622#comment-15010622
]
ASF GitHub Bot commented on IGNITE-1884:
----------------------------------------
Github user ptupitsyn closed the pull request at:
https://github.com/apache/ignite/pull/215
> .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)