[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] [PATCH] `org-clock--oldest-date` performance
From: |
Jack Henahan |
Subject: |
Re: [O] [PATCH] `org-clock--oldest-date` performance |
Date: |
Sat, 20 Jan 2018 12:00:06 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.3 (darwin) |
To that end, I've attached a patch for review which removes
`org-clock--oldest-date`, replacing its only use with `nil`, and
altering the logic where it's actually used to account for this case and
give a sensible-ish value of the year -50000 for the start time in
`org-special-range`. Before the dawn of humanity seemed like a
reasonable limit, but I'm taking suggestions. :D
I'm not certain if this hits the "modify 15 lines" threshold since it's
mainly deletion, but I'll start getting the paperwork in order and write
a Changelog entry.
Nicolas Goaziou <address@hidden> writes:
> Hello,
>
> Jack Henahan <address@hidden> writes:
>
>> I've run into a performance issue in `org-clock` which I've narrowed
>> down to being caused by the calculation in the defconst for
>> `org-clock--oldest-date`. In particular, invoking `org-clock-in` or
>> eagerly loading `org-clock` on init incurs a 21(!) second delay while
>> calculating the constant. If I inline the value (`(-1034058236842
>> -45726)`, in my case), the delay vanishes.
>>
>> So, context out of the way (just in case someone else already knows an
>> easier fix), I'd like to spend some spare cycles finding a better way to
>> go about the functionality this is meant to provide. If I've read the
>> source correctly, it's meant to provide a view of all the clocks by
>> showing all clocks between some time way in the past until now.
>
> A correct fix would be to remove `org-clock--oldest-date', which is used
> only in one place, and replace it with nil. Then all
> `org-clock-special-range' callers need to be updated to handle this nil
> start value.
>
> Regards,
0001-Set-untilnow-to-use-the-year-50000-rather-than-the-e.patch
Description: Text Data
- [O] `org-clock--oldest-date` performance, Jack Henahan, 2018/01/20
- Re: [O] `org-clock--oldest-date` performance, Nicolas Goaziou, 2018/01/20
- Re: [O] [PATCH] `org-clock--oldest-date` performance,
Jack Henahan <=
- Re: [O] [PATCH] `org-clock--oldest-date` performance, Jack Henahan, 2018/01/20
- Re: [O] [PATCH] `org-clock--oldest-date` performance, Jack Henahan, 2018/01/20
- Re: [O] [PATCH] `org-clock--oldest-date` performance, Nicolas Goaziou, 2018/01/20
- Re: [O] [PATCH] `org-clock--oldest-date` performance, Jack Henahan, 2018/01/20
- Re: [O] [PATCH] `org-clock--oldest-date` performance, Jack Henahan, 2018/01/20
- Re: [O] [PATCH] `org-clock--oldest-date` performance, Nicolas Goaziou, 2018/01/21
- Re: [O] [PATCH] `org-clock--oldest-date` performance, Jack Henahan, 2018/01/21
- Re: [O] [PATCH] `org-clock--oldest-date` performance, Nicolas Goaziou, 2018/01/21