immich-app / immich

High performance self-hosted photo and video management solution.
https://immich.app
GNU Affero General Public License v3.0
51.96k stars 2.75k forks source link

Android app consuming 100% of CPU, force-closes #14096

Open arter97 opened 3 days ago

arter97 commented 3 days ago

The bug

On Android 15, Immich app consumes 100% of CPU (in the background or foreground) with the following entries filling up in logcat repeatedly.

11-12 20:07:50.052 17658 17658 D BackupWorker: startWork
11-12 20:07:50.054 17658 17658 D BackupWorker: isIgnoringBatteryOptimizations true
11-12 20:07:50.056 17658 17678 I WM-Processor: Moving WorkSpec (4fa50470-a1f1-4166-83c3-2f7fd0f08e76) to the foreground
11-12 20:07:50.060  2213  3177 I ActivityManager: Background started FGS: Allowed [callingPackage: app.alextran.immich; callingUid: 10506; uidState: TRNB; uidBFSL: n/a; intent: Intent { act=ACTION_START_FOREGROUND cmp=app.alextran.immich/androidx.work.impl.foreground.SystemForegroundService (has extras) }; code:SYSTEM_ALLOW_LISTED; tempAllowListReason:<,reasonCode:SYSTEM_ALLOW_LISTED,duration:9223372036854775807,callingUid:-1>; targetSdkVersion:34; callerTargetSdkVersion:34; startForegroundCount:0; bindFromPackage:null: isBindService:false]
11-12 20:07:50.074 17658 17658 I WM-SystemFgDispatcher: Started foreground service Intent { act=ACTION_START_FOREGROUND cmp=app.alextran.immich/androidx.work.impl.foreground.SystemForegroundService (has extras) }
11-12 20:07:50.074 17658 30876 I flutter : IsarError: Cannot open Environment: MdbxError (11): Try again
11-12 20:07:50.075 17658 17658 D FlutterGeolocator: Flutter engine disconnected. Connected engine count 0
11-12 20:07:50.076 17658 17658 E FlutterGeolocator: Geolocator position updates stopped
11-12 20:07:50.076 17658 17658 D FlutterGeolocator: Stopping location service.
11-12 20:07:50.079 17658 17658 D BackupWorker: stopEngine result=Retry
11-12 20:07:50.080 17658 17658 D FlutterGeolocator: Flutter engine connected. Connected engine count 1
11-12 20:07:50.081  2213  3152 D ConnectivityService: requestNetwork for uid/pid:10506/17658 activeRequest: null callbackRequest: 61637 [NetworkRequest [ REQUEST id=61638, [ Capabilities: INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VCN_MANAGED&NOT_BANDWIDTH_CONSTRAINED Uid: 10506 RequestorUid: 10506 RequestorPkg: app.alextran.immich UnderlyingNetworks: Null] ]] callback flags: 0 order: 2147483647 isUidTracked: false declaredMethods: ALL
11-12 20:07:50.081  2213  3153 W ActivityManager: Foreground service started from background can not have location/camera/microphone access: service app.alextran.immich/androidx.work.impl.foreground.SystemForegroundService
11-12 20:07:50.082  2213  3153 W ForegroundServiceTypeLoggerModule: Foreground service start for UID: 10506 does not have any types
11-12 20:07:50.090  2213  2747 D WifiNetworkFactory: got request NetworkRequest [ REQUEST id=61638, [ Capabilities: INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VCN_MANAGED&NOT_BANDWIDTH_CONSTRAINED Uid: 10506 RequestorUid: 10506 RequestorPkg: app.alextran.immich UnderlyingNetworks: Null] ]
11-12 20:07:50.091  2213  2757 D ConnectivityService: NetReassign [61638 : null → 134] [c 2] [a 6] [i 2]
11-12 20:07:50.092  2213  2747 D UntrustedWifiNetworkFactory: got request NetworkRequest [ REQUEST id=61638, [ Capabilities: INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VCN_MANAGED&NOT_BANDWIDTH_CONSTRAINED Uid: 10506 RequestorUid: 10506 RequestorPkg: app.alextran.immich UnderlyingNetworks: Null] ]
11-12 20:07:50.092  2213  2747 D OemPaidWifiNetworkFactory: got request NetworkRequest [ REQUEST id=61638, [ Capabilities: INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VCN_MANAGED&NOT_BANDWIDTH_CONSTRAINED Uid: 10506 RequestorUid: 10506 RequestorPkg: app.alextran.immich UnderlyingNetworks: Null] ]
11-12 20:07:50.092  2213  2747 D MultiInternetWifiNetworkFactory: got request NetworkRequest [ REQUEST id=61638, [ Capabilities: INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VCN_MANAGED&NOT_BANDWIDTH_CONSTRAINED Uid: 10506 RequestorUid: 10506 RequestorPkg: app.alextran.immich UnderlyingNetworks: Null] ]
11-12 20:07:50.094 17658 17678 D BackupWorker: onStopped
11-12 20:07:50.094  2213  2213 I NotificationService: Cannot find enqueued record for key: 0|app.alextran.immich|1|null|10506
11-12 20:07:50.095 17658 17678 I WM-WorkerWrapper: Work [ id=4fa50470-a1f1-4166-83c3-2f7fd0f08e76, tags={ app.alextran.immich.BackupWorker } ] was cancelled
11-12 20:07:50.095 17658 17678 I WM-WorkerWrapper: java.util.concurrent.CancellationException: Task was cancelled.
11-12 20:07:50.095 17658 17678 I WM-WorkerWrapper:  at androidx.work.impl.utils.futures.a.c(Unknown Source:2)
11-12 20:07:50.095 17658 17678 I WM-WorkerWrapper:  at androidx.work.impl.utils.futures.a.i(Unknown Source:30)
11-12 20:07:50.095 17658 17678 I WM-WorkerWrapper:  at androidx.work.impl.utils.futures.a.get(SourceFile:48)
11-12 20:07:50.095 17658 17678 I WM-WorkerWrapper:  at androidx.work.impl.U$b.run(Unknown Source:4)
11-12 20:07:50.095 17658 17678 I WM-WorkerWrapper:  at S1.s$a.run(Unknown Source:2)
11-12 20:07:50.095 17658 17678 I WM-WorkerWrapper:  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
11-12 20:07:50.095 17658 17678 I WM-WorkerWrapper:  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
11-12 20:07:50.095 17658 17678 I WM-WorkerWrapper:  at java.lang.Thread.run(Thread.java:1012)
11-12 20:07:50.095  2213  3153 W ActivityManager: Foreground service started from background can not have location/camera/microphone access: service app.alextran.immich/androidx.work.impl.foreground.SystemForegroundService
11-12 20:07:50.095  2213  3153 I ActivityManager: Background started FGS: Allowed [callingPackage: app.alextran.immich; callingUid: 10506; uidState: FGS ; uidBFSL: [BFSL]; intent: Intent { act=ACTION_START_FOREGROUND cmp=app.alextran.immich/androidx.work.impl.foreground.SystemForegroundService }; code:PROC_STATE_FGS; tempAllowListReason:<,reasonCode:SYSTEM_ALLOW_LISTED,duration:9223372036854775807,callingUid:-1>; targetSdkVersion:34; callerTargetSdkVersion:34; startForegroundCount:1; bindFromPackage:null: isBindService:false] (Called on SHORT_SERVICE)
11-12 20:07:50.097 17658 17658 I WM-SystemFgDispatcher: Stopping foreground service
11-12 20:07:50.098  2213  3153 W ForegroundServiceTypeLoggerModule: FGS stop call for: 10506 has no types!
11-12 20:07:50.103  2213  2213 D NtNotificationManagerService: playGlyphEffect glyphNotificationEnable = true
11-12 20:07:50.104  2213  2213 D NtNotificationManagerService: skip playGlyphEffect, mGlyphNotificationEnable = true, FLAG_ONGOING_EVENT = 2, FLAG_FOREGROUND_SERVICE = 64, isInCall = false, isScreenOn = true, isSoundOnly = false
11-12 20:07:50.109  2213  2213 W NotificationHistory: Attempted to add notif for locked/gone/disabled user 0
11-12 20:07:50.112  4382  4734 D BinderSender: onUidCachedChanged: uid=10506, cached=true
11-12 20:07:50.118  5311  6345 D CollectorHandler: handleMessage, event: ON_NOTIFICATION_POSTED_WITH_RANKING
11-12 20:07:50.121  5311  6345 D StreamDBQueue: Promised revision #1004720 to queue a new op
11-12 20:07:50.122  5311  6345 I CBridgedItemsController: not bridging notification from app.alextran.immich: notification is tagged as ongoing
11-12 20:07:50.123  5311  6345 D CollectorHandler: handleMessage, event: ON_NOTIFICATION_REMOVED
11-12 20:07:50.123  5311  6345 D StreamDBQueue: Promised revision #1004721 to queue a new op
11-12 20:07:50.123  5311  6345 D BaseStreamManager: Promised remove @ r#1004721 for StreamItemIdAndRevision{notifKey=0|app.alextran.immich|1|null|10506, packageName=app.alextran.immich, id=1, revision=0, originalRevision=0, updateCount=0} (@1004720): SBN removed: StreamItemIdAndRevision{notifKey=0|app.alextran.immich|1|null|10506, packageName=app.alextran.immich, id=1, revision=0, originalRevision=0, updateCount=0}
11-12 20:07:50.123  5311  6377 D StreamDatabase: remove. itemId: StreamItemIdAndRevision{notifKey=0|app.alextran.immich|1|null|10506, packageName=app.alextran.immich, id=1, revision=1004720, originalRevision=1004720, updateCount=0}
11-12 20:07:50.124  4382  4734 D BinderSender: onUidCachedChanged: uid=10506, cached=false
11-12 20:07:50.124  4382  4734 V BinderSender: Uid 10506 already starts

This eventually triggers a force-close. Then, the service respawns itself and the bug repeats.

Force-close log:

11-12 20:10:23.540  6395  6395 D BackupWorker: startWork
11-12 20:10:23.540  6395  6395 D BackupWorker: isIgnoringBatteryOptimizations true
11-12 20:10:23.541  6395  6446 I WM-Processor: Moving WorkSpec (4fa50470-a1f1-4166-83c3-2f7fd0f08e76) to the foreground
11-12 20:10:23.543  2213  2989 I ActivityManager: Background started FGS: Allowed [callingPackage: app.alextran.immich; callingUid: 10506; uidState: TOP ; uidBFSL: [BFSL]; intent: Intent { act=ACTION_START_FOREGROUND cmp=app.alextran.immich/androidx.work.impl.foreground.SystemForegroundService (has extras) }; code:PROC_STATE_TOP; tempAllowListReason:<,reasonCode:SYSTEM_ALLOW_LISTED,duration:9223372036854775807,callingUid:-1>; targetSdkVersion:34; callerTargetSdkVersion:34; startForegroundCount:0; bindFromPackage:null: isBindService:false]
11-12 20:10:23.543  6395  6395 W Adreno-GSL: <gsl_ldd_control:553>: ioctl fd 161 code 0xc0080913 (IOCTL_KGSL_DRAWCTXT_CREATE) failed: errno 28 No space left on device
11-12 20:10:23.543  6395  6395 E flutter : [ERROR:flutter/shell/platform/android/android_context_gl_skia.cc(96)] Could not create an EGL resource context
11-12 20:10:23.543  6395  6395 E flutter : [ERROR:flutter/shell/platform/android/android_egl_surface.cc(52)] EGL Error: EGL_BAD_ALLOC (12291)
11-12 20:10:22.550     0     0 E kgsl-3d0: Per process context limit reached for pid 6395
11-12 20:10:23.543  6395  6395 F flutter : [FATAL:flutter/shell/platform/android/platform_view_android.cc(118)] Check failed: android_context_->IsValid(). Could not create surface from invalid Android context.
--------- beginning of crash
11-12 20:10:23.544  6395  6395 F libc    : Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 6395 (alextran.immich), pid 6395 (alextran.immich)
11-12 20:10:23.590  2213  2213 I NotificationService: Cannot find enqueued record for key: 0|app.alextran.immich|1|null|10506
11-12 20:10:23.621  2213  2213 I NotificationService: Cannot find enqueued record for key: 0|app.alextran.immich|1|null|10506
11-12 20:10:23.718  2213  2213 I NotificationService: Cannot find enqueued record for key: 0|app.alextran.immich|1|null|10506
11-12 20:10:23.737  7574  7574 I crash_dump64: obtaining output fd from tombstoned, type: kDebuggerdTombstoneProto
11-12 20:10:23.738   919   919 I tombstoned: received crash request for pid 6395
11-12 20:10:23.738  7574  7574 I crash_dump64: performing dump of process 6395 (target tid = 6395)
11-12 20:10:23.885  1184  3280 D vendor.qti.bluetooth@1.0-wake_lock: Release wakelock is released 
11-12 20:10:23.932  7574  7574 F DEBUG   : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
11-12 20:10:23.932  7574  7574 F DEBUG   : Build fingerprint: 'Nothing/Pong/Pong:15/AQ3A.240912.001/2410281925:user/release-keys'
11-12 20:10:23.932  7574  7574 F DEBUG   : Revision: '0'
11-12 20:10:23.932  7574  7574 F DEBUG   : ABI: 'arm64'
11-12 20:10:23.932  7574  7574 F DEBUG   : Timestamp: 2024-11-12 20:10:23.747377761+0900
11-12 20:10:23.932  7574  7574 F DEBUG   : Process uptime: 13s
11-12 20:10:23.932  7574  7574 F DEBUG   : Cmdline: app.alextran.immich
11-12 20:10:23.932  7574  7574 F DEBUG   : pid: 6395, tid: 6395, name: alextran.immich  >>> app.alextran.immich <<<
11-12 20:10:23.932  7574  7574 F DEBUG   : uid: 10506
11-12 20:10:23.932  7574  7574 F DEBUG   : tagged_addr_ctrl: 0000000000000001 (PR_TAGGED_ADDR_ENABLE)
11-12 20:10:23.932  7574  7574 F DEBUG   : pac_enabled_keys: 000000000000000f (PR_PAC_APIAKEY, PR_PAC_APIBKEY, PR_PAC_APDAKEY, PR_PAC_APDBKEY)
11-12 20:10:23.932  7574  7574 F DEBUG   : signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
11-12 20:10:23.932  7574  7574 F DEBUG   : Abort message: '[FATAL:flutter/shell/platform/android/platform_view_android.cc(118)] Check failed: android_context_->IsValid(). Could not create surface from invalid Android context.'
11-12 20:10:23.932  7574  7574 F DEBUG   :     x0  0000000000000000  x1  00000000000018fb  x2  0000000000000006  x3  0000007ffa6dde40
11-12 20:10:23.932  7574  7574 F DEBUG   :     x4  6d602e6c716e6573  x5  6d602e6c716e6573  x6  6d602e6c716e6573  x7  7f7f7f7f7f7f7f7f
11-12 20:10:23.932  7574  7574 F DEBUG   :     x8  00000000000000f0  x9  000000722c896220  x10 ffffff80fffffb9f  x11 0000000000000001
11-12 20:10:23.932  7574  7574 F DEBUG   :     x12 00000071a4a002c0  x13 00000000000000a8  x14 0000007ffa6dcd10  x15 0000000034155555
11-12 20:10:23.932  7574  7574 F DEBUG   :     x16 000000722c99b918  x17 000000722c980b80  x18 000000725b968000  x19 00000000000018fb
11-12 20:10:23.932  7574  7574 F DEBUG   :     x20 00000000000018fb  x21 00000000ffffffff  x22 b400006d4df39d80  x23 b400006e6ac381b0
11-12 20:10:23.932  7574  7574 F DEBUG   :     x24 b400006eb81e1ac8  x25 b400006e81085f60  x26 b400006e94142520  x27 00000070e56f2000
11-12 20:10:23.932  7574  7574 F DEBUG   :     x28 0000007ffa6de528  x29 0000007ffa6ddec0
11-12 20:10:23.932  7574  7574 F DEBUG   :     lr  000000722c920218  sp  0000007ffa6dde20  pc  000000722c920248  pst 0000000000001000
11-12 20:10:23.932  7574  7574 F DEBUG   : 33 total frames
11-12 20:10:23.932  7574  7574 F DEBUG   : backtrace:
11-12 20:10:23.932  7574  7574 F DEBUG   :       #00 pc 00000000000b5248  /system/lib64/libc.so (abort+172) (BuildId: 024fd26d688340c2c9b35e9591a789f3)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #01 pc 00000000004489c4  /data/app/~~mDqtQYlmXJcciKeOQ8EgXw==/app.alextran.immich-sU8l7r_0zYwDHpnGL7zpag==/split_config.arm64_v8a.apk!libflutter.so (offset 0xc28000) (BuildId: 0bb05f781d5387e7180505dd31219075e4e0edc9)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #02 pc 0000000000474f7c  /data/app/~~mDqtQYlmXJcciKeOQ8EgXw==/app.alextran.immich-sU8l7r_0zYwDHpnGL7zpag==/split_config.arm64_v8a.apk!libflutter.so (offset 0xc28000) (BuildId: 0bb05f781d5387e7180505dd31219075e4e0edc9)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #03 pc 000000000045ca3c  /data/app/~~mDqtQYlmXJcciKeOQ8EgXw==/app.alextran.immich-sU8l7r_0zYwDHpnGL7zpag==/split_config.arm64_v8a.apk!libflutter.so (offset 0xc28000) (BuildId: 0bb05f781d5387e7180505dd31219075e4e0edc9)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #04 pc 0000000000454858  /data/app/~~mDqtQYlmXJcciKeOQ8EgXw==/app.alextran.immich-sU8l7r_0zYwDHpnGL7zpag==/split_config.arm64_v8a.apk!libflutter.so (offset 0xc28000) (BuildId: 0bb05f781d5387e7180505dd31219075e4e0edc9)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #05 pc 00000000007b2530  /data/app/~~mDqtQYlmXJcciKeOQ8EgXw==/app.alextran.immich-sU8l7r_0zYwDHpnGL7zpag==/split_config.arm64_v8a.apk!libflutter.so (offset 0xc28000) (BuildId: 0bb05f781d5387e7180505dd31219075e4e0edc9)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #06 pc 00000000007b1978  /data/app/~~mDqtQYlmXJcciKeOQ8EgXw==/app.alextran.immich-sU8l7r_0zYwDHpnGL7zpag==/split_config.arm64_v8a.apk!libflutter.so (offset 0xc28000) (BuildId: 0bb05f781d5387e7180505dd31219075e4e0edc9)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #07 pc 000000000045e1c0  /data/app/~~mDqtQYlmXJcciKeOQ8EgXw==/app.alextran.immich-sU8l7r_0zYwDHpnGL7zpag==/split_config.arm64_v8a.apk!libflutter.so (offset 0xc28000) (BuildId: 0bb05f781d5387e7180505dd31219075e4e0edc9)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #08 pc 000000000031912c  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (art_jni_trampoline+124)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #09 pc 000000000016c32c  /data/app/~~mDqtQYlmXJcciKeOQ8EgXw==/app.alextran.immich-sU8l7r_0zYwDHpnGL7zpag==/oat/arm64/base.odex (io.flutter.embedding.engine.FlutterJNI.performNativeAttach+44)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #10 pc 000000000016b39c  /data/app/~~mDqtQYlmXJcciKeOQ8EgXw==/app.alextran.immich-sU8l7r_0zYwDHpnGL7zpag==/oat/arm64/base.odex (io.flutter.embedding.engine.FlutterJNI.attachToNative+124)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #11 pc 000000000016dbac  /data/app/~~mDqtQYlmXJcciKeOQ8EgXw==/app.alextran.immich-sU8l7r_0zYwDHpnGL7zpag==/oat/arm64/base.odex (io.flutter.embedding.engine.a.<init>+4140)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #12 pc 000000000201d15c  /memfd:jit-cache (deleted) (offset 0x2000000) (io.flutter.embedding.engine.a.<init>+140)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #13 pc 000000000200783c  /memfd:jit-cache (deleted) (offset 0x2000000) (app.alextran.immich.BackupWorker.p+828)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #14 pc 000000000200e7a4  /memfd:jit-cache (deleted) (offset 0x2000000) (androidx.work.impl.U$a.run+452)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #15 pc 000000000094c734  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.os.Handler.dispatchMessage+68)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #16 pc 0000000000950340  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.os.Looper.loopOnce+1088)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #17 pc 000000000094fde0  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.os.Looper.loop+864)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #18 pc 00000000006f10b8  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (android.app.ActivityThread.main+2040)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #19 pc 000000000036de40  /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+640) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #20 pc 00000000003698f4  /apex/com.android.art/lib64/libart.so (_jobject* art::InvokeMethod<(art::PointerSize)8>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jobject*, _jobject*, unsigned long)+732) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #21 pc 00000000006c6738  /apex/com.android.art/lib64/libart.so (art::Method_invoke(_JNIEnv*, _jobject*, _jobject*, _jobjectArray*) (.__uniq.165753521025965369065708152063621506277)+32) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #22 pc 000000000031e234  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (art_jni_trampoline+116)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #23 pc 0000000000c47c74  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run+116)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #24 pc 0000000000c52804  /data/misc/apexdata/com.android.art/dalvik-cache/arm64/boot.oat (com.android.internal.os.ZygoteInit.main+3204)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #25 pc 000000000036de40  /apex/com.android.art/lib64/libart.so (art_quick_invoke_static_stub+640) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #26 pc 000000000035936c  /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+204) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #27 pc 0000000000357320  /apex/com.android.art/lib64/libart.so (art::JValue art::InvokeWithVarArgs<_jmethodID*>(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jmethodID*, std::__va_list)+512) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #28 pc 000000000073b6ac  /apex/com.android.art/lib64/libart.so (art::JNI<true>::CallStaticVoidMethodV(_JNIEnv*, _jclass*, _jmethodID*, std::__va_list)+104) (BuildId: 3f7d5a016e08d528f129bdd336d81168)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #29 pc 00000000000da42c  /system/lib64/libandroid_runtime.so (_JNIEnv::CallStaticVoidMethod(_jclass*, _jmethodID*, ...)+108) (BuildId: 0792e55f13e89d339e84b47dc79b011b)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #30 pc 00000000000f1314  /system/lib64/libandroid_runtime.so (android::AndroidRuntime::start(char const*, android::Vector<android::String8> const&, bool)+916) (BuildId: 0792e55f13e89d339e84b47dc79b011b)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #31 pc 0000000000002654  /system/bin/app_process64 (main+1428) (BuildId: cf8363ee21ac2741a6c8dbbb8c562607)
11-12 20:10:23.932  7574  7574 F DEBUG   :       #32 pc 00000000000aeff0  /system/lib64/libc.so (__libc_init+120) (BuildId: 024fd26d688340c2c9b35e9591a789f3)
11-12 20:10:23.971  2213  7582 I DropBoxManagerService: add tag=data_app_native_crash isTagEnabled=true flags=0x2
11-12 20:10:23.971   919   919 E tombstoned: Tombstone written to: tombstone_10_6395_2024-11-12-20-10-23
11-12 20:10:23.972  2213  7581 W ActivityTaskManager:   Force finishing activity app.alextran.immich/.MainActivity

The "No space left on device" error is unrelated to the storage space. Something in the GPU path is simply returning -ENOSPC.

Tombstone uploaded separately: tombstone_10_6395_2024-11-12-20-10-23.txt

This bug needs to be solved, and wherever this loop is initiated, it's probably a good idea to add some sort of a sleep.

The OS that Immich Server is running on

Ubuntu 24.04

Version of Immich Server

v1.120.1

Version of Immich Mobile App

v1.120.1

Platform with the issue

Your docker-compose.yml content

Natively deployed. This is not a server-side issue.

Your .env content

This is not a server-side issue.

Reproduction steps

Use the Android app in Android 15 (might be specific to my environment)

Relevant log output

No response

Additional information

No response

alextran1502 commented 3 days ago

Thanks for the report, what is your phone model?

arter97 commented 3 days ago

This is Nothing Phone 2. This phone's OS is close to AOSP as it can get, no weird heavy customization going on, so I don't believe this is a model-specific issue.

I'm kinda surprised that other Pixel users didn't report this yet.

alextran1502 commented 3 days ago

Can you help providing the app settings regarding permission, battery settings, etc. Has the app finished upload or there are still assets on the device to be uploaded?

arter97 commented 3 days ago

All permissions are given, battery setting is set to unrestricted (log seems to supports this too: BackupWorker: isIgnoringBatteryOptimizations true).

This issue only seems to happen when an asset is left for an upload. After all upload is done (randomly by repeatedly force-closing, opening up the app to the foreground), the issue disappears.