all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: Peter Neidhardt <pe.neidhardt@googlemail.com>
Cc: 28945@debbugs.gnu.org
Subject: bug#28945: 25.2; desktop auto save timer does not work
Date: Sun, 22 Oct 2017 20:11:53 +0300	[thread overview]
Message-ID: <8360b7ayzq.fsf@gnu.org> (raw)
In-Reply-To: <87k1znuphh.fsf@gmail.com> (message from Peter Neidhardt on Sun,  22 Oct 2017 17:19:07 +0100)

> From: Peter Neidhardt <pe.neidhardt@googlemail.com>
> Date: Sun, 22 Oct 2017 17:19:07 +0100
> 
> Recipe:
> 
> - Add (desktop-save-mode) to your init.el.
> 
> - Start Emacs.  Check the value of `window-configuration-change-hook':
> the _global_ value should contain `desktop-auto-save-set-timer'.
> 
> - Save the desktop.
> 
> - Quit Emacs.
> 
> - Restart Emacs.
> 
> - Check `window-configuration-change-hook': the timer is gone.

Thank you for your report and analysis.  I need to read this
carefully, so for now just one comment about something that you only
touch tangentially:

> The actual logic is as follow:
> 
> - On every window configuration change, the timer is _reset_.
> 
> - When idle for `desktop-auto-save-timeout', the desktop is saved.  The
>   timer is run only _once_.
> 
> In practice, this means that the user actually be idle for 30 seconds or
> else it won't get saved at all.  Does this happen a lot in practice?
> I'm don't think so.  Considering the timer runs only once per window
> conf change, it does not run very often, in particular it runs only once
> when nothing is happening.
> 
> So I think it's wiser to set the default to something much lower, say 5
> or 10.

IME, that would be a mistake.  The problem with your logic is twofold:

  . "window configuration change" is actually something that happens a
    lot in a live Emacs session, because any change in windows layout,
    dimensions, the buffers they display, their values of point,
    etc. -- all of these constitute such a change.

  . saving a desktop in a large multi-frame session is expensive.

What this boils down to is that every automatic desktop-save produces
an annoying "hiccup" in Emacs responsiveness.  This is the main reason
why I disabled the desktop timer long ago, and save the desktop from a
midnight.el hook, once every day.  Yes, this means that I can lose
some of my configuration due to a crash, but (a) Emacs doesn't crash
so frequently, and (b) my sessions are organized in a way that makes
sure the loss is minimal, mainly some files that were visited will
need to be re-visited manually.

So if we are going to discuss the timer, I'd actually recommend making
the interval longer, not shorter, if only because auto-saving desktop
more often than we auto-save our edits (see auto-save-interval) makes
little sense to me.





  reply	other threads:[~2017-10-22 17:11 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-22 16:19 bug#28945: 25.2; desktop auto save timer does not work Peter Neidhardt
2017-10-22 17:11 ` Eli Zaretskii [this message]
2017-10-22 17:41   ` Peter Neidhardt
2017-10-22 17:58     ` Eli Zaretskii
2017-10-23 19:28       ` Peter Neidhardt
2017-10-23 19:35         ` Eli Zaretskii
2017-10-23 19:57           ` Peter Neidhardt
2017-10-23 20:02             ` Eli Zaretskii
2017-10-24 21:46           ` Richard Stallman
2017-10-25  2:32             ` Eli Zaretskii
2017-10-26  3:42               ` Richard Stallman
2017-10-26 10:01                 ` Pierre Neidhardt
2017-10-27  2:42                   ` Richard Stallman
2017-10-27  9:12                     ` Eli Zaretskii
2017-10-28 21:49                       ` Richard Stallman
2017-10-26 15:53                 ` Eli Zaretskii
2017-10-26 16:19                   ` Drew Adams
2017-10-26 17:10                     ` Eli Zaretskii
2017-10-26 18:28                       ` Drew Adams
2017-10-26 18:46                         ` Eli Zaretskii
2017-10-28 12:12 ` Eli Zaretskii
2017-11-05 16:18   ` Peter Neidhardt
2017-11-11  9:58     ` Eli Zaretskii
2017-11-11 11:59       ` Peter Neidhardt

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=8360b7ayzq.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=28945@debbugs.gnu.org \
    --cc=pe.neidhardt@googlemail.com \
    /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.