CardDAV sync issues with new phone #346
Replies: 3 comments 4 replies
-
Sounds like Axigen sends contacts without ETag so that they can't be synchronized. Do you have a test account? Please send it to the email address at the top of @bitfireAT so that we can have a look, but it looks like an Axigen problem. |
Beta Was this translation helpful? Give feedback.
-
This problem was already reported to Axigen in March this year, it was received and forwarded to the technical team in May. They told me that it has to do with encoding problems between ISO-8859-1 and UTF-8 and they try to fix it. |
Beta Was this translation helpful? Give feedback.
-
I have not seen it again, ... or ... well ... seldom an error is indicated in the notifications, but they disappear ~ 1-2 hours later ... so not worth a mention.
I would say, that issue seems to be solved. 👍
Am 29. Oktober 2024 19:59:32 MEZ schrieb Torsten Grote ***@***.***>:
…
@tbindewald did something come of this? After years of using Kolab, I not get the same error with them as well. They use SabreDAV under the hood.
--
Reply to this email directly or view it on GitHub:
#346 (reply in thread)
You are receiving this because you were mentioned.
Message ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
I've been an Axigen email server for a few years and have been using DAVx sync contacts and calendar to my Android 11 phone. I just replaced my phone with an Android 13 and when I tried to setup DAVx5 (version 4.3.4.1-ose) to sync my contacts, I keep getting errors. I've looked at the logs and not sure exactly why it's failing, but the contacts definitely aren't syncing. CalDAV works fine with the same account, device and DAVx5.
The exception error that I'm getting an talks about "Received multi-get response without ETag":
Debug Info:
EXCEPTION at.bitfire.dav4jvm.exception.DavException: Received multi-get response without ETag at at.bitfire.davdroid.syncadapter.ContactsSyncManager$downloadRemote$1$1$onResponse$1.invoke(ContactsSyncManager.kt:12) at at.bitfire.davdroid.syncadapter.ContactsSyncManager$downloadRemote$1$1$onResponse$1.invoke(ContactsSyncManager.kt:1) at at.bitfire.davdroid.syncadapter.SyncManager.responseExceptionContext(SyncManager.kt:13) at at.bitfire.davdroid.syncadapter.ContactsSyncManager$downloadRemote$1$1.onResponse(ContactsSyncManager.kt:18) at at.bitfire.dav4jvm.Response$Companion.parse(Response.kt:308) at at.bitfire.dav4jvm.DavResource.processMultiStatus$parseMultiStatus(DavResource.kt:51) at at.bitfire.dav4jvm.DavResource.processMultiStatus(DavResource.kt:16) at at.bitfire.dav4jvm.DavResource.processMultiStatus(DavResource.kt:9) at at.bitfire.dav4jvm.DavAddressBook.multiget(DavAddressBook.kt:69) at at.bitfire.davdroid.syncadapter.ContactsSyncManager$downloadRemote$1.invoke(ContactsSyncManager.kt:10) at at.bitfire.davdroid.syncadapter.ContactsSyncManager$downloadRemote$1.invoke(ContactsSyncManager.kt:1) at at.bitfire.davdroid.syncadapter.SyncManager.remoteExceptionContext(SyncManager.kt:1) at at.bitfire.davdroid.syncadapter.SyncManager.remoteExceptionContext(SyncManager.kt:5) at at.bitfire.davdroid.syncadapter.ContactsSyncManager.downloadRemote(ContactsSyncManager.kt:46) at at.bitfire.davdroid.syncadapter.SyncManager$syncRemote$1$download$1.invokeSuspend(SyncManager.kt:12) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:9) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:112) at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:163) at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source:103) at at.bitfire.davdroid.syncadapter.SyncManager.syncRemote(SyncManager.kt:41) at at.bitfire.davdroid.syncadapter.SyncManager$performSync$1.invoke(SyncManager.kt:29) at at.bitfire.davdroid.syncadapter.SyncManager$performSync$1.invoke(SyncManager.kt:1) at at.bitfire.davdroid.syncadapter.SyncManager.unwrapExceptions(SyncManager.kt:2) at at.bitfire.davdroid.syncadapter.SyncManager.performSync(SyncManager.kt:20) at at.bitfire.davdroid.syncadapter.ContactSyncer.sync(ContactSyncer.kt:218) at at.bitfire.davdroid.syncadapter.Syncer.onPerformSync(Syncer.kt:120) at at.bitfire.davdroid.syncadapter.SyncWorker.doWork(SyncWorker.kt:367) at androidx.work.Worker$1.run(Worker.java:3) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637) at java.lang.Thread.run(Thread.java:1012)
Example error info from the logcat file:
06-19 16:39:41.805 17326 18585 W davx5 : [syncadapter.SyncWorker] Hard error while syncing: result=SyncResult: stats [ numParseExceptions: 1 numUpdates: 23], stats= stats [ numParseExceptions: 1 numUpdates: 23] 06-19 16:39:41.807 17326 17363 I WM-WorkerWrapper: Worker result FAILURE for Work [ id=702e4c79-3c65-4ac9-a456-5ab3f783b344, tags={ at.bitfire.davdroid.syncadapter.SyncWorker, sync } ] 06-19 16:39:41.818 17326 17326 D ConnectivityManager: StackLog: [android.net.ConnectivityManager.unregisterNetworkCallback(ConnectivityManager.java:4972)] [androidx.work.impl.utils.NetworkApi21.unregisterNetworkCallbackCompat(NetworkApi21.kt:11)] [androidx.work.impl.constraints.trackers.NetworkStateTracker24.stopTracking(NetworkStateTracker.kt:18)] [androidx.work.impl.constraints.trackers.ConstraintTracker.removeListener(ConstraintTracker.kt:25)] [androidx.work.impl.constraints.controllers.ConstraintController.replace(ConstraintController.kt:82)] [androidx.work.impl.constraints.WorkConstraintsTrackerImpl.replace(WorkConstraintsTracker.kt:42)] [androidx.work.impl.background.greedy.GreedyScheduler.onExecuted(GreedyScheduler.java:72)] [androidx.work.impl.Processor.onExecuted(Processor.java:86)] [androidx.work.impl.Processor$FutureListener.run(Processor.java:19)] 06-19 16:39:51.585 17326 17326 I ViewRootImpl@76de6a7[DebugInfoActivity]: stopped(false) old = true
I've followed the steps on the website,, but it hasn't helped. Now, I constantly get notifications from DAVx5 that there's an error.
Anyone have any suggestions what I can look at? I haven't not made any changes to the server, so I'm thinking I just need to make a change to Android to make it work on this phone. I've gone through all the obvious (at least to me), and even set it as a foreground process. I've also changed how the client connects to the server just in case discovery wasn't working right.
Beta Was this translation helpful? Give feedback.
All reactions