From: Mikhail Skorzhisnkii <mskorzhinskiy@eml.cc>
To: emacs-orgmode@gnu.org
Subject: [org-save-all-org-buffers] Saving is not reliable?
Date: Mon, 07 Dec 2020 17:22:54 +0100 [thread overview]
Message-ID: <87sg8h8sw4.fsf@eml.cc> (raw)
[-- Attachment #1: Type: text/html, Size: 4663 bytes --]
[-- Attachment #2: Type: text/plain, Size: 2070 bytes --]
Hello forum,
I start noticing some time ago that saving org-mode buffers works
unreliably in my setup. Most of the time I am using function
`org-save-all-org-buffers' from core org. Unfortunately I don't have a
good reproduction scenarios of this bug. In fact I don't have
reproduction scenario at all. It just happens sometimes: I am sure I
saved all org buffers I had, then restart emacs and then I see that some
changes were not actually saved.
Possibly there is something wrong in my customisations. But without a
reproduction scenario, I don't see a way to prove it. However, after I
made a tiny change to the function, I stopped seeing these problems at
all. Here is the fix I have applied:
,----
| diff --git a/lisp/org.elf b/lisp/org.el
| index df3f377f6..448dc4a88 100644
| --- a/lisp/org.el
| +++ b/lisp/org.el
| @@ -15229,7 +15229,9 @@ The value is a list, with zero or more of the symbols `effort', `appt',
| "Save all Org buffers without user confirmation."
| (interactive)
| (message "Saving all Org buffers...")
| - (save-some-buffers t (lambda () (derived-mode-p 'org-mode)))
| + (save-some-buffers t (lambda ()
| + (and (derived-mode-p 'org-mode)
| + (not (buffer-base-buffer)))))
| (when (featurep 'org-id) (org-id-locations-save))
| (message "Saving all Org buffers... done"))
`----
My theory was that `save-some-buffers' may work unreliably with indirect
buffers, so I've excluded them from the saving. Again, I have tried to
prove it by using indirect buffer and saving it instead of base buffer.
But it worked without a problem. So even if my theory is correct, bug
not reproducing every time. Nevertheless I am having this change already
for two weeks and I don't have reproduction of this bug. Previously I've
noticed loosing data every day or so.
I don't suggest to apply this patch, but may be someone have\had the
same problem or have a deeper insight how indirect buffers work and why
my fix may be a working solution?
Kind regards,
Mikhail Skorzhinskii
next reply other threads:[~2020-12-07 16:48 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-12-07 16:22 Mikhail Skorzhisnkii [this message]
2020-12-09 6:16 ` [org-save-all-org-buffers] Saving is not reliable? Kyle Meyer
2020-12-09 10:16 ` Mikhail Skorzhisnkii
2020-12-09 10:30 ` Eric S Fraga
2020-12-12 23:50 ` Samuel Wales
2020-12-13 15:08 ` Mikhail Skorzhisnkii
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87sg8h8sw4.fsf@eml.cc \
--to=mskorzhinskiy@eml.cc \
--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 external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.