Greg Minshall <minsh...@umich.edu> writes: > i run various Emacs instances, in each of which i run org. i frequently > get these messages (followed by errors when i reply 'q'): > ---- > ...rg-persist/gc-lock.eld locked by minshall@arch... (pid 546721): (s, q, p, > ?)? > Error running timer ‘org-persist--refresh-gc-lock’: (file-locked > "/home/minshall/.cache/org-persist/gc-lock.eld" "minshall@archlinux (pid > 546721)") > ---- > > since i don't see a PID in the lock file name (i assume it is), i wonder > if the code occasionally has this problem when more than one instance > attempts to acquire this lock at a time?
In theory, the odds should be quite slim, unless you open that file manually. Anyway... Does the attached patch fix the problem for you?
>From 7f208e8802ed10017cce094114d395698523beec Mon Sep 17 00:00:00 2001 Message-ID: <7f208e8802ed10017cce094114d395698523beec.1715945418.git.yanta...@posteo.net> From: Ihor Radchenko <yanta...@posteo.net> Date: Fri, 17 May 2024 14:28:48 +0300 Subject: [PATCH] lisp/org-persist.el: Ignore lock files when writing cache * lisp/org-persist.el (org-persist--write-elisp-file): Unlock file before writing cache. Reported-by: Greg Minshall <minsh...@umich.edu> Link: https://orgmode.org/list/574109.1715751441@archlinux --- lisp/org-persist.el | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lisp/org-persist.el b/lisp/org-persist.el index 0df345536..a8fc77c95 100644 --- a/lisp/org-persist.el +++ b/lisp/org-persist.el @@ -481,7 +481,10 @@ (defun org-persist--write-elisp-file (file data &optional no-circular pp) (if pp (let ((pp-use-max-width nil)) ; Emacs bug#58687 (pp data (current-buffer))) - (prin1 data (current-buffer)))) + (prin1 data (current-buffer))) + ;; Force writing even when the file happens to be opened by + ;; another Emacs process. + (unlock-buffer)) (org-persist--display-time (- (float-time) start-time) "Writing to %S" file))) -- 2.45.1
-- Ihor Radchenko // yantar92, Org mode contributor, Learn more about Org mode at <https://orgmode.org/>. Support Org development at <https://liberapay.com/org-mode>, or support my work at <https://liberapay.com/yantar92>