From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jason Jackson" Subject: Re: [PERF] Slow Org Agenda Custom Commands Date: Mon, 12 Jan 2009 16:56:19 +1100 Message-ID: <2df907590901112156t42541072j8f4501b24a4d9df6@mail.gmail.com> References: <2df907590901101608j16f2c5a9xe5bcf5d0c85a75ff@mail.gmail.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1168818876==" Return-path: Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1LMFmi-0002Wu-Le for emacs-orgmode@gnu.org; Mon, 12 Jan 2009 00:56:24 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1LMFmh-0002UM-0y for emacs-orgmode@gnu.org; Mon, 12 Jan 2009 00:56:23 -0500 Received: from [199.232.76.173] (port=48465 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1LMFmg-0002UF-So for emacs-orgmode@gnu.org; Mon, 12 Jan 2009 00:56:22 -0500 Received: from mu-out-0910.google.com ([209.85.134.186]:47358) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1LMFmg-00035V-7p for emacs-orgmode@gnu.org; Mon, 12 Jan 2009 00:56:22 -0500 Received: by mu-out-0910.google.com with SMTP id i2so4673244mue.6 for ; Sun, 11 Jan 2009 21:56:19 -0800 (PST) In-Reply-To: List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Matthew Lundin Cc: emacs-orgmode@gnu.org --===============1168818876== Content-Type: multipart/alternative; boundary="----=_Part_66092_12276440.1231739779683" ------=_Part_66092_12276440.1231739779683 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline Thank you Matthew, this improved the performance to an acceptable ~half second I still wonder if multiple property searches could be optimized somehow, but for my purposes I'm satisfied =) For example, you can't use agenda filter commands with org-stuck-project-list, thus you'd have to resort to a slow property search. Some people might want to search for high priority stuck projects. (I solved this by introducing different 'priority' todo states) -Jason On Mon, Jan 12, 2009 at 1:34 PM, Matthew Lundin wrote: > > Hi Jason, > > "Jason Jackson" writes: > > > I'm using the following org agenda custom command, with a relatively > small > > org-mode text file, and agenda creation is taking around 3-4 seconds, it > > becomes unbearably worse if I modify stuck-projects to also use > properties > > searches) > > > > Is there anything I can change to speed up the commands execution; or > > developer changes to org-mode? > > > > (setq org-agenda-custom-commands > > '(("h" "Next Action" > > ( > > (agenda "" > > ((org-agenda-ndays 1) > > (org-agenda-time-grid '()) > > (org-deadline-warning-days 5) > > (org-agenda-sorting-strategy '(time-up priority-down)) > > (org-agenda-skip-deadline-if-done t) > > (org-agenda-overriding-header "Today's Agenda: ") > > )) > > ;;;;;;; SLOW COMMAND #1 > > (tags > "@HOME-habit-__IGNORE-SCHEDULED>\"<2000-01-01>\"/TODO|BLOCKED| > > SUBMIT" > > ((org-agenda-sorting-strategy '(priority-down)) > > (org-agenda-overriding-header "Unscheduled Todo > > (@Home): ") > > )) > > As you suggest, any searches for properties other than TODO, LEVEL, > and CATEGORY can be quite slow. > > Have you considered using a todo search and then using secondary > filtering to limit by tag. This would enable you to use either of the > following variables: > > - org-agenda-todo-ignore-with-date > - org-agenda-todo-ignore-scheduled > > Best, > Matt > ------=_Part_66092_12276440.1231739779683 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline Thank you Matthew, this improved the performance to an acceptable ~half second

I still wonder if multiple property searches could be optimized somehow, but for my purposes I'm satisfied =)

For example, you can't use agenda filter commands with org-stuck-project-list, thus you'd have to resort to a slow property search. Some people might want to search for high priority stuck projects. (I solved this by introducing different 'priority' todo states)

-Jason

On Mon, Jan 12, 2009 at 1:34 PM, Matthew Lundin <mdl@imapmail.org> wrote:

Hi Jason,

"Jason Jackson" <jason@cvk.ca> writes:

> I'm using the following org agenda custom command, with a relatively small
> org-mode text file, and agenda creation is taking around 3-4 seconds, it
> becomes unbearably worse if I modify stuck-projects to also use properties
> searches)
>
> Is there anything I can change to speed up the commands execution; or
> developer changes to org-mode?
>
> (setq org-agenda-custom-commands
>       '(("h" "Next Action"
>          (
>           (agenda ""
>                   ((org-agenda-ndays 1)
>                    (org-agenda-time-grid '())
>                    (org-deadline-warning-days 5)
>                    (org-agenda-sorting-strategy '(time-up priority-down))
>                    (org-agenda-skip-deadline-if-done t)
>                    (org-agenda-overriding-header "Today's Agenda: ")
>                    ))
>           ;;;;;;; SLOW COMMAND #1
>           (tags "@HOME-habit-__IGNORE-SCHEDULED>\"<2000-01-01>\"/TODO|BLOCKED|
> SUBMIT"
>                 ((org-agenda-sorting-strategy '(priority-down))
>                  (org-agenda-overriding-header "Unscheduled Todo
>       (@Home): ")
>                  ))

As you suggest, any searches for properties other than TODO, LEVEL,
and CATEGORY can be quite slow.

Have you considered using a todo search and then using secondary
filtering to limit by tag. This would enable you to use either of the
following variables:

- org-agenda-todo-ignore-with-date
- org-agenda-todo-ignore-scheduled

Best,
Matt

------=_Part_66092_12276440.1231739779683-- --===============1168818876== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Emacs-orgmode mailing list Remember: use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode --===============1168818876==--