emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Russell Adams <RLAdams@AdamsInfoServ.Com>
To: Org Mode List <emacs-orgmode@gnu.org>
Subject: Re: Disable agenda file autoload?
Date: Thu, 28 May 2009 11:42:18 -0500	[thread overview]
Message-ID: <20090528164218.GY10324@thinkpad.adamsinfoserv.com> (raw)
In-Reply-To: <6EC2C9F4-720C-4056-97CD-C8565F02F1D6@gmail.com>

To all,

Turns out this was a local configuration problem. My ~/.emacs has the
agenda to appt integration with kdialog/zenity code in it, and each
time org loaded this code would call the agenda to create the list of
appointments.

I commented out one line in my config file which would call that, but
left the agenda hook in place (comment out the call to function
my-org-agenda-to-appt immediately following the definition). That way
the list will be populated the first time the agenda is called, but
otherwise it is well behaved.

Carsten, as always, thanks for your insight!

On Thu, May 28, 2009 at 11:31:33AM +0200, Carsten Dominik wrote:
> You can try this:
>
> Find the org.el file, and in it the definition of the function
>
> (defun org-get-agenda-file-buffer
>
> As the first ting after the documentation string, enter (debug), like  
> this:
>
> (defun org-get-agenda-file-buffer (file)
>   "Get a buffer visiting FILE.  If the buffer needs to be created, add
> it to the list of buffers which might be released later."
>   (debug)
>   (let ((buf (org-find-base-buffer-visiting file)))
>     (if buf
> 	buf ; just return it
>       ;; Make a new buffer and remember it
>       (setq buf (find-file-noselect file))
>       (if buf (push buf org-agenda-new-buffers))
>       buf)))
>
> Make sure there is no compiled version of org.el on the path.
>
> Then run your first instance of Emacs.  During startup, I would expect  
> that Org Emacs will stop with a backtrace buffer.  Show me that buffer, 
> it will tell us which command loads agenda files....
>
> - Carsten
>
> On May 28, 2009, at 8:38 AM, Russell Adams wrote:
>
>> I just tried an example, here's what happens.
>>
>> - Start first emacs session for Org, call agenda to build my agenda
>> - Change anything in any buffer that is in the agenda list
>> - Open another emacs
>>   - Because I don't have org set to require, it only loads on demand,
>>     no issues yet
>> - Open another .org file that is not on the agenda list, which
>>   triggers the load of org-mode
>> - I get a popup warning me that another emacs session has the agenda
>>   file locked
>>
>> Notice I wasn't trying to build the agenda on opening the other file.
>>
>> I'm inclined to believe that Org is autoloading all the agenda files
>> during initialization. If it didn't load the agenda files until the
>> agenda was called interactively, that'd fix the problem.
>>
>> I may cause this again with another issue, I have a timed job that
>> rebuilds the agenda at midnight because I leave my sessions open for
>> days at a time. If that calls at the midnight boundary, it should
>> cause this problem. I may still have to use a separate config, or a
>> hook for agenda that I set the load list just prior to invoking
>> agenda.
>>
>> Carsten, if you'd like I can send you my .emacs file direct to verify
>> that isn't causing the problem.
>>
>> Thanks.
>>
>> On Thu, May 28, 2009 at 07:43:32AM +0200, Carsten Dominik wrote:
>>>
>>> On May 28, 2009, at 7:34 AM, Russell Adams wrote:
>>>
>>>> I tend to run multiple emacs sessions and I've noticed that if I  
>>>> load
>>>> Org (no I do not require it on each load), that I get lock  
>>>> contention
>>>> on agenda files.
>>>>
>>>> Only one of these emacs instances is used for Org, I keep an Org
>>>> session up separate from my coding...
>>>>
>>>> Is there a way that I can configure Org to not load the agenda files
>>>> until the first time the agenda is called?
>>>>
>>>> Perhaps just by delaying setting the agenda file list until the  
>>>> agenda
>>>> is called by hook?
>>>>
>>>> My only other option would be to use a separate config for the Org
>>>> window vs the others.
>>>>
>>>> I welcome suggestions.
>>>
>>> I believe the agenda files are only loaded for agenda
>>> and related commands, i.e. commands that also need to access
>>> the agenda files.  It is definitely not so that loading the Org
>>> package will load the agenda files.  Or am I wrong here???
>>> Maybe you are running org-agenda-to-appt or something like this?
>>>
>>> - Carsten
>>>
>>
>>
>> ------------------------------------------------------------------
>> Russell Adams                            RLAdams@AdamsInfoServ.com
>>
>> PGP Key ID:     0x1160DCB3           http://www.adamsinfoserv.com/
>>
>> Fingerprint:    1723 D8CA 4280 1EC9 557F  66E8 1154 E018 1160 DCB3
>>
>>
>> _______________________________________________
>> 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
>


------------------------------------------------------------------
Russell Adams                            RLAdams@AdamsInfoServ.com

PGP Key ID:     0x1160DCB3           http://www.adamsinfoserv.com/

Fingerprint:    1723 D8CA 4280 1EC9 557F  66E8 1154 E018 1160 DCB3

  reply	other threads:[~2009-05-28 16:42 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-05-28  5:34 Disable agenda file autoload? Russell Adams
2009-05-28  5:43 ` Carsten Dominik
2009-05-28  6:38   ` Russell Adams
2009-05-28  9:31     ` Carsten Dominik
2009-05-28 16:42       ` Russell Adams [this message]
2009-05-28 17:13         ` Carsten Dominik

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090528164218.GY10324@thinkpad.adamsinfoserv.com \
    --to=rladams@adamsinfoserv.com \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).