From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jason Jackson" Subject: [PERF] Slow Org Agenda Custom Commands Date: Sun, 11 Jan 2009 11:08:26 +1100 Message-ID: <2df907590901101608j16f2c5a9xe5bcf5d0c85a75ff@mail.gmail.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0034308592==" Return-path: Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1LLnsY-0005d4-IO for emacs-orgmode@gnu.org; Sat, 10 Jan 2009 19:08:34 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1LLnsU-0005ck-PD for emacs-orgmode@gnu.org; Sat, 10 Jan 2009 19:08:34 -0500 Received: from [199.232.76.173] (port=44611 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1LLnsU-0005ch-L6 for emacs-orgmode@gnu.org; Sat, 10 Jan 2009 19:08:30 -0500 Received: from mail-bw0-f12.google.com ([209.85.218.12]:56991) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1LLnsT-0007ay-QT for emacs-orgmode@gnu.org; Sat, 10 Jan 2009 19:08:30 -0500 Received: by bwz5 with SMTP id 5so21849313bwz.18 for ; Sat, 10 Jan 2009 16:08:26 -0800 (PST) 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: emacs-orgmode@gnu.org --===============0034308592== Content-Type: multipart/alternative; boundary="----=_Part_53282_390274.1231632506077" ------=_Part_53282_390274.1231632506077 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline 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): ") )) (org-agenda-list-stuck-projects) ; SLOW IF I USE PROPERTIES LIKE ABOVE ;;;;;;; SLOW COMMAND #2 (tags "-@HOME-habit-@WORK-__IGNORE-SCHEDULED>\"<2000-01-01>\"/TODO|BLOCKED|SUBMIT" ( (org-agenda-sorting-strategy '(priority-down tag-down)) (org-agenda-overriding-header "Unscheduled Todo (Other Contexts): ") )) (tags "+habit+@HOME-__IGNORE/TODO" ( (org-agenda-sorting-strategy '(priority-down tag-down)) (org-agenda-overriding-header "Habits (@Home): ") )) )) The main performance degradation comes from -SCHEDULED>\"<2000-01-01>\" I understand there's a way to removed scheduled items from TODO agenda generations, but this doesn't apply to TAGS agenda generations. So in order to accomplish this in tags, I've added -SCHEDULED>\"<2000-01-01>\" meaning, 'does not have a SCHEDULED property' Overall, isn't there any way to speed up property queries? If the property query is generating some kind of index, is there a way to keep this indexed cached for the subsequent property query in this overall agenda page generation? Cheers, Jason P.S. This being my first post on the mailing list, org-mode is absolutely amazing & invaluable! ------=_Part_53282_390274.1231632506077 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline 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): ")
                 ))

          (org-agenda-list-stuck-projects)    ; SLOW IF I USE PROPERTIES LIKE ABOVE

          ;;;;;;; SLOW COMMAND #2
          (tags "-@HOME-habit-@WORK-__IGNORE-SCHEDULED>\"<2000-01-01>\"/TODO|BLOCKED|SUBMIT"                  (
                  (org-agenda-sorting-strategy '(priority-down tag-down))
                  (org-agenda-overriding-header "Unscheduled Todo (Other Contexts): ")
                  ))
          (tags "+habit+@HOME-__IGNORE/TODO"
                 (
                  (org-agenda-sorting-strategy '(priority-down tag-down))
                  (org-agenda-overriding-header "Habits (@Home): ")
                  ))
          ))

The main performance degradation comes from  -SCHEDULED>\"<2000-01-01>\"

I understand there's a way to removed scheduled items from TODO agenda generations, but this doesn't apply to TAGS agenda generations. So in order to accomplish this in tags, I've added -SCHEDULED>\"<2000-01-01>\" meaning, 'does not have a SCHEDULED property'

Overall, isn't there any way to speed up property queries?
If the property query is generating some kind of index, is there a way to keep this indexed cached for the subsequent property query in this overall agenda page generation?

Cheers,
Jason

P.S. This being my first post on the mailing list, org-mode is absolutely amazing & invaluable!

------=_Part_53282_390274.1231632506077-- --===============0034308592== 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 --===============0034308592==--