Uploaded image for project: 'Confluence Data Center'
  1. Confluence Data Center
  2. CONFSERVER-57603

Team Calendar issue while creating Any Events

XMLWordPrintable

      Bug report

      Summary

      When a Confluence user creates birthday event setting 'END' to year 2090 for example. Also, has recurring set to "Yearly", Reminder set for 5 minutes.

      The above set up results in event not showing up in the UI but registered in DB (Tablename : AO950DC3_TC_EVENTS)

      Every 5 minutes logs get spammed with below entries,

      2018-10-23 04:40:00,166 ERROR [team-calendars-worker-2] [extra.calendar3.util.DefaultAsynchronousTaskExecutor] call Exception happens on task execution:
      java.lang.IllegalArgumentException: Range start must be before range end
      	at net.fortuna.ical4j.model.DateRange.<init>(DateRange.java:71)
      	at net.fortuna.ical4j.model.Period.<init>(Period.java:101)
      
      Steps to Reproduce
      1. Create birthday event in Team Calendar
      2. Set the start date and end date (for example 3rd December 2018 - 3rd December 2090)
      3. Set the Recurrence as Yearly
      4. Set Reminder for 5 minutes
      5. Issue was reproducible in Team Calendar version 6.0.22, 6.0.25 and 6.0.27
      Expected Results

      Event should not be created and an error message indicating end date is not valid

      Actual Results

      UI doesn't display the event

      Workaround

      Identify and delete the event from the DB. Following SQL query might help in identifying the large duration (range) values:

      select "AO_950DC3_TC_SUBCALS"."ID",  "AO_950DC3_TC_EVENTS"."ID",   "START", to_timestamp("START" / 1000) as START_DATE, "END", to_timestamp("END" / 1000) as END_DATE, DATE_PART('day', to_timestamp("END" / 1000) - to_timestamp("START" / 1000)) as EventDurationDays,  "RECURRENCE_RULE", "SUB_CALENDAR_ID", "UTC_START", "UTC_END"
      FROM "AO_950DC3_TC_EVENTS" inner join "AO_950DC3_TC_SUBCALS" on "AO_950DC3_TC_EVENTS"."SUB_CALENDAR_ID" = "AO_950DC3_TC_SUBCALS"."ID"
      where DATE_PART('day', to_timestamp("END" / 1000) - to_timestamp("START" / 1000)) > 50
      

      Note:
      This is affecting any events created and not just Birthday events.

              aknight@atlassian.com Alex K
              cathikary Chandu
              Votes:
              6 Vote for this issue
              Watchers:
              6 Start watching this issue

                Created:
                Updated:
                Resolved: