View Issue Details

IDProjectCategoryView StatusLast Update
0002674SOGoBackend Generalpublic2015-01-09 21:05
Reporterpepelton Assigned To 
PrioritynormalSeverityfeatureReproducibilityalways
Status newResolutionopen 
Product Version2.1.1b 
Summary0002674: Event from WP8 phone synced with PHP-Push-2 crashes Sogo and make calendar unavailable
Description

A recurring event created with WP8 phone (Nokia Lumia) and synced through ActiveSync provided by PHP-Push-2 to SOGo creates an exception / SOGo crash. This makes the calendar unavailable (blank) in SOGo web interface. I am unsure whether PHP-Push-2 or the WP8 software is to blame.

Steps To Reproduce

Restore this event with sogo-tool:

    {
        "c_content" = "BEGIN:VCALENDAR

PRODID:-//php-push//NONSGML PHP-Push Calendar//EN
VERSION:2.0
CALSCALE:GREGORIAN
BEGIN:VEVENT
DTSTAMP:20140319T142617Z
LAST-MODIFIED:20140319T142617Z
DTSTART:20131014T173000Z
SUMMARY:PR-Klubi\, lentis
LOCATION:Kaivokselan koulu
DTEND:20131014T190000Z
RRULE:FREQ=WEEKLY;INTERVAL=2;UNTIL=20140511T210000Z;BYDAY=MO
CLASS:PUBLIC
TRANSP:OPAQUE
STATUS:CONFIRMED
UID:000000001835BD4D1E3D3041B89444C7D7582C1F0700C23588103A9641478A59C6DABAB
4BD3B0000000002020000C23588103A9641478A59C6DABAB4BD3B0000000008A40000
BEGIN:VALARM
ACTION:DISPLAY
TRIGGER:-PT15M
END:VALARM
END:VEVENT
BEGIN:VEVENT
RECURRENCE-ID:20140331T173000Z
UID:000000001835BD4D1E3D3041B89444C7D7582C1F0700C23588103A9641478A59C6DABAB
4BD3B0000000002020000C23588103A9641478A59C6DABAB4BD3B0000000008A40000
DURATION:PT1H
END:VEVENT
END:VCALENDAR";
"c_name" = "000000001835BD4D1E3D3041B89444C7D7582C1F0700C23588103A9641478A59C6DABAB4BD3B0000000002020000C23588103A9641478A59C6DABAB4BD3B0000000008A40000.ics";
}

After the restore the calendar becomes unavailable.

Additional Information

When loading the calendar with the problematic event these erorr messages appear in SOGo log:

Mar 21 18:39:54 sogod [5157]: <0xB4D253EC[SOGoAppointmentFolder]:personal> missing 'c_startdate' in record?
Mar 21 18:39:54 sogod [5157]:
<0xB4D253EC[SOGoAppointmentFolder]:personal>
missing 'c_enddate' in record?

2014-03-21 18:39:54.634 sogod[5157] NGCalendarDateRange.m:37 Assertion failed in NGCalendarDateRange(instance), method initWithStartDate:endDate:. startDate MUST NOT be nil!

EXCEPTION: <NSException: 0xb4d82274> NAME:NSInternalInconsistencyException REASON:NGCalendarDateRange.m:37 Assertion failed in NGCalendarDateRange(instance), method initWithStartDate:endDate:. startDate MUST NOT be nil! INFO:(null)
EXCEPTION: <NSException: 0xb4dfad54> NAME:NSInvalidArgumentException REASON:nil argument for compare: INFO:(null)
Mar 21 18:39:54 sogod [1812]: <0x0xb5560b94[WOWatchDogChild]> child 4319 exited
Mar 21 18:39:54 sogod [1812]: <0x0xb5560b94[WOWatchDogChild]> (terminated due to signal 6, coredump)
Mar 21 18:39:54 sogod [1812]: <0x0xb52bd12c[WOWatchDog]> child spawned with pid 5184
Mar 21 18:39:55 sogod [1812]: <0x0xb4fa31d4[WOWatchDogChild]> child 5157 exited
Mar 21 18:39:55 sogod [1812]: <0x0xb4fa31d4[WOWatchDogChild]> (terminated due to signal 6, coredump)
Mar 21 18:39:55 sogod [1812]: <0x0xb52bd12c[WOWatchDog]> child spawned with pid 5186
Mar 21 18:39:57 sogod [5186]: <0x0xb506613c[SOGoCache]> Cache cleanup interval set every 300.000000 seconds

TagsNo tags attached.

Activities

Christian Mack

Christian Mack

2014-03-24 16:12

developer   ~0006766

Sorry, but PHP-Push-2 is not an Inverse product.
So there is no support for it here.

Does this happen with the builtin ActiveSync support with sogo-activesync package too?

pepelton

pepelton

2014-03-24 21:30

reporter   ~0006774

I understand this and just wanted to report the problem as it crashes SOGo: At least in my opinion if an error in parsing an event is encountered, then this event should be skipped and not to cause a crash and make the whole calendar unusable, right?

I have not yet had the chance to try out the builtin ActiveSync. When I do, I will report if I run into same kind of problems with WP mobiles.

Christian Mack

Christian Mack

2014-03-25 08:24

developer   ~0006778

You are right, SOGo should not crash!!!
I just wanted to make clear, that PHP-Push-2 will not be fixed here.

Thank you for testing WP mobiles.

ludovic

ludovic

2014-03-28 18:51

reporter   ~0006803

We don't handle RECURRENCE-ID with only a DURATION field.

We should handle that.

Issue History

Date Modified Username Field Change
2014-03-21 19:55 pepelton New Issue
2014-03-24 16:12 Christian Mack Note Added: 0006766
2014-03-24 21:30 pepelton Note Added: 0006774
2014-03-25 08:24 Christian Mack Note Added: 0006778
2014-03-28 18:51 ludovic Note Added: 0006803
2015-01-09 21:05 ludovic Severity crash => feature
2015-01-09 21:05 ludovic Category ActiveSync => Backend General