Product: Couchbase Lite
Component: mobile
Issue Link: CBL-5978
Affects Version(s): 3.1.8
Fix Version(s): 3.1.9, 3.2.0Summary
Applications using Couchbase Lite version lower than 3.1.9 may experience a crash when logging is enabled and platform creates a named logging domain. The crash is observed in pre-3.1.9 releases as internal core library in those versions depended on the platform (Android, iOS, .net, etc.) for storing the domain instead of storing the value in its own allocated resource.
The fix can be tracked via
CBL-5978
Closed
.
Symptoms
- Couchbase Lite application experiences a crash as shown below.
Triggers
- Logging is enabled.
Verification
Review the produced crash dumps. Check whether the crash references c4log_getDomain like in the following example:
Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x76242068a1 in tid 4214 (DefaultDispatch), pid 3929 (domain.openpit.dev)
Cmdline: com.apps.domain.openpit.dev
pid: 3929, tid: 4214, name: DefaultDispatch >>> com.apps.domain.openpit.dev <<<
#01 pc 0000000000268e04 /data/app/~~0ByaPCJmI0PH7hDrU0xhfw==/com.apps.domain.openpit.dev-o4v196RjIuyPBa3zAE-Ffw==/base.apk!libLiteCore.so (BuildId: 7f9cabd96d8f470aa0dde31660413da4fd7e34c0)
#02 pc 0000000000191b5c /data/app/~~0ByaPCJmI0PH7hDrU0xhfw==/com.apps.domain.openpit.dev-o4v196RjIuyPBa3zAE-Ffw==/base.apk!libLiteCore.so (c4log_getDomain+24) (BuildId: 7f9cabd96d8f470aa0dde31660413da4fd7e34c0)
#03 pc 0000000000014164 /data/app/~~0ByaPCJmI0PH7hDrU0xhfw==/com.apps.domain.openpit.dev-o4v196RjIuyPBa3zAE-Ffw==/base.apk!libLiteCoreJNI.so (Java_com_couchbase_lite_internal_core_impl_NativeC4Log_log+96) (BuildId: 2f7efdccbca075c19cc7770a9c7a48a9add6d16d)
#09 pc 00000000004c1db8 /data/app/~~0ByaPCJmI0PH7hDrU0xhfw==/com.apps.domain.openpit.dev-o4v196RjIuyPBa3zAE-Ffw==/base.apk
#14 pc 00000000004bde9c /data/app/~~0ByaPCJmI0PH7hDrU0xhfw==/com.apps.domain.openpit.dev-o4v196RjIuyPBa3zAE-Ffw==/base.apkAnother example:
2024-05-24 15:35:18.049 24895-24895 DEBUG crash_dump64 A #01 pc 000000000026c180 /data/app/~~5y8VlH8KlsTNmMr8FkK4QA==/com.wsmm.oneapp-OQdOaAdmMml6EFnsTDWYpQ==/base.apk!libLiteCore.so (offset 0x125d000) (BuildId: e188dbb7b14593b395a4a754861727cc97585cfe)
2024-05-24 15:35:18.049 24895-24895 DEBUG crash_dump64 A #02 pc 00000000001937ec /data/app/~~5y8VlH8KlsTNmMr8FkK4QA==/com.wsmm.oneapp-OQdOaAdmMml6EFnsTDWYpQ==/base.apk!libLiteCore.so (offset 0x125d000) (c4log_getDomain+24) (BuildId: e188dbb7b14593b395a4a754861727cc97585cfe)
2024-05-24 15:35:18.049 24895-24895 DEBUG crash_dump64 A #03 pc 0000000000014a74 /data/app/~~5y8VlH8KlsTNmMr8FkK4QA==/com.wsmm.oneapp-OQdOaAdmMml6EFnsTDWYpQ==/base.apk!libLiteCoreJNI.so (offset 0xe22000) (Java_com_couchbase_lite_internal_core_impl_NativeC4Log_log+96) (BuildId: e444f712ef889839b51ecf0a00fd0acd7a8bef12)
2024-05-24 15:35:18.049 24895-24895 DEBUG crash_dump64 A #11 pc 00000000002aa5f4 [anon:dalvik-classes13.dex extracted in memory from /data/app/~~5y8VlH8KlsTNmMr8FkK4QA==/com.wsmm.oneapp-OQdOaAdmMml6EFnsTDWYpQ==/base.apk!classes13.dex] (com.couchbase.lite.internal.core.impl.NativeC4Log.nLog)
2024-05-24 15:35:18.049 24895-24895 DEBUG crash_dump64 A #14 pc 00000000002a6710 [anon:dalvik-classes13.dex extracted in memory from /data/app/~~5y8VlH8KlsTNmMr8FkK4QA==/com.wsmm.oneapp-OQdOaAdmMml6EFnsTDWYpQ==/base.apk!classes13.dex] (com.couchbase.lite.internal.core.C4Log.logToCore+20)
2024-05-24 15:35:18.050 24895-24895 DEBUG crash_dump64 A #17 pc 0000000000295322 [anon:dalvik-classes13.dex extracted in memory from /data/app/~~5y8VlH8KlsTNmMr8FkK4QA==/com.wsmm.oneapp-OQdOaAdmMml6EFnsTDWYpQ==/base.apk!classes13.dex] (com.couchbase.lite.FileLogger.log+30)
2024-05-24 15:35:18.050 24895-24895 DEBUG crash_dump64 A #20 pc 00000000002b3252 [anon:dalvik-classes13.dex extracted in memory from /data/app/~~5y8VlH8KlsTNmMr8FkK4QA==/com.wsmm.oneapp-OQdOaAdmMml6EFnsTDWYpQ==/base.apk!classes13.dex] (com.couchbase.lite.internal.support.Log.sendToLoggers+34)
2024-05-24 15:35:18.050 24895-24895 DEBUG crash_dump64 A #23 pc 00000000002b3216 [anon:dalvik-classes13.dex extracted in memory from /data/app/~~5y8VlH8KlsTNmMr8FkK4QA==/com.wsmm.oneapp-OQdOaAdmMml6EFnsTDWYpQ==/base.apk!classes13.dex] (com.couchbase.lite.internal.support.Log.log+182)
2024-05-24 15:35:18.050 24895-24895 DEBUG crash_dump64 A #26 pc 00000000002b3016 [anon:dalvik-classes13.dex extracted in memory from /data/app/~~5y8VlH8KlsTNmMr8FkK4QA==/com.wsmm.oneapp-OQdOaAdmMml6EFnsTDWYpQ==/base.apk!classes13.dex] (com.couchbase.lite.internal.support.Log.i+6)
2024-05-24 15:35:18.050 24895-24895 DEBUG crash_dump64 A #29 pc 000000000028c590 [anon:dalvik-classes13.dex extracted in memory from /data/app/~~5y8VlH8KlsTNmMr8FkK4QA==/com.wsmm.oneapp-OQdOaAdmMml6EFnsTDWYpQ==/base.apk!classes13.dex] (com.couchbase.lite.AbstractReplicator.statusChanged+88)
2024-05-24 15:35:18.050 24895-24895 DEBUG crash_dump64 A #32 pc 000000000028c048 [anon:dalvik-classes13.dex extracted in memory from /data/app/~~5y8VlH8KlsTNmMr8FkK4QA==/com.wsmm.oneapp-OQdOaAdmMml6EFnsTDWYpQ==/base.apk!classes13.dex] (com.couchbase.lite.AbstractReplicator.lambda$dispatchStatusChange$0$com-couchbase-lite-AbstractReplicator)
2024-05-24 15:35:18.050 24895-24895 DEBUG crash_dump64 A #35 pc 0000000000289d64 [anon:dalvik-classes13.dex extracted in memory from /data/app/~~5y8VlH8KlsTNmMr8FkK4QA==/com.wsmm.oneapp-OQdOaAdmMml6EFnsTDWYpQ==/base.apk!classes13.dex] (com.couchbase.lite.AbstractReplicator$$ExternalSyntheticLambda2.run+8)
2024-05-24 15:35:18.050 24895-24895 DEBUG crash_dump64 A #38 pc 00000000002abde4 [anon:dalvik-classes13.dex extracted in memory from /data/app/~~5y8VlH8KlsTNmMr8FkK4QA==/com.wsmm.oneapp-OQdOaAdmMml6EFnsTDWYpQ==/base.apk!classes13.dex] (com.couchbase.lite.internal.exec.InstrumentedTask.run+36)Workarounds
- The workaround would be disabling the logging by either setting the file logging's config property to null or setting the level property to LogLevel.NONE.
Comments
0 comments
Article is closed for comments.