sqlite-android icon indicating copy to clipboard operation
sqlite-android copied to clipboard

SIGABRT in 3.49.0

Open GrahamBorland opened this issue 8 months ago • 1 comments

Since upgrading from 3.45.0 to 3.49.0 we are getting some crash reports in the wild.

SIGABRT: Abort program

0 libc.so +0x5e8fc               abort
1 libart.so +0x933ab8            art::Runtime::Abort(char const*)
2 libbase.so!libbase.so +0x160f8 android::base::SetAborter(std::__1::function<void (char const*)>&&)::$_0::__invoke(char const*)
3 libbase.so!libbase.so +0x156cc android::base::LogMessage::~LogMessage()
4 libart.so +0x57abf8            art::JavaVMExt::AddGlobalRef(art::Thread*, art::ObjPtr<art::mirror::Object>)
5 libart.so +0x7127e8            art::JNI<false>::NewGlobalRef(_JNIEnv*, _jobject*)
6 libsqlite3x.so +0x49b6c        0x74a7e4bb70
7 boot.oat +0x300848             art_jni_trampoline

Devices all seem to be relatively modern standard builds, e.g. Pixel 9 on Android 15.

GrahamBorland avatar Jun 05 '25 12:06 GrahamBorland

This looks like a symptom of JNI global reference exhaustion. In our app we did change to using SQLiteUpdateHook along with the 3.49.0 release and maybe this change in usage is causing exhaustion. I'll continue to investigate, but maybe this isn't something the library can fix.

GrahamBorland avatar Jun 05 '25 13:06 GrahamBorland