[GH-ISSUE #184] NoInstancesException for reoccurring appointment #1082

Closed
opened 2026-03-14 00:12:50 +03:00 by kerem · 16 comments
Owner

Originally created by @maybeec on GitHub (Jan 9, 2017).
Original GitHub issue: https://github.com/aluxnimm/outlookcaldavsynchronizer/issues/184

Since the last update, I am getting NoInstancesExceptions while syncing an appointment with the following reoccurrence rule from outlook to nextcloud:

capture

CalDavSynchronizer.DataAccess.WebDavClientException: Response status code does not indicate success: '500' ('InternalServerError'). Message:
<?xml version="1.0" encoding="utf-8"?>
<d:error xmlns:d="DAV:" xmlns:s="http://sabredav.org/ns">
  <s:exception>Sabre\VObject\Recur\NoInstancesException</s:exception>
  <s:message>This recurrence rule does not generate any valid instances</s:message>
</d:error>

   at CalDavSynchronizer.DataAccess.HttpClientBasedClient.WebDavClient.<EnsureSuccessStatusCode>d__10.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   at CalDavSynchronizer.DataAccess.HttpClientBasedClient.WebDavClient.<ExecuteWebDavRequest>d__9.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at CalDavSynchronizer.DataAccess.HttpClientBasedClient.WebDavClient.<ExecuteWebDavRequestAndReturnResponseHeaders>d__8.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at CalDavSynchronizer.DataAccess.CalDavDataAccess.<CreateNewEntity>d__18.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at CalDavSynchronizer.Implementation.CalDavRepository`1.<Create>d__17.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   at GenSync.EntityRepositories.BatchEntityRepositoryAdapter`4.<PerformOperations>d__2.MoveNext()
Originally created by @maybeec on GitHub (Jan 9, 2017). Original GitHub issue: https://github.com/aluxnimm/outlookcaldavsynchronizer/issues/184 Since the last update, I am getting NoInstancesExceptions while syncing an appointment with the following reoccurrence rule from outlook to nextcloud: ![capture](https://cloud.githubusercontent.com/assets/1427255/21760387/ff06c98a-d64b-11e6-9440-b995400bdac6.PNG) ``` CalDavSynchronizer.DataAccess.WebDavClientException: Response status code does not indicate success: '500' ('InternalServerError'). Message: <?xml version="1.0" encoding="utf-8"?> <d:error xmlns:d="DAV:" xmlns:s="http://sabredav.org/ns"> <s:exception>Sabre\VObject\Recur\NoInstancesException</s:exception> <s:message>This recurrence rule does not generate any valid instances</s:message> </d:error> at CalDavSynchronizer.DataAccess.HttpClientBasedClient.WebDavClient.<EnsureSuccessStatusCode>d__10.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task) at CalDavSynchronizer.DataAccess.HttpClientBasedClient.WebDavClient.<ExecuteWebDavRequest>d__9.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at CalDavSynchronizer.DataAccess.HttpClientBasedClient.WebDavClient.<ExecuteWebDavRequestAndReturnResponseHeaders>d__8.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at CalDavSynchronizer.DataAccess.CalDavDataAccess.<CreateNewEntity>d__18.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at CalDavSynchronizer.Implementation.CalDavRepository`1.<Create>d__17.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task) at GenSync.EntityRepositories.BatchEntityRepositoryAdapter`4.<PerformOperations>d__2.MoveNext() ```
kerem closed this issue 2026-03-14 00:12:55 +03:00
Author
Owner

@aluxnimm commented on GitHub (Jan 9, 2017):

Can't reproduce. What Nextcloud version?
This should generate 1 instance and the rule should look like
RRULE:FREQ=WEEKLY;COUNT=1;BYDAY=MO

Tested with SOGo and Nextcloud 10 and works as expected.

<!-- gh-comment-id:271232650 --> @aluxnimm commented on GitHub (Jan 9, 2017): Can't reproduce. What Nextcloud version? This should generate 1 instance and the rule should look like RRULE:FREQ=WEEKLY;COUNT=1;BYDAY=MO Tested with SOGo and Nextcloud 10 and works as expected.
Author
Owner

@maybeec commented on GitHub (Jan 9, 2017):

I have Nextcloud version 10.0.0.2 and Outlook 2013.
This error is real. It reoccurs again and again.

There is no entry on the server side util now. There is just one in the local outlook instance

<!-- gh-comment-id:271234931 --> @maybeec commented on GitHub (Jan 9, 2017): I have Nextcloud version 10.0.0.2 and Outlook 2013. This error is real. It reoccurs again and again. There is no entry on the server side util now. There is just one in the local outlook instance
Author
Owner

@aluxnimm commented on GitHub (Jan 9, 2017):

Post the outlook ics export

<!-- gh-comment-id:271236941 --> @aluxnimm commented on GitHub (Jan 9, 2017): Post the outlook ics export
Author
Owner

@maybeec commented on GitHub (Jan 9, 2017):

How do I get the export? Clicking on the provided link just opens up the appointment itself in outlook.

<!-- gh-comment-id:271237173 --> @maybeec commented on GitHub (Jan 9, 2017): How do I get the export? Clicking on the provided link just opens up the appointment itself in outlook.
Author
Owner

@aluxnimm commented on GitHub (Jan 9, 2017):

in the appointment there is a send /export as ics somewhere maybe you need to configure the ribbon to find it

<!-- gh-comment-id:271238124 --> @aluxnimm commented on GitHub (Jan 9, 2017): in the appointment there is a send /export as ics somewhere maybe you need to configure the ribbon to find it
Author
Owner

@maybeec commented on GitHub (Jan 9, 2017):

Strange issue...
While trying to export the linked Outlook appointment series, I was getting "Operation Failed" exceptions of Outlook. So I googled a little bit and found this: http://stackoverflow.com/a/23759903
It is not entirely the same context as I got invited for the appointment series by someone else. However, it could be resolved after responding the series by an accept, decline, etc. It seems, that there is some state change in Outlook on meeting response, which influences your algorithm to determine the reoccurrence rule.

After accepting the series, I was even able to export it to ics:

BEGIN:VCALENDAR
PRODID:-//Microsoft Corporation//Outlook 15.0 MIMEDIR//EN
VERSION:2.0
METHOD:REQUEST
X-MS-OLK-FORCEINSPECTOROPEN:TRUE
BEGIN:VEVENT
ATTENDEE;CN="XXXXX, XXXXXXXX";RSVP=TRUE:mailto:xxxxxxxxxxxxxxxx@xxxxxxxxxxxxxx
	xx
CLASS:PUBLIC
CREATED:20170109T092750Z
DESCRIPTION:When: Occurs every weekday effective 11.01.2017 until 20.01.201
	7 (UTC+01:00) Amsterdam\, Berlin\, Bern\, Rome\, Stockholm\, Vienna.\n\nNo
	te: The GMT offset above does not reflect daylight saving time adjustments
	.\n\n*~*~*~*~*~*~*~*~*~*\n\n\n
DTEND;VALUE=DATE:20170112
DTSTAMP:20160826T093150Z
DTSTART;VALUE=DATE:20170111
LAST-MODIFIED:20170109T092750Z
ORGANIZER;CN="XXXXX XXXXXXXX XXXXXXXXXX":mailto:xxxxxxxxxxxxxxxxxx@xxxxxxxxxxx
	xxx
PRIORITY:5
RRULE:FREQ=WEEKLY;COUNT=8;BYDAY=MO,TU,WE,TH,FR
SEQUENCE:0
SUMMARY;LANGUAGE=de:XXXX - XXXXXXX
TRANSP:TRANSPARENT
UID:040000008200E00074C5B7101A82E00800000000600308708DFFD101000000000000000
	01000000047AFA98C6F5E6142977D61E30CB7ED7C
X-ALT-DESC;FMTTYPE=text/html:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//E
	N">\n<HTML>\n<HEAD>\n<META NAME="Generator" CONTENT="MS Exchange Server ve
	rsion rmj.rmm.rup.rpr">\n<TITLE></TITLE>\n</HEAD>\n<BODY>XXXXXXXXXX</BODY>\n</HTML>
X-MICROSOFT-CDO-BUSYSTATUS:FREE
X-MICROSOFT-CDO-IMPORTANCE:1
X-MICROSOFT-CDO-INTENDEDSTATUS:FREE
X-MICROSOFT-DISALLOW-COUNTER:FALSE
X-MS-OLK-CONFTYPE:0
BEGIN:VALARM
TRIGGER:-PT15M
ACTION:DISPLAY
DESCRIPTION:Reminder
END:VALARM
END:VEVENT
END:VCALENDAR
<!-- gh-comment-id:271241087 --> @maybeec commented on GitHub (Jan 9, 2017): Strange issue... While trying to export the linked Outlook appointment series, I was getting "Operation Failed" exceptions of Outlook. So I googled a little bit and found this: http://stackoverflow.com/a/23759903 It is not entirely the same context as I got invited for the appointment series by someone else. However, it could be resolved after responding the series by an accept, decline, etc. It seems, that there is some state change in Outlook on meeting response, which influences your algorithm to determine the reoccurrence rule. After accepting the series, I was even able to export it to ics: ``` BEGIN:VCALENDAR PRODID:-//Microsoft Corporation//Outlook 15.0 MIMEDIR//EN VERSION:2.0 METHOD:REQUEST X-MS-OLK-FORCEINSPECTOROPEN:TRUE BEGIN:VEVENT ATTENDEE;CN="XXXXX, XXXXXXXX";RSVP=TRUE:mailto:xxxxxxxxxxxxxxxx@xxxxxxxxxxxxxx xx CLASS:PUBLIC CREATED:20170109T092750Z DESCRIPTION:When: Occurs every weekday effective 11.01.2017 until 20.01.201 7 (UTC+01:00) Amsterdam\, Berlin\, Bern\, Rome\, Stockholm\, Vienna.\n\nNo te: The GMT offset above does not reflect daylight saving time adjustments .\n\n*~*~*~*~*~*~*~*~*~*\n\n\n DTEND;VALUE=DATE:20170112 DTSTAMP:20160826T093150Z DTSTART;VALUE=DATE:20170111 LAST-MODIFIED:20170109T092750Z ORGANIZER;CN="XXXXX XXXXXXXX XXXXXXXXXX":mailto:xxxxxxxxxxxxxxxxxx@xxxxxxxxxxx xxx PRIORITY:5 RRULE:FREQ=WEEKLY;COUNT=8;BYDAY=MO,TU,WE,TH,FR SEQUENCE:0 SUMMARY;LANGUAGE=de:XXXX - XXXXXXX TRANSP:TRANSPARENT UID:040000008200E00074C5B7101A82E00800000000600308708DFFD101000000000000000 01000000047AFA98C6F5E6142977D61E30CB7ED7C X-ALT-DESC;FMTTYPE=text/html:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//E N">\n<HTML>\n<HEAD>\n<META NAME="Generator" CONTENT="MS Exchange Server ve rsion rmj.rmm.rup.rpr">\n<TITLE></TITLE>\n</HEAD>\n<BODY>XXXXXXXXXX</BODY>\n</HTML> X-MICROSOFT-CDO-BUSYSTATUS:FREE X-MICROSOFT-CDO-IMPORTANCE:1 X-MICROSOFT-CDO-INTENDEDSTATUS:FREE X-MICROSOFT-DISALLOW-COUNTER:FALSE X-MS-OLK-CONFTYPE:0 BEGIN:VALARM TRIGGER:-PT15M ACTION:DISPLAY DESCRIPTION:Reminder END:VALARM END:VEVENT END:VCALENDAR ```
Author
Owner

@maybeec commented on GitHub (Jan 9, 2017):

Even after this state change the error seems to remain. So the given ics listing is error causing.

<!-- gh-comment-id:271242753 --> @maybeec commented on GitHub (Jan 9, 2017): Even after this state change the error seems to remain. So the given ics listing is error causing.
Author
Owner

@aluxnimm commented on GitHub (Jan 9, 2017):

But this is not the same event as shown in the screenshot with start and end 19.09.2016?

<!-- gh-comment-id:271262535 --> @aluxnimm commented on GitHub (Jan 9, 2017): But this is not the same event as shown in the screenshot with start and end 19.09.2016?
Author
Owner

@maybeec commented on GitHub (Jan 9, 2017):

Due to my observations, technically no.
After accepting the appointment, the old UID link of the appointment pointed to nowhere. But the next error occurred containing a new link to the (human recognizable) same appointment. Behind the scenes, however, the appointment seems to be recreated due to the acceptance response.
Now opening the appointment recurrence, it looks like this:

capture

Please remember. This appointment still yields the mentioned error on synchronization. This screenshot is the UI representation of the ics listing above.

<!-- gh-comment-id:271263682 --> @maybeec commented on GitHub (Jan 9, 2017): Due to my observations, technically no. After accepting the appointment, the old UID link of the appointment pointed to nowhere. But the next error occurred containing a new link to the (human recognizable) same appointment. Behind the scenes, however, the appointment seems to be recreated due to the acceptance response. Now opening the appointment recurrence, it looks like this: ![capture](https://cloud.githubusercontent.com/assets/1427255/21765240/d9ffd99e-d667-11e6-8e6f-0e5a3eddcfcf.PNG) Please remember. This appointment still yields the mentioned error on synchronization. This screenshot is the UI representation of the ics listing above.
Author
Owner

@aluxnimm commented on GitHub (Jan 9, 2017):

Also this imported ics syncs without problem with my SOGo and Nextcloud 10 server, very strange.
It creates the correct recurrence rule
RRULE:FREQ=WEEKLY;COUNT=8;BYDAY=MO,TU,WE,TH,FR

Can you try to sync with mapping of organizer and attendees disabled in event mapping configuration to check if that makes a difference in your case.

Or maybe it is a timezone issue and the error is not from the event recurrence but from the timezone rule. You can try to change the timezone settings as well and enable the checkbox to use the IANA timezone (select your timezone in the dropdown).

<!-- gh-comment-id:271266962 --> @aluxnimm commented on GitHub (Jan 9, 2017): Also this imported ics syncs without problem with my SOGo and Nextcloud 10 server, very strange. It creates the correct recurrence rule RRULE:FREQ=WEEKLY;COUNT=8;BYDAY=MO,TU,WE,TH,FR Can you try to sync with mapping of organizer and attendees disabled in event mapping configuration to check if that makes a difference in your case. Or maybe it is a timezone issue and the error is not from the event recurrence but from the timezone rule. You can try to change the timezone settings as well and enable the checkbox to use the IANA timezone (select your timezone in the dropdown).
Author
Owner

@maybeec commented on GitHub (Jan 9, 2017):

Sry, I was incorrectly exchanging two different appointments in my mind due to the same name of the appoinment series, which are technical completely disjunct.
The errorneous one is accepted as stated above, but cannot be saved to ics.
The interesting about it is, that as stated in the first post, it describes a recurrence of exacly one day. So start date and end date is the same.

As I cannot save it to file, maybe also caldavsync observes that it cannot retrieve the ics string of the appointment? If so, this might be an outlook bug, which is hard to create a workaround for, is it?

<!-- gh-comment-id:271270474 --> @maybeec commented on GitHub (Jan 9, 2017): Sry, I was incorrectly exchanging two different appointments in my mind due to the same name of the appoinment series, which are technical completely disjunct. The errorneous one is accepted as stated above, but cannot be saved to ics. The interesting about it is, that as stated in the first post, it describes a recurrence of exacly one day. So start date and end date is the same. As I cannot save it to file, maybe also caldavsync observes that it cannot retrieve the ics string of the appointment? If so, this might be an outlook bug, which is hard to create a workaround for, is it?
Author
Owner

@maybeec commented on GitHub (Jan 9, 2017):

However, it is strange that the error occurs now, as the appointment is already there since sept '16.

<!-- gh-comment-id:271270574 --> @maybeec commented on GitHub (Jan 9, 2017): However, it is strange that the error occurs now, as the appointment is already there since sept '16.
Author
Owner

@aluxnimm commented on GitHub (Jan 9, 2017):

What is your timerange filter setting? Maybe it was just moved outside of the timerange window and due to a difference in the filter intersection calculation between Outlook and Nextcloud it is resynced. Try to widen the range or disable it.

<!-- gh-comment-id:271271217 --> @aluxnimm commented on GitHub (Jan 9, 2017): What is your timerange filter setting? Maybe it was just moved outside of the timerange window and due to a difference in the filter intersection calculation between Outlook and Nextcloud it is resynced. Try to widen the range or disable it.
Author
Owner

@maybeec commented on GitHub (Jan 9, 2017):

The timerange is 366 into future/past, so no issue there.

<!-- gh-comment-id:271271396 --> @maybeec commented on GitHub (Jan 9, 2017): The timerange is 366 into future/past, so no issue there.
Author
Owner

@maybeec commented on GitHub (Jan 9, 2017):

I recognized one strange inconsistency, which I could not reproduce by creating similar appointments by my own: the errorneous appointment seems to have End after [ ] occurrences not set appropriately.
Whenever you are changing and saving an appointment in outlook, outlook will adjust the value due to the saved end date for example. However, in this specific appointment it remains not set.
In addition, I cannot change it although there is no error message on save. (maybe as I am not the organizer... don't know).

Maybe this is an issue for your recurrence calculation?

If this is nothing covered by caldavsync, we should probably ignore this as an outlook bug. I am a little bit of ideas and due to the fact, that I cannot see the ics sources and cannot change it appropriately, I was deleting the appointment, which in speicific will not harm me as it is quite in the past :)

<!-- gh-comment-id:271280720 --> @maybeec commented on GitHub (Jan 9, 2017): I recognized one strange inconsistency, which I could not reproduce by creating similar appointments by my own: the errorneous appointment seems to have `End after [ ] occurrences` not set appropriately. Whenever you are changing and saving an appointment in outlook, outlook will adjust the value due to the saved end date for example. However, in this specific appointment it remains not set. In addition, I cannot change it although there is no error message on save. (maybe as I am not the organizer... don't know). Maybe this is an issue for your recurrence calculation? If this is nothing covered by caldavsync, we should probably ignore this as an outlook bug. I am a little bit of ideas and due to the fact, that I cannot see the ics sources and cannot change it appropriately, I was deleting the appointment, which in speicific will not harm me as it is quite in the past :)
Author
Owner

@aluxnimm commented on GitHub (Jan 9, 2017):

Sounds like a corrupt outlook appointment then, since you can't generate a recurrence without the occurences set other than no end date and you also can forward an invite as ics normally.

Will close this ticket since we can't reproduce.

<!-- gh-comment-id:271284728 --> @aluxnimm commented on GitHub (Jan 9, 2017): Sounds like a corrupt outlook appointment then, since you can't generate a recurrence without the occurences set other than no end date and you also can forward an invite as ics normally. Will close this ticket since we can't reproduce.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/outlookcaldavsynchronizer#1082
No description provided.