39aldo39 / DecSyncCC

Android app to sync contacts, calendars and tasks without a server using DecSync
GNU General Public License v3.0
228 stars 10 forks source link

Transaction failed on small parcel #84

Open jm355 opened 2 years ago

jm355 commented 2 years ago

I get an error notification every few days, "Transaction failed on small parcel; remote process probably died". I think it seems to happen primarily when syncthing isn't connected to the other device i sync with, but that doesn't make sense to me since i thought decsync just synced to and from the file and lets syncthing synchronize the file to other devices independently.

If i tap the notification and press the sync button in the top right, it seems to sync fine

Screenshot_20220408-112632

duggalsu commented 11 months ago

This issue is persisting and seems to be causing the task files in DecSync storage not getting updated correctly.

Riolku commented 9 months ago

This is affecting me too, periodically. It's become more frequent as of late.

SecT0uch commented 7 months ago

Affected too, getting it several times a day.

Running GrapheneOS on a Pixel 8

JayXT commented 2 months ago

I'm also experiencing the same issue.

flortsch commented 1 month ago

Here is a log (error level) from my Pixel 8 on GrapheneOS where this error occurs. Maybe it helps in identifying the cause.

type: logcat
osVersion: google/shiba/shiba:14/AP1A.240505.005/2024060500:user/release-keys
packageName: org.decsync.cc:35
buffers: main,system,crash,events,kernel
level: error

--------- beginning of main
06-09 10:52:31.203 12849 12849 E org.decsync.cc: Not starting debugger since process cannot load the jdwp agent.
06-09 10:52:31.306 12849 12849 E cutils-trace: Error opening trace file: No such file or directory (2)
06-09 10:52:31.433 12849 12849 E org.decsync.cc: Unable to find pattern file or unable to map it for am
06-09 10:52:32.369 12849 12924 E JavaBinder: !!! FAILED BINDER TRANSACTION !!!  (parcel size = 516)
06-09 10:52:32.375 12849 12924 E CollectionWorker: android.os.DeadObjectException: Transaction failed on small parcel; remote process probably died, but this could also be caused by running out of binder buffer space
06-09 10:52:32.375 12849 12924 E CollectionWorker:  at android.os.BinderProxy.transactNative(Native Method)
06-09 10:52:32.375 12849 12924 E CollectionWorker:  at android.os.BinderProxy.transact(BinderProxy.java:586)
06-09 10:52:32.375 12849 12924 E CollectionWorker:  at android.content.ContentProviderProxy.query(ContentProviderNative.java:493)
06-09 10:52:32.375 12849 12924 E CollectionWorker:  at android.content.ContentProviderClient.query(ContentProviderClient.java:196)
06-09 10:52:32.375 12849 12924 E CollectionWorker:  at android.content.ContentProviderClient.query(ContentProviderClient.java:178)
06-09 10:52:32.375 12849 12924 E CollectionWorker:  at android.content.ContentProviderClient.query(ContentProviderClient.java:168)
06-09 10:52:32.375 12849 12924 E CollectionWorker:  at org.decsync.cc.contacts.ContactsWorker.sync(ContactsWorker.kt:16)
06-09 10:52:32.375 12849 12924 E CollectionWorker:  at org.decsync.cc.CollectionWorker.doWork$suspendImpl(CollectionWorker.kt:47)
06-09 10:52:32.375 12849 12924 E CollectionWorker:  at org.decsync.cc.CollectionWorker$doWork$1.invokeSuspend(Unknown Source:11)
06-09 10:52:32.375 12849 12924 E CollectionWorker:  at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:4)
06-09 10:52:32.375 12849 12924 E CollectionWorker:  at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:18)
06-09 10:52:32.375 12849 12924 E CollectionWorker:  at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:1)
06-09 10:52:32.375 12849 12924 E CollectionWorker:  at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:4)
06-09 10:52:32.375 12849 12924 E CollectionWorker:  at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:4)
06-09 10:52:32.375 12849 12924 E CollectionWorker:  at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:1)
06-09 10:52:32.389 12849 12924 E PendingIntent: org.decsync.cc: Targeting S+ (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be specified when creating a PendingIntent.
06-09 10:52:32.389 12849 12924 E PendingIntent: Strongly consider using FLAG_IMMUTABLE, only use FLAG_MUTABLE if some functionality depends on the PendingIntent being mutable, e.g. if it needs to be used with inline replies or bubbles.
flortsch commented 1 month ago

DAVx5 had the same issue with Android 14. It seems they have sold it by treating this as a soft error and restarting their sync process: