Unity crash on Persee - Sigabrt 6

We are getting the follow error causing a SIGABRT6 on our Unity Persee body tracking app.

We are not sure if it’s the Astra SDK doing it. Or Unity. or anything else on the device (Persee running Lollipop 5.1)

Our app lets the user interact and then it plays a video (then loops back to the start again)

I can’t tell if the JNI error is related to the line before (mux)… 13588 appears to be the Unity process, so it would seem the error is definitely coming from Unity, we just don’t know which part.

I haven’t been able to watch the logs at a time of crash to see if those lines (mux) occur at the same time as the crash line after, or if they are unrelated by several seconds and due to another part of the app

thanks for any info
J.

Unity 2017.4.3f1 (64-bit)
Orbbec Astra SDK 2.09 beta3d
Multithreaded Rendering is disabled
Graphics API is set to OpenGLES2

(I’ve also raised this here https://forum.unity.com/threads/gles-error-on-malit760-android-5-1-lollipop-using-videoplayer-and-rendertexture.538805/ with some extra snippets from the log, regarding the OMX part which isnt Astra related, as that log is generated in a Video project without Astra SDK on the persee. The gles_error itself on the video doesn’t cause a crash… I don’t think it’s necessarily to do with that)

I/H264_DEBUG(  158): deinit DONE
I/OMXClient(13588): Using client-side OMX mux.
F/art     (13588): art/runtime/indirect_reference_table.cc:98] JNI ERROR (app bug): local reference table overflow (max=512)
F/art     (13588): art/runtime/indirect_reference_table.cc:98] local reference table dump:
F/art     (13588): art/runtime/indirect_reference_table.cc:98]   Last 10 entries (of 512):
F/art     (13588): art/runtime/indirect_reference_table.cc:98]       511: 0x12f52180 android.view.Surface
F/art     (13588): art/runtime/indirect_reference_table.cc:98]       510: 0x12e8b8c0 android.os.Message
F/art     (13588): art/runtime/indirect_reference_table.cc:98]       509: 0x130cfdd0 float[] (16 elements)
F/art     (13588): art/runtime/indirect_reference_table.cc:98]       508: 0x12f702a0 $Proxy7
F/art     (13588): art/runtime/indirect_reference_table.cc:98]       507: 0x12f70170 java.lang.Class[] (1 elements)
F/art     (13588): art/runtime/indirect_reference_table.cc:98]       506: 0x130cfce0 float[] (16 elements)
F/art     (13588): art/runtime/indirect_reference_table.cc:98]       505: 0x12f70160 $Proxy7
F/art     (13588): art/runtime/indirect_reference_table.cc:98]       504: 0x12f70070 java.lang.Class[] (1 elements)
F/art     (13588): art/runtime/indirect_reference_table.cc:98]       503: 0x12ed9280 android.view.Surface
F/art     (13588): art/runtime/indirect_reference_table.cc:98]       502: 0x12e18580 android.os.Message
F/art     (13588): art/runtime/indirect_reference_table.cc:98]   Summary:
F/art     (13588): art/runtime/indirect_reference_table.cc:98]       128 of java.lang.Class[] (1 elements) (128 unique instances)
F/art     (13588): art/runtime/indirect_reference_table.cc:98]       128 of $Proxy7 (128 unique instances)
F/art     (13588): art/runtime/indirect_reference_table.cc:98]        64 of android.os.Message (5 unique instances)
F/art     (13588): art/runtime/indirect_reference_table.cc:98]       128 of float[] (16 elements) (128 unique instances)
F/art     (13588): art/runtime/indirect_reference_table.cc:98]        64 of android.view.Surface (64 unique instances)
F/art     (13588): art/runtime/indirect_reference_table.cc:98]
F/art     (13588): art/runtime/runtime.cc:290] Runtime aborting...
F/art     (13588): art/runtime/runtime.cc:290] Aborting thread:
F/art     (13588): art/runtime/runtime.cc:290] "Thread-1296" prio=4 tid=23 Runnable
F/art     (13588): art/runtime/runtime.cc:290]   | group="" sCount=0 dsCount=0 obj=0x12f2a0a0 self=0xbaf55c08
F/art     (13588): art/runtime/runtime.cc:290]   | sysTid=13648 nice=10 cgrp=default sched=0/0 handle=0xb9ad0b50
F/art     (13588): art/runtime/runtime.cc:290]   | state=R schedstat=( 5083636453 3692783367 78392 ) utm=236 stm=272 core=2 HZ=100
F/art     (13588): art/runtime/runtime.cc:290]   | stack=0x96a45000-0x96a47000 stackSize=1012KB
F/art     (13588): art/runtime/runtime.cc:290]   | held mutexes= "abort lock" "mutator lock"(shared held)
F/art     (13588): art/runtime/runtime.cc:290]   native: #00 pc 00004e64  /system/lib/libbacktrace_libc++.so (UnwindCurrent::Unwind(unsigned int, ucontext*)+23)
F/art     (13588): art/runtime/runtime.cc:290]   native: #01 pc 00003665  /system/lib/libbacktrace_libc++.so (Backtrace::Unwind(unsigned int, ucontext*)+8)
F/art     (13588): art/runtime/runtime.cc:290]   native: #02 pc 00256ae1  /system/lib/libart.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, int, char const*, art::mirror::ArtMethod*)+84)
F/art     (13588): art/runtime/runtime.cc:290]   native: #03 pc 00238f03  /system/lib/libart.so (art::Thread::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char> >&) const+158)
F/art     (13588): art/runtime/runtime.cc:290]   native: #04 pc 00228325  /system/lib/libart.so (art::AbortState::DumpThread(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, art::Thread*)+32)
F/art     (13588): art/runtime/runtime.cc:290]   native: #05 pc 0022858f  /system/lib/libart.so (art::AbortState::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char> >&)+354)
F/art     (13588): art/runtime/runtime.cc:290]   native: #06 pc 00228787  /system/lib/libart.so (art::Runtime::Abort()+82)
F/art     (13588): art/runtime/runtime.cc:290]   native: #07 pc 000a6915  /system/lib/libart.so (art::LogMessage::~LogMessage()+1360)
F/art     (13588): art/runtime/runtime.cc:290]   native: #08 pc 00160d8f  /system/lib/libart.so (art::IndirectReferenceTable::Add(unsigned int, art::mirror::Object*)+274)
F/art     (13588): art/runtime/runtime.cc:290]   native: #09 pc 0013827b  /system/lib/libart.so (art::gc::Heap::AddFinalizerReference(art::Thread*, art::mirror::Object**)+302)
F/art     (13588): art/runtime/runtime.cc:290]   native: #10 pc 0028bf53  /system/lib/libart.so (artAllocObjectFromCodeRosAlloc+318)
F/art     (13588): art/runtime/runtime.cc:290]   native: #11 pc 000a236b  /system/lib/libart.so (art_quick_alloc_object_rosalloc+10)
F/art     (13588): art/runtime/runtime.cc:290]   native: #12 pc 008e32cf  /data/dalvik-cache/arm/system@framework@boot.oat (Java_android_graphics_Canvas__0003cinit_0003e__+82)
F/art     (13588): art/runtime/runtime.cc:290]   at android.graphics.Canvas.<init>(Canvas.java:133)
F/art     (13588): art/runtime/runtime.cc:290]   at android.view.Surface$CompatibleCanvas.<init>(Surface.java:545)
F/art     (13588): art/runtime/runtime.cc:290]   at android.view.Surface$CompatibleCanvas.<init>(Surface.java:545)
F/art     (13588): art/runtime/runtime.cc:290]   at android.view.Surface.<init>(Surface.java:87)

the SIGABRT 6 log is

E/CRASH   (13588): signal 6 (SIGABRT), code -6 (?), fault addr --------
E/CRASH   (13588): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
E/CRASH   (13588): Build fingerprint: 'Android/rk3288_box/rk3288_box:5.1.1/LMY47V/root12231027:userdebug/test-keys'
E/CRASH   (13588): Revision: '0'
E/CRASH   (13588): pid: 13588, tid: 13648, name: Thread-1296  >>> com.acme.app <<<
E/CRASH   (13588):     r0 00000000  r1 00003550  r2 00000006  r3 00000000
E/CRASH   (13588):     r4 96b40dd8  r5 00000006  r6 0000000b  r7 0000010c
E/CRASH   (13588):     r8 00000000  r9 b78e4928  sl baf55c08  fp 00000001
E/CRASH   (13588):     ip 00003550  sp 96b402e0  lr b6e49db1  pc b6e6f9f0  cpsr 00000000
E/CRASH   (13588):
E/CRASH   (13588): backtrace:
E/CRASH   (13588):      #00  pc 0003c9f0  /system/lib/libc.so (tgkill+12)
E/CRASH   (13588):      #01  pc 00016dad  /system/lib/libc.so (pthread_kill+52)
E/CRASH   (13588):      #02  pc 000179bf  /system/lib/libc.so (raise+10)
E/CRASH   (13588):      #03  pc 00014165  /system/lib/libc.so (__libc_android_abort+36)
E/CRASH   (13588):      #04  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #05  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #06  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #07  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #08  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #09  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #10  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #11  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #12  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #13  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #14  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #15  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #16  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #17  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #18  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #19  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #20  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #21  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #22  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #23  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #24  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #25  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #26  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #27  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #28  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #29  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #30  pc 000124ec  /system/lib/libc.so (abort+4)
E/CRASH   (13588):      #31  pc 000124ec  /system/lib/libc.so (abort+4)
F/mono    (13588): * Assertion: should not be reached at mini.c:2215
W/InputDispatcher(  447): channel '2b636275 com.acme.app/com.orbbec.astra.android.unity3d.AstraUnityPlayerActivity (server)' ~ Consumer closed input channel or an error occurred.  events=0x9
E/InputDispatcher(  447): channel '2b636275 com.acme.app/com.orbbec.astra.android.unity3d.AstraUnityPlayerActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
I/WindowState(  447): WIN DEATH: Window{2b636275 u0 com.acme.app/com.orbbec.astra.android.unity3d.AstraUnityPlayerActivity}
W/InputDispatcher(  447): Attempted to unregister already unregistered input channel '2b636275 com.acme.app/com.orbbec.astra.android.unity3d.AstraUnityPlayerActivity (server)'
W/WindowManager(  447): Force-removing child win Window{20e3da7b u0 SurfaceView} from container Window{2b636275 u0 com.acme.app/com.orbbec.astra.android.unity3d.AstraUnityPlayerActivity}
E/OMXNodeInstance(  158): !!! Observer died. Quickly, do something, ... anything...