Synchronized calendar entries disappear after three months


  • On my android smartphone all synchronized calendar entries will disappear locally exactly after three months. This also happens if I retrospectively add an appointment three months (or more) in the past. As soon as it is synchronized via DAVx⁵ it disappears from the view of all calendar apps.

    My setup is as follows:

    • Smartphone: Samsung A40
    • Server: Baikal 0.6.1
    • DAVx⁵: 3.3.9-ose

    More Details and Research

    • The issue occurs only on synchronized calendars. Entries added to the phone’s local calendar are displayed, no matter how old.
    • Entries disappear for all calendar apps (I tried the Samsung Calendar as well as Etar)
    • After adding an entry older than three months it is visible as long as no synchronization via DAVx⁵ is done. As soon as I leave the app or add another entry, the synchronization is triggered, and I can see live how the first entry disappears.
    • All entries are synchronized properly to the server, which I have confirmed. They can be displayed using other clients (not the Android phone).

    So …
    As local calendar entries are not restricted by age, and because they are visible until the very moment of synchronization, I strongly suspect DAVx⁵ to be responsible. The synchronization to the server works, but at the same time the entry is somehow made „unreadable“ for Android calendar apps.

    How can I further help to solve the issue? I have attached the debug info (minus my server addresses).debug-info.txt


  • @qwertfisch said in Synchronized calendar entries disappear after three months:

    On my android smartphone all synchronized calendar entries will disappear locally exactly after three months.

    I think it is the expected behavior of a sync client not to sync calendar data below a specific date. Check out the general CalDAV settings of DAVx5 and especially the parameter for past events synchronization. Afaik it is set to 90 days by default 😉

  • developer

    @j-ed Hi,

    This is indeed a feature. See https://www.davx5.com/manual/settings.html#caldav “Past event time limit”.


  • “It’s not a bug, it’s a feature” …

    This was a bit hidden, and frankly I did not expect such a feature (as default). Also it works not quite the way the setting in the app describes it: (translated by me from German)

    Appointments older than 90 days in the past will be ignored

    To ignore something means for me, not to do something with it. But DAVx⁵ does indeed virtually delete the local entries. This was not expected if I interpret the option as described and was kind of misleading.

    The online documentation though does a better job and clearly states that older entries “won’t show up in the calendar anymore”.

    Thanks for pointing me (again) to this setting. 🙂 I was really concerned at first that my appointments are deleted, or that there is an underlying Android/Samsung issue. Sorry for reporting an issue unnecessarily.

  • developer

    @qwertfisch said in Synchronized calendar entries disappear after three months:

    “It’s not a bug, it’s a feature” …

    🙂

    This was a bit hidden, and frankly I did not expect such a feature (as default).

    It’s actually quite important for scaling. Calendars may have thousands or more events in the past (lets assume a calendar with 2 – 3 events/day * 365 days = 1000 events/day * 10 years = 10000 events), which shouldn’t be checked at every sync nor downloaded at all because in most cases, people won’t need it and it causes much traffic and potential problems.

    Also it works not quite the way the setting in the app describes it: (translated by me from German)

    Appointments older than 90 days in the past will be ignored

    To ignore something means for me, not to do something with it. But DAVx⁵ does indeed virtually delete the local entries. This was not expected if I interpret the option as described
    and was kind of misleading.

    I agree that this wording is not exact. DAVx⁵ has (like CalDAV in general) a server-centric view, so it means that events older than 90 days on the server will be ignored and not downloaded.

Similar topics