[Tickets #12160] Re: Infinity loop on event with recurrence

noreply at bugs.horde.org noreply at bugs.horde.org
Fri Aug 2 22:41:25 UTC 2013


Ticket URL: http://bugs.horde.org/ticket/12160
  Ticket             | 12160
  Updated By         | Michael Rubinsky <mrubinsk at horde.org>
  Summary            | Infinity loop on event with recurrence
  Queue              | Kronolith
  Version            | Git master
  Type               | Bug
-State              | No Feedback
+State              | Feedback
  Priority           | 1. Low
  Milestone          |
  Patch              |
  Owners             | Michael Rubinsky

Michael Rubinsky <mrubinsk at horde.org> (2013-08-02 22:41) wrote:

I still cannot reproduce this and I cannot see any way for this code  
to be triggered. An event that has a value set for baseid MUST NEVER  
recur. It represents an exception to a recurring event. We don't  
support exceptions that recur.

And, in fact from your logs we see that we are asking for only events  
that contain a baseid value. I.e., we are asking for only exceptions  
to a recurring event:

2013-07-26T14:04:45+02:00 INFO: HORDE [kronolith] TOMJ: search query:  
stdClass Object
     [start] => Horde_Date Object
             [_year:protected] => 2012
             [_month:protected] => 10
             [_mday:protected] => 15
             [_hour:protected] => 10
             [_min:protected] => 30
             [_sec:protected] => 0
             [_timezone:protected] => Europe/Berlin
             [_defaultFormat:protected] => Y-m-d H:i:s
             [_formatCache:protected] => Array


     [end] =>
     [baseid] => 51f25de0-ae9c-4982-a516-096eac100191

This shows that the search query contains a baseid. In other words,  
the only events that should match this search MUST contain a baseid  
value and that value MUST be equal to the value listed above. Yet, in  
Kronolith::addEvents() your log shows that the baseid for an event  
that was found in the search call is actually empty:

2013-07-26T14:04:45+02:00 INFO: HORDE [kronolith] TOMJ: addEvents():  
event->baseid:  recurs:  [pid 24833 on line 311 of  

You need to find out why Kronolith_Driver::search() is returning  
events that do not match the query being passed in.

More information about the bugs mailing list