Occasional crashes at runtime in release. Here's the stack processed with ndk-stack:
********** Crash dump: **********
#00 0x000000000003b154 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes.so
hermes::vm::JSObject::findProperty(hermes::vm::Handle<hermes::vm::JSObject>, hermes::vm::Runtime*, hermes::vm::SymbolID, hermes::vm::PropertyFlags, hermes::vm::NamedPropertyDescriptor&)
/home/circleci/project/include/hermes/VM\JSObject.h:1773:14
hermes::vm::JSObject::getNamedDescriptor(hermes::vm::Handle<hermes::vm::JSObject>, hermes::vm::Runtime*, hermes::vm::SymbolID, hermes::vm::PropertyFlags, hermes::vm::NamedPropertyDescriptor&)
/home/circleci/project/lib/VM\JSObject.cpp:901:0
Crash dump is completed
Un-symbolicated crash:
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 0 >>> com.myapp <<<
backtrace:
#00 pc 000000000003b154 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes.so
#01 pc 000000000003b695 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes.so
#02 pc 000000000001be79 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes.so (facebook::hermes::HermesRuntimeImpl::getLength(hermes::vm::Handle<hermes::vm::ArrayImpl>)+32)
#03 pc 000000000001be25 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes.so (facebook::hermes::HermesRuntimeImpl::size(facebook::jsi::Array const&)+44)
#04 pc 000000000001c127 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes.so (facebook::hermes::HermesRuntimeImpl::setValueAtIndexImpl(facebook::jsi::Array&, unsigned int, facebook::jsi::Value const&)+50)
#05 pc 000000000001bb7b /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes.so (facebook::hermes::HermesRuntimeImpl::getPropertyNames(facebook::jsi::Object const&)+222)
#06 pc 0000000000023905 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so
#07 pc 00000000000372bb /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+450)
#08 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#09 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#10 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#11 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#12 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#13 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#14 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#15 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#16 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#17 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#18 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#19 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#20 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#21 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#22 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#23 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#24 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#25 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#26 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#27 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#28 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#29 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#30 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#31 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#32 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#33 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#34 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#35 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#36 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#37 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#38 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#39 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#40 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#41 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#42 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#43 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#44 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#45 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#46 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#47 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#48 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#49 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#50 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#51 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#52 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#53 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#54 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#55 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#56 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#57 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#58 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#59 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#60 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#61 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#62 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#63 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#64 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#65 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#66 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#67 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#68 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#69 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#70 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#71 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#72 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#73 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#74 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#75 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#76 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#77 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#78 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#79 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#80 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#81 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#82 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#83 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#84 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#85 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#86 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#87 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#88 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#89 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#90 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#91 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#92 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#93 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#94 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#95 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#96 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#97 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#98 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#99 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#100 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#101 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#102 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#103 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#104 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#105 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#106 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#107 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#108 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#109 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#110 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#111 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#112 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#113 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#114 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#115 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#116 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#117 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#118 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#119 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#120 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#121 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#122 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#123 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#124 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#125 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#126 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#127 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#128 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#129 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#130 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#131 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#132 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#133 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#134 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#135 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#136 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#137 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#138 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#139 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#140 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#141 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#142 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#143 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#144 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#145 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#146 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#147 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#148 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#149 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#150 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#151 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#152 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#153 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#154 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#155 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#156 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#157 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#158 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#159 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#160 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#161 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#162 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#163 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#164 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#165 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#166 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#167 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#168 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#169 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#170 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#171 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#172 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#173 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#174 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#175 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#176 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#177 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#178 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#179 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#180 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#181 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#182 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#183 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#184 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#185 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#186 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#187 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#188 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#189 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#190 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#191 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#192 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#193 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#194 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#195 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#196 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#197 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#198 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#199 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#200 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#201 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#202 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#203 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#204 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#205 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#206 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#207 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#208 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#209 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#210 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#211 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#212 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#213 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#214 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#215 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#216 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#217 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#218 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#219 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#220 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#221 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#222 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#223 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#224 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#225 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#226 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#227 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#228 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#229 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#230 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#231 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#232 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#233 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#234 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#235 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#236 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#237 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#238 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#239 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#240 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#241 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#242 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-executor-release.so (facebook::jsi::dynamicFromValue(facebook::jsi::Runtime&, facebook::jsi::Value const&)+638)
#243 pc 0000000000037377 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes-exe
gradle clean and confirmed this bug does not occur with JSCHermes version: 0.5.2-rc1
React Native version (if any): 0.63.2
Android version (if any): This stack is from Android 9. Seen on Android 9 and 4.4.4, likely will happen on others over time
Platform (most likely one of arm64-v8a, armeabi-v7a, x86, x86_64): armeabi-v7a
Hermes should never crash in a release deployment
Looking at the stack trace, it doesn't seem obviously related to proxy. Looks like a call coming from native, pretty deep recursion.
@tmikov Yeah I have no clue what could be triggering these native crashes. They only seem to happen in the release build on end user devices. This is really driving us crazy, we're trying to launch our first beta test to get retention numbers but we have 10-30% of sessions crashing out in native code deep inside Hermes and RN with no real way to debug them. =(
@tmikov Possibly related to execute only memory on API 29? https://github.com/facebook/react-native/issues/29517
I downgraded target version to API 28 to try to avoid this but these crashes are happening on API 28 so I'm not sure if that helped or if it could be the root cause.
Hmm I'm wondering if I deobfuscated this against the right library. I used armeabi-v7a when it might have been an arm64 device. Here's what I get running ndk-stack against the arm64-v8a symbols:
********** Crash dump: **********
#00 0x000000000003b154 /data/app/com.myapp-f1Qt4zzD5t3YptWQ07Jqpg==/lib/arm/libhermes.so
facebook::jsi::JSError::setValue(facebook::jsi::Runtime&, facebook::jsi::Value&&)
/home/circleci/project/API/jsi/jsi/jsi.cpp:413:11
Crash dump is completed
Thanks for the deobfuscated stacks! This is definitely a help in diagnosing this.
This issue is one crash of four which all share a common property: facebook::jsi::dynamicFromValue is being used in a deeply recursive way before Hermes is being called. This function is used in the React Native bridge to convert a javascript JSI value to a folly::dynamic value. The source code is here https://github.com/facebook/react-native/blob/master/ReactCommon/jsi/jsi/JSIDynamic.cpp#L20-L57.
Thus, I believe all are actually the same root cause. dynamicFromValue is recursive, and uses stack proportional to the maximum recursion of JS arrays or objects crossing the bridge. I believe this app is generating such objects, passing them over the bridge, then Hermes reaches the end of the native stack, and crashes. Hermes has only limited mechanisms today to detect native stack overflow, so this results in a native crash instead of a RangeError.
We have plans to detect this better, but I don't have a timeline for this.
That said, dynamicFromValue is used by Hermes and JSC. So I would expect JSC to be exhibiting as many failures as Hermes is, but they would likely be manifesting as a RangeError or other JS exception, not as a native crash. If you have JSC crashes alongside Hermes ones, you might be able to use that to figure out where the failure is originating.
@mhorowitz just a random thought: would if the JSI value contained proxies?
@tmikov our app relies heavily on mobx-state-tree so an issue with proxy seems likely to affect us.
@tmikov it would be fine.
@AndrewMorsillo your app uses Proxy and it crashes, but unfortunately so far there is no direct evidence that it is Proxy that is causing the crash - there is nothing Proxy-related in the stack traces :-( Why "unfortunately"? Well, even though we obviously don't want Proxy to be crashing, given that something is crashing, we would at least know where to look.
Our best working theory so far is that this is a stack overflow caused by a deeply nested object, but then why wouldn't it happen with JSC? And why wouldn't it happen in DEV mode (or does it?)?
It's possible that this is happening with JSC, we switched to hermes because we were seeing lots of random crashes on JSC. The crash does not happen in dev mode as far as I can tell, I've never been able to trigger it, but then again I've never been able to reproduce reliably it in release mode either.
What we do know from user feedback is that it's seemingly random. There's no clear trigger for the crash. It's possible (but not certain) that it happens in longer sessions. We do have some large MST models that we persist to Firestore with react-native-firebase but if those were the culprit I'd expect them to crash on every save instead of randomly.
We send client logs periodically to a logging service via a firebase cloud function, perhaps there's a situation where we log a particularly large object or have gathered a large volume of logs which then triggers this error -- something I'll investigate. We also use a ton of animations but I'm not sure if that could be related, they're all pretty simple on their own and they're all useNativeDriver: true even if there's a lot of them.
Thanks for the clues and assistance debugging this, it's really been driving us crazy, hopefully we can figure out the root cause and get it patched up. @mhorowitz @tmikov if you can think of anything I should try to trigger this in the app please let me know, I'll try to test it out.
@mhorowitz was looking into it late last night and I believe he made progress. He will post about his findings.
I don't think I learned any more than I already said, except that I now have a standalone (not in an RN app) test case for dynamicFromValue crashing on deeply nested inputs, in both Hermes and JSC. I can put up a gist with the test case source if someone is interested, but I'm not sure how best to run it without our internal tools.
If you want to take a shot at fixing this yourself, the best fix for this is to convert the two functions in https://github.com/facebook/react-native/blob/master/ReactCommon/jsi/jsi/JSIDynamic.cpp to be iterative instead of recursive. This will require a bit more code complexity, but it will no longer depend on the size of the stack to work (the obvious implementations will depend on the heap, instead). I think RN would accept such a PR.
Since this code is built as part of React Native, you'll need to build RN from source if you want to test fixes: https://github.com/facebook/react-native/wiki/Building-from-source
Another pointer, which might make it easier for you to diagnose this locally. I believe, but can't be sure with the data we have, that the complex object in question is passed to the bridge from JS in this code https://github.com/facebook/react-native/blob/e27d656ef370958c864b052123ec05579ac9fc01/Libraries/BatchedBridge/MessageQueue.js#L308, as the argument params. The JS above, in a __DEV__ release, validates that params contains only serializable data. You could modify this validation to measure the maximum depth, and using a debugger or logging, try to understand where the deepest objects come from. This might give you some insight into what's generating very complex objects across the bridge.
@mhorowitz I'd appreciate seeing the test case even if I don't have the tooling to run it.
I'm already building from source to work around a different problem so that's no issue. I don't think I've written any C(++) code since school many years ago so that part may be a bit of a challenge but doable.
I've never been able to trigger this issue in development so I'm not sure if debugging that location would help or not but it's worth a shot. Thanks for pointing me there.
My initial guess is that we debounce sending our logs to the server and there may be a case where some very large or complex data structure gets logged accidentally. It goes from js->native to be sent to a firebase cloud function. I'm going to release a build with our logging and analytics disabled to see if the crash goes away as that's the quickest way I can think of to test that theory.
I'm not very familiar with the internal architecture of RN so I don't fully understand when/why some complex piece of data might be sent across the bridge. We do a _lot_ of animation, all with useNativeDriver: true, there are probably between 3-10 animated values running at any given time. @mhorowitz this is kind of a shot in the dark but do you know of any reason why having many animations looping or running at once with useNativeDriver might trigger this sort of behavior? Being animation heavy is one of the only things I can think of that sets our app apart from most "normal" RN apps.
https://gist.github.com/mhorowitz/cac80626a7e7e79fb3c6dc530d8a4326
It's written using the same test framework as used by https://github.com/facebook/react-native/blob/master/ReactCommon/jsi/jsi/test/testlib.cpp
As for animations, I'm not familiar with how they are implemented, so I don't have any insight there.
Most helpful comment
I don't think I learned any more than I already said, except that I now have a standalone (not in an RN app) test case for dynamicFromValue crashing on deeply nested inputs, in both Hermes and JSC. I can put up a gist with the test case source if someone is interested, but I'm not sure how best to run it without our internal tools.
If you want to take a shot at fixing this yourself, the best fix for this is to convert the two functions in https://github.com/facebook/react-native/blob/master/ReactCommon/jsi/jsi/JSIDynamic.cpp to be iterative instead of recursive. This will require a bit more code complexity, but it will no longer depend on the size of the stack to work (the obvious implementations will depend on the heap, instead). I think RN would accept such a PR.
Since this code is built as part of React Native, you'll need to build RN from source if you want to test fixes: https://github.com/facebook/react-native/wiki/Building-from-source