pimutils / pimutils/khal

Performance issues with calendar from Office365

Open
#929 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

type: optimization
Dominant language
Python
Stars
3.1k
Forks
233
Avg merge
1h 44m
Merged PRs (30d)
1

Description

I use khal for multiple vdir calendars: work, private, academic, etc. I experience serious performance issues with khal interactive, where jumping to the next week usually takes up to 2 seconds.

I pinpointed the issue (as already expected) to the work Office365 calendar I sync via vdirsyncer and davmail. I don't know if it is the sheer size of some events or the format of the .ics files that produces this issue. If I disable this calendar, my other calendars work just fine.

I used the discover type for many folders, but even when I disable all other calendars and explicitly define my work calendar with the respective vdir, nothing changes. So this is not the cause.

Now this issue alone would be bearable if khal cached the interactive view. What makes it so painful is that this happens on every restart of khal interactive. Is caching just broken for me or is this default behaviour?

Anyway, I don't know how to get to the root cause of the performance issue. Any help on how to further debug would be appreciated.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the delay in khal interactive with the Office365 work calendar enabled and disabled, then investigate whether the interactive view is cached across restarts. The issue provides no file or test entry point; done would require identifying the performance cause or confirming and fixing the caching behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli, performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.