What does "rebuild calendar display" actually do? And why necessary?

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • tbessie
    Senior Member
    • Jun 2010
    • 378

    #1

    What does "rebuild calendar display" actually do? And why necessary?

    I am on vacation, and set a repeating event "My Vacation" for every day on this trip.

    I changed timezones for this trip, and recently took a look at my calendar display; I noticed that several of these "My vacation" events (which were "all day"/no-time events) were appearing on the same day, even though it wasn't that way before.

    I did a "rebuild calendar display", and it fixed it.

    Why does this happen in the first place, and why is "rebuild calendar display" necessary? I had no crashes or bad syncs, so why should I need to do this kind of database maintenance?

    - Tim
    Sony XZ2 Compact - Android 10.0 (stock)
    DejaOffice (always latest version), CompanionLink Professional (always latest version)
    Outlook 2010 - CL Sync : Outlook <-(WiFi)-> Android
  • DJOCTO
    Senior Member
    • Apr 2010
    • 2386

    #2
    Rebuild - is actually creating temporary instances of recurring events. It has no effect on non-recurring events.

    The Display instances are used to show "virtual events" when there is a recurring pattern. Rebuild is needed as you move forward and back to show the recurring patterns on the day view. The display objects are persistent, so once they are built, they stay around for the session to save time as you move around the calendar.

    Occasionally the temporary objects either a) fail to build right, or b) aren't updated after a sync or some other operation. So we add a manual option to rebuild. In the past this has occasionally helped some people as a temporary workaround while we fix a bug. It is not intended for daily use since the build operation -should- be automatic.

    I hope this makes sense.

    Comment

    • tbessie
      Senior Member
      • Jun 2010
      • 378

      #3
      Originally posted by DJOCTO View Post
      Rebuild - is actually creating temporary instances of recurring events. It has no effect on non-recurring events.

      The Display instances are used to show "virtual events" when there is a recurring pattern. Rebuild is needed as you move forward and back to show the recurring patterns on the day view. The display objects are persistent, so once they are built, they stay around for the session to save time as you move around the calendar.

      Occasionally the temporary objects either a) fail to build right, or b) aren't updated after a sync or some other operation. So we add a manual option to rebuild. In the past this has occasionally helped some people as a temporary workaround while we fix a bug. It is not intended for daily use since the build operation -should- be automatic.

      I hope this makes sense.
      Thank CTO! I understand better now - too bad the phones don't have the horsepower to make this kind of thing unnecessary (i.e. where you could design purely with an elegant data model in mind and it would be fast enough). Some day I will try some Android development so I can know firsthand what the limitations are.

      I'm still curious what might cause these objects to be built incorrectly, or to "go bad" once built. These were created in Outlook and synced once.

      - Tim
      Sony XZ2 Compact - Android 10.0 (stock)
      DejaOffice (always latest version), CompanionLink Professional (always latest version)
      Outlook 2010 - CL Sync : Outlook <-(WiFi)-> Android

      Comment

      • DJOCTO
        Senior Member
        • Apr 2010
        • 2386

        #4
        The issue is how to display items on a day view that don't exist on that day. They don't exist, because they are a recurring pattern from a prior day.

        For Android, we call these "display records" because they are created only for the display, and are not permanently stored.

        Comment

        • WhoWhatWhen
          Member
          • Jun 2013
          • 98

          #5
          I know this is an old thread, but this seemed a relevant place to post this. My experience (at least lately) has been that Rebuild effects non-recurring events as well. A common thing in my situation is I'll notice that an event on my Note 8 is showing on a different day than I know it to be on my desktop (and/or it's Category has not been update to match the desktop)--Rebuilding the Calendar Display consistently fixes these issues (but is a pain to have to manually do all the time). It should be noted that I have had consistent syncing issues with my Note 8 and DJO for a long time (which I'm in communication with Support about), so that likely is playing a significant role here. But I nonetheless wanted to post this here as my interpretation of my experience is different than what I'm reading above regarding Rebuild, and I'm curious as to why that is (since it seems Rebuild shouldn't be able to correct the non-recurring events that I'm seeing get updated by performing a Rebuild).
          Devices: Motorola Moto G 5 Plus, Android 7.0. Samsung Galaxy Tab S3.
          Software: Windows 10 Pro x64. Outlook 2016. Deja Office 4.3.9 (build 1025).

          Comment

          • DJOCTO
            Senior Member
            • Apr 2010
            • 2386

            #6
            The only thing I can think of is that the internal Date Time in UTC is somehow odd for that appointment. Is the appointment near midnight such that it would be in one day under UTC but a different day under your local time? Here in the US we overlap UTC days 2/3rds of the time (16 hours out of 24 hours).

            Comment

            • WhoWhatWhen
              Member
              • Jun 2013
              • 98

              #7
              I'm in EST, and I kinda think that maybe the appointments that I've noticed getting corrected by a Rebuild are earlier in the day (ie, between 8am and 2pm EST), but I couldn't swear to it that those are the only ones.
              Devices: Motorola Moto G 5 Plus, Android 7.0. Samsung Galaxy Tab S3.
              Software: Windows 10 Pro x64. Outlook 2016. Deja Office 4.3.9 (build 1025).

              Comment

              • DJOCTO
                Senior Member
                • Apr 2010
                • 2386

                #8
                Ok. Keep an eye on it. As far as I know, Rebuild only affects display instances for recurring events.

                Comment

                • WhoWhatWhen
                  Member
                  • Jun 2013
                  • 98

                  #9
                  An update: I can definitely confirm that I have observed one-time events in DJO that only updated in DJO after performing a "Rebuild Calendar Display" (prior to the Rebuild I had performed a manual sync, but only the Rebuild updated the events). The events which observed were previously existing events which had been changed in Outlook (by changing the time, and/or duration, and/or categories). At least one event was in the morning / midday (~10am-2pm), and at least one event was in the evening (7pm+). All events are in EST. Events observed in this instance were all on July 7th.
                  Devices: Motorola Moto G 5 Plus, Android 7.0. Samsung Galaxy Tab S3.
                  Software: Windows 10 Pro x64. Outlook 2016. Deja Office 4.3.9 (build 1025).

                  Comment

                  Working...