Closed Bug 881214 Opened 11 years ago Closed 11 years ago

When importing CalDAV calendar, repeated events are ignored

Categories

(Firefox OS Graveyard :: Gaia::Calendar, defect)

x86_64
Linux
defect
Not set
normal

Tracking

(blocking-b2g:koi+)

VERIFIED FIXED
blocking-b2g koi+

People

(Reporter: mcepl, Assigned: gghosh)

Details

Attachments

(1 file, 8 obsolete files)

Given that I use mostly repeated events as reminders for some regular action, I was quite unhappily surprised, that all these are ignored and not imported to the Calendar.

Using Geeksphone' stable image http://downloads.geeksphone.com/peak/images-peak-2013-06-03.Gecko-08a0e76.Gaia-cf65cd8.zip (build ID 20130603202903)
Whiteboard: [v2]
This is unrelated to bug 813050.

v1 does support importing reoccurring events for imported calendars - you just cannot create them, manipulate them, etc.

I need to know:

1. What type of calendar are you importing over caldav (e.g. Zimbra)?
2. Does this reproduce consistently?
3. Do you have a logcat?
No longer depends on: 813050
Whiteboard: [v2] → 0
(In reply to Jason Smith [:jsmith] from comment #1)
> 1. What type of calendar are you importing over caldav (e.g. Zimbra)?

Zarafa (zarafa-ical-7.0.13-1.el6.i686 from Fedora EPEL packages on RHEL-6).

> 2. Does this reproduce consistently?

Yes. I can send 

> 3. Do you have a logcat?

OK, so logcat is bad:

matej@wycliff: ~$ adb logcat GeckoDump:V Gecko:V *:S|tee logcat01.txt
--------- beginning of /dev/log/system
--------- beginning of /dev/log/main
I/GeckoDump(  662): XXX FIXME : Got a mozContentEvent: accessibility-screenreader
I/Gecko   (  729): ###################################### forms.js loaded
I/Gecko   (  729): ############################### browserElementPanning.js loaded
I/Gecko   (  729): ######################## BrowserElementChildPreload.js loaded
I/Gecko   (  728): ###################################### forms.js loaded
I/Gecko   (  728): ############################### browserElementPanning.js loaded
I/Gecko   (  728): ######################## BrowserElementChildPreload.js loaded
I/Gecko   (  781): ###################################### forms.js loaded
I/Gecko   (  781): ############################### browserElementPanning.js loaded
I/Gecko   (  781): ######################## BrowserElementChildPreload.js loaded
I/Gecko   (  830): ###################################### forms.js loaded
I/Gecko   (  830): ############################### browserElementPanning.js loaded
I/Gecko   (  830): ######################## BrowserElementChildPreload.js loaded
I/Gecko   (  662): RIL Worker: DateTimeZone string 13/06/10,15:44:24+08,01
I/Gecko   (  874): ###################################### forms.js loaded
I/Gecko   (  874): ############################### browserElementPanning.js loaded
I/Gecko   (  874): ######################## BrowserElementChildPreload.js loaded
^C

also server side logs don't say much:
==> /var/log/zarafa/ical.log <==
Mon Jun 10 17:46:34 2013: [ 1634] Connection waiting on secure port 8443.
Mon Jun 10 17:46:34 2013: [ 1634] Accepted connection from 192.168.0.13
Mon Jun 10 17:46:34 2013: [27448] New Request
Mon Jun 10 17:46:34 2013: [27448] Request from User : matej

==> /var/log/httpd/luther.ceplovi.cz-access_log <==
[10/Jun/2013:17:46:34 +0200] 192.168.0.7 TLSv1 RC4-SHA "PROPFIND /caldav HTTP/1.1" 421

==> /var/log/zarafa/ical.log <==
Mon Jun 10 17:46:36 2013: [27448] End Of Request
Mon Jun 10 17:46:36 2013: [ 1634] Connection waiting on secure port 8443.
Mon Jun 10 17:46:36 2013: [ 1634] Accepted connection from 192.168.0.13
Mon Jun 10 17:46:36 2013: [27450] New Request
Mon Jun 10 17:46:36 2013: [27450] Request from User : matej

==> /var/log/httpd/luther.ceplovi.cz-access_log <==
[10/Jun/2013:17:46:36 +0200] 192.168.0.7 TLSv1 RC4-SHA "PROPFIND /caldav/matej/ HTTP/1.1" 376

==> /var/log/zarafa/ical.log <==
Mon Jun 10 17:46:37 2013: [27450] End Of Request
Mon Jun 10 17:46:37 2013: [ 1634] Connection waiting on secure port 8443.
Mon Jun 10 17:46:37 2013: [ 1634] Accepted connection from 192.168.0.13
Mon Jun 10 17:46:37 2013: [27452] New Request
Mon Jun 10 17:46:37 2013: [27452] Request from User : matej
Mon Jun 10 17:46:39 2013: [27452] End Of Request

==> /var/log/httpd/luther.ceplovi.cz-access_log <==
[10/Jun/2013:17:46:37 +0200] 192.168.0.7 TLSv1 RC4-SHA "PROPFIND /caldav/matej/ HTTP/1.1" 256771

==> /var/log/zarafa/ical.log <==
Mon Jun 10 17:46:39 2013: [27452] New Request
Mon Jun 10 17:46:39 2013: [27452] End Of Request
Mon Jun 10 17:46:41 2013: [ 1634] Connection waiting on secure port 8443.
Mon Jun 10 17:46:41 2013: [ 1634] Accepted connection from 192.168.0.13
Mon Jun 10 17:46:41 2013: [27454] New Request
Mon Jun 10 17:46:41 2013: [27454] Request from User : matej
Mon Jun 10 17:46:44 2013: [27454] Error converting mapi message to ical, error code : 0x8004010F
Mon Jun 10 17:46:56 2013: [27454] End Of Request

==> /var/log/httpd/luther.ceplovi.cz-access_log <==
[10/Jun/2013:17:46:41 +0200] 192.168.0.7 TLSv1 RC4-SHA "REPORT /caldav/matej/ HTTP/1.1" 333741

==> /var/log/zarafa/ical.log <==
Mon Jun 10 17:46:56 2013: [27454] New Request
Mon Jun 10 17:46:56 2013: [27454] End Of Request

------------------------------------------------------------
However, when I download CalDAV file just with curl (complete file sent via email), I can see clearly entries like

BEGIN:VEVENT
STATUS:CONFIRMED
ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=TRUE;CN=Matěj 
 Cepl:mailto:matej@ceplovi.cz
X-MOZ-SEND-INVITATIONS:TRUE
ORGANIZER;CN=Matěj Cepl:mailto:mcepl@redhat.com
TRANSP:OPAQUE
X-MICROSOFT-CDO-INTENDEDSTATUS:BUSY
CREATED:20111029T195607Z
DTSTAMP:20120901T085504Z
LAST-MODIFIED:20130607T195519Z
DTSTART;TZID="(GMT +01:00)":20111028T160000
DTEND;TZID="(GMT +01:00)":20111028T170000
SUMMARY:Status report
PRIORITY:5
CATEGORIES:http://schemas.google.com/g/2005#event
CLASS:PUBLIC
UID:
 040000008200E00074C5B7101A82E00800000000B7A1AF1703E1093E4E26D519015E70D678
 1CE761A8EDC5E33B751BD513FDFACB9FAAE2A2
SEQUENCE:52
X-MOZ-SNOOZE-TIME-1364569200000000:20130614T134500Z
X-MOZ-LASTACK:20130607T134505Z
X-MICROSOFT-CDO-OWNER-CRITICAL-CHANGE:20120901T085504Z
X-MICROSOFT-CDO-ATTENDEE-CRITICAL-CHANGE:20120901T085504Z
X-MICROSOFT-CDO-APPT-SEQUENCE:52
X-MICROSOFT-CDO-OWNERAPPTID:1177651239
X-MOZ-GENERATION:52
X-MICROSOFT-CDO-ALLDAYEVENT:FALSE
X-ZARAFA-REC-PATTERN:Occurs every week effective 28-10-2011 from 16:00 to 
 17:00.
RRULE:FREQ=WEEKLY;BYDAY=FR
EXDATE:20121228T150000Z
BEGIN:VALARM
TRIGGER;VALUE=DURATION:-PT15M
ACTION:DISPLAY
DESCRIPTION:Reminder
END:VALARM
END:VEVENT
Will take a look- nothing immediately jumps out aside from: "DTEND;TZID="(GMT +01:00)":20111028T170000" the TZID here. I doubt we support this kind of TZID so the import time might be wrong or...
Assignee: nobody → jlal
noming- but removing myself as assignee for the moment.
Assignee: jlal → nobody
blocking-b2g: --- → koi?
Assignee: nobody → gghosh
Attachment #781879 - Flags: feedback?(jlal)
Attachment #781879 - Attachment is obsolete: true
Attachment #781879 - Flags: feedback?(jlal)
Attachment #781904 - Flags: feedback?(jlal)
Attachment #781904 - Attachment is obsolete: true
Attachment #781904 - Flags: feedback?(jlal)
Attachment #782004 - Flags: feedback?(jlal)
Comment on attachment 782004 [details] [diff] [review]
Faster ops parsing, takes advantage of _parseParameters

the initial patch fixes the bug but we still degrade performance a bit...I think we can trade off some obsolete error handling and rework the parser a little to close that gap
Attachment #782004 - Flags: feedback?(jlal) → feedback+
Attachment #782004 - Attachment is obsolete: true
Attachment #784080 - Flags: review?(jlal)
Attachment #784080 - Attachment is obsolete: true
Attachment #784080 - Flags: review?(jlal)
Attachment #784504 - Flags: review?(jlal)
Attachment #784504 - Attachment is obsolete: true
Attachment #784504 - Flags: review?(jlal)
Attachment #784515 - Flags: review?(jlal)
Attachment #784515 - Attachment is obsolete: true
Attachment #784515 - Flags: review?(jlal)
Attachment #784633 - Flags: review?(jlal)
Ganesh- Great work here we have landed the code in ical.js but we need to update the gaia binary and do a round of testing. 

Can we do that here in this bug (and flag me for review on the gaia pull request)
Flags: needinfo?(gghosh)
Comment on attachment 784633 [details] [diff] [review]
Faster ops parsing, takes advantage of _parseParameters

landed in ical.js here:

https://github.com/mozilla-comm/ical.js/commit/dc1f77aace6ad18fb50537556201c63ba7881ea1
Attachment #784633 - Flags: review?(jlal) → review+
Attached patch Adds browser build (obsolete) — Splinter Review
Attachment #784633 - Attachment is obsolete: true
Flags: needinfo?(gghosh)
Attached patch Ical gmt parserSplinter Review
Attachment #785985 - Attachment is obsolete: true
Attachment #786005 - Flags: review?(jlal)
Comment on attachment 786005 [details] [diff] [review]
Ical gmt parser

+Gareth (since I am on PTO until Wednesday) only adding you here since I am PTO... If you don't have time to look at this until Wednesday I will resume the review where I left off.
Attachment #786005 - Flags: review?(gaye)
Flags: needinfo?(jlal)
fixed, awaiting landing
blocking-b2g: koi? → koi+
https://github.com/mozilla-b2g/gaia/commit/171e8f0965e4e169142e44fc8a3b403e37765d90
Status: NEW → RESOLVED
Closed: 11 years ago
Flags: needinfo?(jlal)
Resolution: --- → FIXED
Attachment #786005 - Flags: review?(jlal)
Attachment #786005 - Flags: review?(gaye)
Attachment #786005 - Flags: review?
Attachment #786005 - Flags: review+
Verified Fixed: User is able to import a calendar via CalDav and retain repeating events information.

Environmental Variables
Device: Buri v1.2 COM RIL
Build ID: 20131106004004
Gecko: http://hg.mozilla.org/releases/mozilla-b2g26_v1_2/rev/6a831fcb96f4
Gaia: 2140c987fdde1c99097018f7e93b0bbd43d2125d
Platform Version: 26.0
RIL Version: 01.01.00.019.281 
Firmware Version: US_20131015
Status: RESOLVED → VERIFIED
Attachment #786005 - Flags: review?
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: