T1988: Fix performance issue in check_event_conflict()
AbandonedPublic

Authored by vanmeeuwen on Nov 24 2016, 2:12 PM.

Details

Summary

When comparing two weekly events with infinite recursion, the method
can take (almost) forever. In such a case it does 10 * 50 * 10 * 50
iterations which are expensive.

The fix workarounds the issue by limiting number of iterations, i.e.
we do not loop over all occurrences of the second event, but only take
those in time period of the main event occurence.

Fixes T1988

Diff Detail

Repository
rP pykolab
Branch
dev/T1988
Lint
Lint OK
Unit
No Unit Test Coverage
Build Status
Buildable 6854
Build 6992: arc lint + arc unit
machniak retitled this revision from to T1988: Fix performance issue in check_event_conflict().Nov 24 2016, 2:12 PM
machniak updated this object.
machniak edited the test plan for this revision. (Show Details)
machniak added a reviewer: PyKolab Developers.
vanmeeuwen commandeered this revision.Dec 2 2016, 3:16 PM
vanmeeuwen abandoned this revision.
vanmeeuwen added a reviewer: machniak.