Dependency Graph

Dependency Graph
related to related to child of child of duplicate of duplicate of

View Issue Details

IDProjectCategoryView StatusLast Update
0004845SOGoWeb Calendarpublic2021-10-28 17:08
Reporterabma Assigned Tofrancis  
PrioritynormalSeveritymajorReproducibilityhave not tried
Status resolvedResolutionfixed 
Product Version4.0.8 
Fixed in Version4.2.0 
Summary0004845: "Request failed" when trying to view/edit an event
Description

its possible to create events in SOGo which can't be edited or deleted any more.

Steps To Reproduce

import the attached file, try to open or delete the event

-> request failed

Additional Information

from sogo.log:

Oct 07 18:41:08 sogod [12036]: |SOGo| starting method 'GET' on uri '/SOGo/so/user/Calendar/personal/2F05-5D9B6280-2B-19A3F3C0.ics/view'
2019-10-07 18:41:08.655 sogod[12036:12036] EXCEPTION: <NSException: 0x5593c1fe1c30> NAME:NSInvalidArgumentException REASON:Tried to add nil value for key 'localizedStartTime' to dictionary INFO:{calendar = "Pers\U00F6nlicher Kalender"; id = "2F05-5D9B6280-2B-19A3F3C0.ics"; isAllDay = 0; isReadOnly = 0; pid = personal; userHasRSVP = 0; }
Oct 07 18:41:08 sogod [12036]: |SOGo| request took 0.017255 seconds to execute
Oct 07 18:41:08 sogod [12036]: 192.168.101.113 "GET /SOGo/so/user/Calendar/personal/2F05-5D9B6280-2B-19A3F3C0.ics/view HTTP/1.1" 501 0/0 0.019 - - 0

TagsNo tags attached.

Relationships

has duplicate 0005318 closedfrancis NSInvalidArgumentException REASON:Tried to add nil value for key 'localizedStartTime' to dictionary 

Activities

abma

abma

2019-10-07 16:43

reporter  

test.ics (698 bytes)   
BEGIN:VCALENDAR
PRODID:-//Inverse inc./SOGo 4.0.8//EN
VERSION:2.0
METHOD:PUBLISH
BEGIN:VTIMEZONE
TZID:America/Montreal
X-LIC-LOCATION:America/Montreal
BEGIN:DAYLIGHT
TZOFFSETFROM:-0500
TZOFFSETTO:-0400
TZNAME:EDT
DTSTART:19700308T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:-0400
TZOFFSETTO:-0500
TZNAME:EST
DTSTART:19701101T020000
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
UID:2F05-5D9B6280-2B-19A3F3C0
SUMMARY:Test
LOCATION:Test
CLASS:PUBLIC
TRANSP:TRANSPARENT
CREATED:20191007T160848Z
DTSTAMP:20191007T160848Z
LAST-MODIFIED:20191007T160848Z
END:VEVENT
X-WR-CALNAME:test
END:VCALENDAR
test.ics (698 bytes)   
abma

abma

2019-10-07 16:45

reporter   ~0013810

can be reproduced on demo.sogo.nu, too.

Christian Mack

Christian Mack

2019-10-08 13:27

developer   ~0013817

An appointment without start and end date.
How did you create that?

abma

abma

2019-10-08 15:19

reporter   ~0013818

create new event:
title: test
and then delete all values from "from" and "to"

-> save

abma

abma

2019-10-11 12:33

reporter   ~0013830

the error still can be reproduced when importing the .ics file.

AFAIK there are still several ways to add/create such an invalid entry:

  • import .ics
  • invitation
  • via an external caldav client like thunderbird

the bad thing IMHO is, that such an entry can't be edited or changed or deleted in SOGo.

bpE52AOfxlfLyo4

bpE52AOfxlfLyo4

2019-11-24 02:50

reporter   ~0013921

Last edited: 2019-11-24 02:58

same problem here. any way to fix this ?

11:48:53.507 sogod[5671:5671] EXCEPTION: &lt;NSException: 0x55fce4cdddb0> NAME:NSInvalidArgumentException REASON:Tried to add nil value for key 'localizedStartTime' to dictionary INFO:{calendar = &quot;Personal Calendar&quot;; id = &quot;34f9ff5b-51a7-4af0-abb1-fe5afa1e50f9.ics&quot;; isAllDay = 0; isReadOnly = 0; pid = personal; userHasRSVP = 0; }

I'm on sogo 4.1.1 and this event cannot be edit or deleted.
Also because is my Personal Calendar I cannot even delete the calendar all togheter.

the bad thing IMHO is, that such an entry can't be edited or changed or deleted in SOGo.

strongly agree!

briest

briest

2020-01-10 18:20

reporter   ~0014056

I don't know if the problem is related, but I get the same error -- and I've just updated SOGo to version 4.2.0 (@shiva2.inverse 202001100157).

I have imported an .ics file to preexisting calendar and noticed, that:

  • import raised no errors, notification of many (7000+) events imported appeared
  • many events in calendar are shown as "(public event)"
  • on click, UI shows "(!) Request failed" and event does not open
  • sogo logs "2020-01-10 18:37:50.380 sogod[32342] EXCEPTION: <NSException: 0x7fd7e8bd2fa0> NAME:NSInvalidArgumentException REASON:Tried to add nil value for key 'localizedStartTime' to dictionary INFO:{calendar = astro; id = "B3BA5703-33AC-4676-B151-DEF4922B1F10.ics"; isAllDay = 0; isReadOnly = 0; pid = "4F64-5C7AFF80-513-37F72240"; userHasRSVP = 0; }"

I have updated sogo to current nightly (by apt, so with all dependencies), after update I have removed the calendar, added new one and imported .ics file again, with the same result.

The .ics is attached; can be also downloaded from https://cantonbecker.com/astronomy-calendar/astrocal.ics (page https://cantonbecker.com/astronomy-calendar/). I have used the calendar in previous years (and previous SOGo versions, since from 2.x times) and this is first time I get the problem. Maybe for 2020 it was generated in slightly different way? Sadly, I have no .ics files from past years.

astrocal.ics (319,553 bytes)
schmirl

schmirl

2020-11-03 14:31

reporter   ~0014916

One of our customers suffers from the same problem as "briest" now. SOGo is 4.3.0.
The customer mostly uses ActiveSync and frequently creates events with more than 10 local attendees. Once in a while Outlook starts to crash when syncing. In the SOGo UI the calender then contains the events with title "(public event)" which report "Request failed" when clicking and with the Exception "briest" describes in the previous posting.

So we have the same event which is distributed to other local SOGo users. For most attendees the event appears in their personal calendars and looks absolutely sane. They can sync it with Outlook and they can access it via SOGo UI. But one or two users have the "(public event)" entry displayed in their calendars. Looking into the database, they don't have that event in their personal calendars at all - neither in sogo_store nor in sogo_quick_appointment! I also restarted memcached - the "(public event)" still appears. Where else does SOGo store these entries? Any idea how to track that down on a life system without bothering the users too much?

fredward

fredward

2021-05-11 12:48

reporter   ~0015249

I have the same problem with SOGo 5.1.0. I created an event via the Thunderbird "Convert E-Mail to Event" function and now, I have an appointment without a start time leading to errors in DAVx5 (see attachment) and an event in the sogo web UI that is not accessible.
Sogo.log entroies:

05/11/2021, 2:34:59 PM notice [75]: 172.22.1.1 "GET /SOGo/so/fc[...]/Calendar/personal/fd4b975b-12f1-4efc-aa1a-d12b77d4537b.ics/view HTTP/1.0" 501 0/0 0.007 - - 0 - 13
05/11/2021, 2:34:59 PM notice 14:34:59.380 sogod[75:75] EXCEPTION: <NSException: 0x563a211389c0> NAME:NSInvalidArgumentException REASON:Tried to add nil value for key 'localizedStartTime' to dictionary INFO:{calendar = "Personal Calendar"; id = "fd4b975b-12f1-4efc-aa1a-d12b77d4537b.ics"; isAllDay = 0; isReadOnly = 0; pid = personal; userHasRSVP = 0; }

debug-info.txt (2,164 bytes)   
--- BEGIN DEBUG INFO ---

SYNCHRONIZATION INFO
Account: Account {name=fc@ntr.li, type=bitfire.at.davdroid}
Authority: com.android.calendar

EXCEPTION
at.bitfire.dav4jvm.exception.DavException: Received multi-get response without address data
	at at.bitfire.davdroid.syncadapter.CalendarSyncManager$downloadRemote$1$1$1.invoke(CalendarSyncManager.kt:9)
	at at.bitfire.davdroid.syncadapter.CalendarSyncManager$downloadRemote$1$1$1.invoke(CalendarSyncManager.kt:1)
	at at.bitfire.davdroid.syncadapter.SyncManager.responseExceptionContext(SyncManager.kt:1)
	at at.bitfire.davdroid.syncadapter.CalendarSyncManager$downloadRemote$1$1.invoke(CalendarSyncManager.kt:2)
	at at.bitfire.davdroid.syncadapter.CalendarSyncManager$downloadRemote$1$1.invoke(CalendarSyncManager.kt:1)
	at at.bitfire.dav4jvm.Response$Companion.parse(Response.kt:46)
	at at.bitfire.dav4jvm.DavResource$processMultiStatus$2.invoke(DavResource.kt:9)
	at at.bitfire.dav4jvm.DavResource.processMultiStatus(DavResource.kt:14)
	at at.bitfire.dav4jvm.DavResource.processMultiStatus(DavResource.kt:5)
	at at.bitfire.dav4jvm.DavCalendar.multiget(DavCalendar.kt:10)
	at at.bitfire.davdroid.syncadapter.CalendarSyncManager$downloadRemote$1.invoke(CalendarSyncManager.kt:2)
	at at.bitfire.davdroid.syncadapter.CalendarSyncManager$downloadRemote$1.invoke(CalendarSyncManager.kt:1)
	at at.bitfire.davdroid.syncadapter.SyncManager.remoteExceptionContext(SyncManager.kt:1)
	at at.bitfire.davdroid.syncadapter.SyncManager.remoteExceptionContext(SyncManager.kt:8)
	at at.bitfire.davdroid.syncadapter.CalendarSyncManager.downloadRemote(CalendarSyncManager.kt:2)
	at at.bitfire.davdroid.syncadapter.SyncManager$syncRemote$1$1$1.invokeSuspend(SyncManager.kt:2)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:3)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:15)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(Thread.java:919)

REMOTE RESOURCE
https://[...]]/Calendar/personal/60720cd1-566f-412b-bea0-e5bfaa27ce6d.ics
debug-info.txt (2,164 bytes)   
fredward

fredward

2021-05-11 13:55

reporter   ~0015250

I could delete the causing event by using a webdav-client (cadaver) on the calendar url, displayed at "Links to this Calendar".

francis

francis

2021-05-11 17:36

administrator   ~0015251

Please provide a vCalendar/vEvent that raises the exception.

fredward

fredward

2021-05-12 09:51

reporter   ~0015254

Hello Francis and thanks for looking into this.
Do you have an idea how I can download the failing vCalendar item from SOGo (database table, ...) ? Via webdav, I can only delete the .ics file. The downloaded file is empty.
Or would it be better to hook the thunderbird connection and intercept the creation of the failing vCard?

francis

francis

2021-05-12 20:01

administrator   ~0015256

You can perform a cat in cadaver.

fredward

fredward

2021-05-12 20:55

reporter   ~0015257

A cat in cadaveron the failing .ics returns an empty response . Other .ics generate correct outputs.

schmirl

schmirl

2021-05-13 07:46

reporter   ~0015258

Unfortunately I didn't keep one of the broken events we discovered, but here is the SQL statement that worked for me to find them:

select c_folder_id,c_content from sogo_store where c_content like '%BEGIN:VEVENT%' and c_content not like '%DTSTART%';

In our case the events had multiple attendees and only one or two of them were broken. Grab the UID value from one of the events returned above to see if there's also a clean version of the same event in your database:
select c_folder_id,c_content from sogo_store where c_name like '%FILL_IN_UID_VALUE%';

Related Changesets

sogo: master 7bc73b6f

2019-10-10 14:22

francis


Details Diff
(js) Fix handling of times in task/event editors

Fixes 0004497
Fixes 0004845
Affected Issues
0004497, 0004845
mod - UI/Templates/SchedulerUI/UIxAppointmentEditorTemplate.wox Diff File
mod - UI/Templates/SchedulerUI/UIxTaskEditorTemplate.wox Diff File
mod - UI/WebServerResources/js/Scheduler/ComponentController.js Diff File

sogo: master 3bb40e40

2019-11-27 17:00

francis


Details Diff
fix(calendar): adjust invalid dates when importing a vEvent

Fixes 0004845
Affected Issues
0004845
mod - SoObjects/Appointments/SOGoAppointmentFolder.m Diff File
mod - SoObjects/Appointments/SOGoAppointmentObject.m Diff File
mod - SoObjects/Appointments/iCalEvent+SOGo.h Diff File
mod - SoObjects/Appointments/iCalEvent+SOGo.m Diff File
mod - SoObjects/SOGo/NSCalendarDate+SOGo.h Diff File
mod - SoObjects/SOGo/NSCalendarDate+SOGo.m Diff File

sogo: master 15d7c69d

2019-12-16 10:48

francis


Details Diff
fix(calendar): adjust invalid dates when importing a vEvent

Fixes 0004845
Affected Issues
0004845
mod - SoObjects/Appointments/iCalEvent+SOGo.m Diff File

Issue History

Date Modified Username Field Change
2019-10-07 16:43 abma New Issue
2019-10-07 16:43 abma File Added: test.ics
2019-10-07 16:45 abma Note Added: 0013810
2019-10-08 13:27 Christian Mack Note Added: 0013817
2019-10-08 15:19 abma Note Added: 0013818
2019-10-10 18:23 francis Changeset attached => sogo master 7bc73b6f
2019-10-10 18:23 francis Assigned To => francis
2019-10-10 18:23 francis Resolution open => fixed
2019-10-10 18:24 francis Status new => resolved
2019-10-10 18:24 francis Fixed in Version => 4.1.0
2019-10-11 12:33 abma Note Added: 0013830
2019-10-11 12:33 abma Status resolved => feedback
2019-10-11 12:33 abma Resolution fixed => reopened
2019-11-24 02:50 bpE52AOfxlfLyo4 Note Added: 0013921
2019-11-24 02:51 bpE52AOfxlfLyo4 Note Edited: 0013921
2019-11-24 02:55 bpE52AOfxlfLyo4 Note Edited: 0013921
2019-11-24 02:56 bpE52AOfxlfLyo4 Note Edited: 0013921
2019-11-24 02:58 bpE52AOfxlfLyo4 Note Edited: 0013921
2019-11-27 22:03 francis Changeset attached => sogo master 3bb40e40
2019-11-27 22:03 francis Fixed in Version 4.1.0 => 4.2.0
2019-12-16 15:48 francis Changeset attached => sogo master 15d7c69d
2019-12-16 15:48 francis Resolution reopened => fixed
2020-01-10 18:20 briest File Added: astrocal.ics
2020-01-10 18:20 briest Note Added: 0014056
2020-11-03 14:31 schmirl Note Added: 0014916
2021-05-11 12:48 fredward Note Added: 0015249
2021-05-11 12:48 fredward File Added: debug-info.txt
2021-05-11 13:55 fredward Note Added: 0015250
2021-05-11 17:36 francis Note Added: 0015251
2021-05-12 09:51 fredward Note Added: 0015254
2021-05-12 20:01 francis Note Added: 0015256
2021-05-12 20:17 francis Relationship added has duplicate 0005318
2021-05-12 20:55 fredward Note Added: 0015257
2021-05-13 07:46 schmirl Note Added: 0015258
2021-10-28 17:08 francis Status feedback => resolved