realm / realm-java

Realm is a mobile database: a replacement for SQLite & ORMs
http://realm.io
Apache License 2.0
11.45k stars 1.75k forks source link

signal 6 (SIGABRT) from Realm - SI_QUEUE & SI_TKILL #7695

Closed mattylase closed 1 year ago

mattylase commented 2 years ago

How frequently does the bug occur?

All the time

Description

Our app crashes on startup, after a period of not crashing.

Overview

We recently performed an upgrade from a very old realm-gradle-plugin of version 4.3.3 to version 10.11.0. The upgrade went fine, and we saw no issues in testing, or in our initial rollout to customers.

Now, after around a month or so in production, we have begun to see random native crashes. None of these are reproducible in test, but happen consistently to customers who have had the app installed for some time.

Stacktrace & log output

2022-06-29 13:36:38.124 16282-16282/? E/com.ourapp.sm: Not starting debugger since process cannot load the jdwp agent.
2022-06-29 13:36:38.339 16282-16282/? A/libc: Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 16282 (com.ourapp.sm), pid 16282 (com.ourapp.sm)
2022-06-29 13:36:38.610 16360-16360/? A/DEBUG: Cmdline: com.ourapp.sm
2022-06-29 13:36:38.610 16360-16360/? A/DEBUG: pid: 16282, tid: 16282, name: com.ourapp.sm  >>> com.ourapp.sm <<<
2022-06-29 13:36:38.610 16360-16360/? A/DEBUG:       #01 pc 000000000039ccc4  /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
2022-06-29 13:36:38.610 16360-16360/? A/DEBUG:       #02 pc 000000000039ceec  /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
2022-06-29 13:36:38.610 16360-16360/? A/DEBUG:       #03 pc 000000000039cd7c  /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
2022-06-29 13:36:38.610 16360-16360/? A/DEBUG:       #04 pc 000000000039cd14  /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (std::terminate()+56) (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
2022-06-29 13:36:38.610 16360-16360/? A/DEBUG:       #05 pc 00000000003b837c  /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
2022-06-29 13:36:38.610 16360-16360/? A/DEBUG:       #06 pc 00000000004ba69c  /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
2022-06-29 13:36:38.610 16360-16360/? A/DEBUG:       #07 pc 0000000000622398  /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
2022-06-29 13:36:38.611 16360-16360/? A/DEBUG:       #08 pc 0000000000626e94  /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
2022-06-29 13:36:38.611 16360-16360/? A/DEBUG:       #09 pc 00000000005b4ff0  /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
2022-06-29 13:36:38.611 16360-16360/? A/DEBUG:       #10 pc 00000000004240ac  /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
2022-06-29 13:36:38.611 16360-16360/? A/DEBUG:       #11 pc 000000000042d714  /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
2022-06-29 13:36:38.611 16360-16360/? A/DEBUG:       #12 pc 00000000004686e0  /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
2022-06-29 13:36:38.611 16360-16360/? A/DEBUG:       #13 pc 0000000000468120  /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
2022-06-29 13:36:38.611 16360-16360/? A/DEBUG:       #14 pc 000000000048fe50  /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
2022-06-29 13:36:38.611 16360-16360/? A/DEBUG:       #15 pc 00000000004693b0  /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
2022-06-29 13:36:38.611 16360-16360/? A/DEBUG:       #16 pc 00000000003ea8d8  /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (Java_io_realm_internal_OsSharedRealm_nativeGetSharedRealm+132) (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
2022-06-29 13:36:38.611 16360-16360/? A/DEBUG:       #19 pc 00000000024a08d8  /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/oat/arm64/base.vdex

Can you reproduce the bug?

Not yet

Reproduction Steps

Can't repro locally - employees within our own company have it happening on their devices, but it isn't something I can produce on my dev machine.

Version

10.11.0, 10.9.0 (tried downgrading and pushing to an affected user)

What SDK flavour are you using?

Local Database only

Are you using encryption?

Yes, using encryption

Platform OS and version(s)

Android 9, 10, 11 - possibly more

Build environment

Android Studio version: 2021.2.1 (but our CI pipeline does not use AS) Android Build Tools version: 30.0.3 Gradle version: 7.1.3

clementetb commented 1 year ago

Unrolled stacktrace:

Unrolling /Users/clemente.tort/realm-java/tools/stack.log from Realm Java 10.11.0 (base) using ABI arm64-v8a
********** Crash dump: **********
#01 0x000000000039ccc4 /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
                                                                                                                             abort_message
                                                                                                                             /buildbot/src/android/ndk-release-r23/toolchain/llvm-project/libcxx/../../../toolchain/llvm-project/libcxxabi/src/abort_message.cpp:76:5
#02 0x000000000039ceec /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
                                                                                                                             demangling_terminate_handler()
                                                                                                                             /buildbot/src/android/ndk-release-r23/toolchain/llvm-project/libcxx/../../../toolchain/llvm-project/libcxxabi/src/cxa_default_handlers.cpp:62:21
#03 0x000000000039cd7c /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
                                                                                                                             std::__terminate(void (*)())
                                                                                                                             /buildbot/src/android/ndk-release-r23/toolchain/llvm-project/libcxx/../../../toolchain/llvm-project/libcxxabi/src/cxa_handlers.cpp:59:9
#04 0x000000000039cd14 /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (std::terminate()+56) (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
                                                                                                                             std::terminate()
                                                                                                                             /buildbot/src/android/ndk-release-r23/toolchain/llvm-project/libcxx/../../../toolchain/llvm-project/libcxxabi/src/cxa_handlers.cpp:88:17
#05 0x00000000003b837c /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
                                                                                                                             __clang_call_terminate
                                                                                                                             ??:0:0
#06 0x00000000004ba69c /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
                                                                                                                             realm::Allocator::translate_critical(realm::Allocator::RefTranslation*, unsigned long) const
                                                                                                                             /tmp/realm-java/realm/realm-library/src/main/cpp/realm-core/src/realm/alloc.hpp:592:1
                                                                                                                             realm::Allocator::translate(unsigned long) const
                                                                                                                             /tmp/realm-java/realm/realm-library/src/main/cpp/realm-core/src/realm/alloc.hpp:598:16
#07 0x0000000000622398 /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
                                                                                                                             realm::Array::init_from_ref(unsigned long)
                                                                                                                             /tmp/realm-java/realm/realm-library/src/main/cpp/realm-core/src/realm/array.hpp:112:32
                                                                                                                             realm::Spec::init(realm::MemRef)
                                                                                                                             /tmp/realm-java/realm/realm-library/src/main/cpp/realm-core/src/realm/spec.cpp:47:13
#08 0x0000000000626e94 /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
                                                                                                                             realm::Spec::init(unsigned long)
                                                                                                                             /tmp/realm-java/realm/realm-library/src/main/cpp/realm-core/src/realm/spec.cpp:36:5
                                                                                                                             realm::Spec::init_from_parent()
                                                                                                                             /tmp/realm-java/realm/realm-library/src/main/cpp/realm-core/src/realm/spec.hpp:178:12
                                                                                                                             realm::Table::init(unsigned long, realm::ArrayParent*, unsigned long, bool, bool)
                                                                                                                             /tmp/realm-java/realm/realm-library/src/main/cpp/realm-core/src/realm/table.cpp:571:12
#09 0x00000000005b4ff0 /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
                                                                                                                             realm::Group::create_table_accessor(unsigned long)
                                                                                                                             /tmp/realm-java/realm/realm-library/src/main/cpp/realm-core/src/realm/group.cpp:942:20
#10 0x00000000004240ac /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
                                                                                                                             realm::Group::do_get_table(unsigned long)
                                                                                                                             /tmp/realm-java/realm/realm-library/src/main/cpp/realm-core/src/realm/group.cpp:816:21
                                                                                                                             realm::Group::do_get_table(unsigned long) const
                                                                                                                             /tmp/realm-java/realm/realm-library/src/main/cpp/realm-core/src/realm/group.hpp:1145:38
                                                                                                                             realm::Group::get_table(realm::TableKey) const
                                                                                                                             /tmp/realm-java/realm/realm-library/src/main/cpp/realm-core/src/realm/group.hpp:951:26
                                                                                                                             realm::ObjectSchema::ObjectSchema(realm::Group const&, realm::StringData, realm::TableKey)
                                                                                                                             /tmp/realm-java/realm/realm-library/src/main/cpp/realm-core/src/realm/object-store/object_schema.cpp:127:23
#11 0x000000000042d714 /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
                                                                                                                             void std::__ndk1::allocator<realm::ObjectSchema>::construct<realm::ObjectSchema, realm::Group const&, realm::StringData&, realm::TableKey&>(realm::ObjectSchema*, realm::Group const&, realm::StringData&, realm::TableKey&)
                                                                                                                             /opt/android-sdk-linux/ndk/23.1.7779620/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/memory:1921:31
                                                                                                                             void std::__ndk1::allocator_traits<std::__ndk1::allocator<realm::ObjectSchema> >::__construct<realm::ObjectSchema, realm::Group const&, realm::StringData&, realm::TableKey&>(std::__ndk1::integral_constant<bool, true>, std::__ndk1::allocator<realm::ObjectSchema>&, realm::ObjectSchema*, realm::Group const&, realm::StringData&, realm::TableKey&)
                                                                                                                             /opt/android-sdk-linux/ndk/23.1.7779620/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/memory:1784:21
                                                                                                                             void std::__ndk1::allocator_traits<std::__ndk1::allocator<realm::ObjectSchema> >::construct<realm::ObjectSchema, realm::Group const&, realm::StringData&, realm::TableKey&>(std::__ndk1::allocator<realm::ObjectSchema>&, realm::ObjectSchema*, realm::Group const&, realm::StringData&, realm::TableKey&)
                                                                                                                             /opt/android-sdk-linux/ndk/23.1.7779620/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/memory:1605:14
                                                                                                                             void std::__ndk1::vector<realm::ObjectSchema, std::__ndk1::allocator<realm::ObjectSchema> >::__construct_one_at_end<realm::Group const&, realm::StringData&, realm::TableKey&>(realm::Group const&, realm::StringData&, realm::TableKey&)
                                                                                                                             /opt/android-sdk-linux/ndk/23.1.7779620/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/vector:924:5
                                                                                                                             realm::ObjectSchema& std::__ndk1::vector<realm::ObjectSchema, std::__ndk1::allocator<realm::ObjectSchema> >::emplace_back<realm::Group const&, realm::StringData&, realm::TableKey&>(realm::Group const&, realm::StringData&, realm::TableKey&)
                                                                                                                             /opt/android-sdk-linux/ndk/23.1.7779620/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/vector:1683:9
                                                                                                                             realm::ObjectStore::schema_from_group(realm::Group const&)
                                                                                                                             /tmp/realm-java/realm/realm-library/src/main/cpp/realm-core/src/realm/object-store/object_store.cpp:909:20
#12 0x00000000004686e0 /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
                                                                                                                             realm::Realm::read_schema_from_group_if_needed()
                                                                                                                             /tmp/realm-java/realm/realm-library/src/main/cpp/realm-core/src/realm/object-store/shared_realm.cpp:232:19
#13 0x0000000000468120 /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
                                                                                                                             realm::Realm::Realm(realm::Realm::Config, realm::util::Optional<realm::VersionID>, std::__ndk1::shared_ptr<realm::_impl::RealmCoordinator>, realm::Realm::MakeSharedTag)
                                                                                                                             /tmp/realm-java/realm/realm-library/src/main/cpp/realm-core/src/realm/object-store/shared_realm.cpp:85:9
#14 0x000000000048fe50 /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
                                                                                                                             std::__ndk1::__compressed_pair_elem<realm::Realm, 1, false>::__compressed_pair_elem<realm::Realm::Config&&, realm::util::Optional<realm::VersionID>&&, std::__ndk1::shared_ptr<realm::_impl::RealmCoordinator>&&, realm::Realm::MakeSharedTag&&, 0ul, 1ul, 2ul, 3ul>(std::__ndk1::piecewise_construct_t, std::__ndk1::tuple<realm::Realm::Config&&, realm::util::Optional<realm::VersionID>&&, std::__ndk1::shared_ptr<realm::_impl::RealmCoordinator>&&, realm::Realm::MakeSharedTag&&>, std::__ndk1::__tuple_indices<0ul, 1ul, 2ul, 3ul>)
                                                                                                                             /opt/android-sdk-linux/ndk/23.1.7779620/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/memory:2278:9
                                                                                                                             std::__ndk1::__compressed_pair<std::__ndk1::allocator<realm::Realm>, realm::Realm>::__compressed_pair<std::__ndk1::allocator<realm::Realm>&, realm::Realm::Config&&, realm::util::Optional<realm::VersionID>&&, std::__ndk1::shared_ptr<realm::_impl::RealmCoordinator>&&, realm::Realm::MakeSharedTag&&>(std::__ndk1::piecewise_construct_t, std::__ndk1::tuple<std::__ndk1::allocator<realm::Realm>&>, std::__ndk1::tuple<realm::Realm::Config&&, realm::util::Optional<realm::VersionID>&&, std::__ndk1::shared_ptr<realm::_impl::RealmCoordinator>&&, realm::Realm::MakeSharedTag&&>)
                                                                                                                             /opt/android-sdk-linux/ndk/23.1.7779620/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/memory:2362:9
                                                                                                                             std::__ndk1::__shared_ptr_emplace<realm::Realm, std::__ndk1::allocator<realm::Realm> >::__shared_ptr_emplace<realm::Realm::Config, realm::util::Optional<realm::VersionID>, std::__ndk1::shared_ptr<realm::_impl::RealmCoordinator>, realm::Realm::MakeSharedTag>(std::__ndk1::allocator<realm::Realm>, realm::Realm::Config&&, realm::util::Optional<realm::VersionID>&&, std::__ndk1::shared_ptr<realm::_impl::RealmCoordinator>&&, realm::Realm::MakeSharedTag&&)
                                                                                                                             /opt/android-sdk-linux/ndk/23.1.7779620/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/memory:3635:16
                                                                                                                             std::__ndk1::enable_if<!(is_array<realm::Realm>::value), std::__ndk1::shared_ptr<realm::Realm> >::type std::__ndk1::make_shared<realm::Realm, realm::Realm::Config, realm::util::Optional<realm::VersionID>, std::__ndk1::shared_ptr<realm::_impl::RealmCoordinator>, realm::Realm::MakeSharedTag>(realm::Realm::Config&&, realm::util::Optional<realm::VersionID>&&, std::__ndk1::shared_ptr<realm::_impl::RealmCoordinator>&&, realm::Realm::MakeSharedTag&&)
                                                                                                                             /opt/android-sdk-linux/ndk/23.1.7779620/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/memory:4441:26
                                                                                                                             realm::Realm::make_shared_realm(realm::Realm::Config, realm::util::Optional<realm::VersionID>, std::__ndk1::shared_ptr<realm::_impl::RealmCoordinator>)
                                                                                                                             /tmp/realm-java/realm/realm-library/src/main/cpp/realm-core/src/realm/object-store/shared_realm.hpp:416:16
                                                                                                                             realm::_impl::RealmCoordinator::do_get_realm(realm::Realm::Config, std::__ndk1::shared_ptr<realm::Realm>&, realm::util::Optional<realm::VersionID>, realm::util::CheckedUniqueLock&)
                                                                                                                             /tmp/realm-java/realm/realm-library/src/main/cpp/realm-core/src/realm/object-store/impl/realm_coordinator.cpp:320:13
                                                                                                                             realm::_impl::RealmCoordinator::get_realm(realm::Realm::Config, realm::util::Optional<realm::VersionID>)
                                                                                                                             /tmp/realm-java/realm/realm-library/src/main/cpp/realm-core/src/realm/object-store/impl/realm_coordinator.cpp:284:5
#15 0x00000000004693b0 /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
                                                                                                                             realm::Realm::get_shared_realm(realm::Realm::Config)
                                                                                                                             /tmp/realm-java/realm/realm-library/src/main/cpp/realm-core/src/realm/object-store/shared_realm.cpp:157:25
#16 0x00000000003ea8d8 /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/base.apk!librealm-jni.so (Java_io_realm_internal_OsSharedRealm_nativeGetSharedRealm+132) (BuildId: 8233dde6fe4a96bdf9f1846a1e12689b58a893c1)
                                                                                                                             Java_io_realm_internal_OsSharedRealm_nativeGetSharedRealm
                                                                                                                             /tmp/realm-java/realm/realm-library/src/main/cpp/io_realm_internal_OsSharedRealm.cpp:70:28
#19 0x00000000024a08d8 /data/app/~~l-fpfTv3JOEU-rNFGVXnvA==/com.ourapp.sm-OzTGXILDWCH9vNJbAAejRg==/oat/arm64/base.vdex

@jedelbo

mattylase commented 1 year ago

@clementetb thanks & sorry for the spam, I'm the essentially the sole developer for an enterprise product with a large amount of angry customers & business people, so was banging the drum where I could.

As a temporary solution, I ended up having to downgrade back to 4.3.3, and rewrite the toflow() operator myself using a normal RealmChangeListener, but the majority of the native crashes no longer appear in the Play Console.

rorbech commented 1 year ago

@mattylase Have you gathered any other observations around this issue that could be used to reason about the root cause?

mattylase commented 1 year ago

@rorbech - nope. I rolled it back to the working version of 4.3.3, and ended up leaving that job.

For what it's worth, the context I can add is that this was for an "enterprise" use case, with lots of really weird device manufacturers that would be farther outside of the typical popular consumer models (though we were seeing issues on your average Samsung/Pixel device as well). I don't think that should make a difference, but who knows.

edualonso commented 1 year ago

Thanks for getting back to us @mattylase. The most likely guess is that there might still be an unhandled corner case when migrating from a really old release. In v4.3.3 we were using Core v5.1.2 and since then there has been two major refactorings in Core so it seems like your specific use case, whichever it is, went under the radar. We will close the issue as we can't investigate further.