unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#49178: 28.0.50; make-auto-save-file-name connects to remote
@ 2021-06-22 20:53 Steingold
  2021-06-24 17:41 ` Michael Albinus
  0 siblings, 1 reply; 6+ messages in thread
From: Steingold @ 2021-06-22 20:53 UTC (permalink / raw)
  To: 49178

When I edit a remote file using tramp (scp method), I notice a
significant slow-down on auto-save (not every time!), and a brief
investigation seems to indicate that make-auto-save-file-name MAY
re-establish the connection to the remote server when it is dead (or
something?)

My `auto-save-list-file-prefix' and `tramp-auto-save-directory' are a
local directory.
I did not modify `auto-save-file-name-transforms'.


In GNU Emacs 28.0.50 (build 2, x86_64-apple-darwin19.6.0, NS appkit-1894.60 Version 10.15.7 (Build 19H1217))
 of 2021-06-21 built on 3c22fb11fdab.ant.amazon.com
Repository revision: 09f17ac4752e18bf834d2f20ceef561cc516d917
Repository branch: master
Windowing system distributor 'Apple', version 10.3.1894
System Description:  Mac OS X 10.15.7

Configured using:
 'configure --with-imagemagick --with-mailutils --with-ns
 PKG_CONFIG_PATH=/usr/local/opt/libxml2/lib/pkgconfig:/usr/local/opt/imagemagick/lib/pkgconfig:/usr/local/opt/gnutls/lib/pkgconfig:/usr/local/opt/jansson/lib/pkgconfig:/usr/local/opt/libtiff/lib/pkgconfig:/usr/local/opt/libpng/lib/pkgconfig:/usr/local/opt/libjpeg/lib/pkgconfig:/usr/local/opt/freetype/lib/pkgconfig'

Configured features:
ACL GMP GNUTLS IMAGEMAGICK JPEG JSON LCMS2 LIBXML2 MODULES NOTIFY KQUEUE
NS PDUMPER PNG THREADS TIFF TOOLKIT_SCROLL_BARS ZLIB

Important settings:
  value of $LANG: C
  locale-coding-system: utf-8-unix

Major mode: Fundamental

Minor modes in effect:
  pyvenv-mode: t
  shell-dirtrack-mode: t
  global-edit-server-edit-mode: t
  winner-mode: t
  which-function-mode: t
  url-handler-mode: t
  show-paren-mode: t
  desktop-save-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tab-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t

Load-path shadows:
None found.

Features:
(shadow bbdb-message mailalias cookie1 emacsbug sendmail gnus-fun
flow-fill url-cache sort gnus-cite smiley mm-archive gnus-async
gnus-bcklg gnus-dup qp mail-extr gnus-ml hl-line disp-table spam
spam-stat gnus-uu yenc nndraft nnmh gnus-agent gnus-srvr gnus-score
score-mode nnvirtual gnus-msg utf-7 gnus-cache bbdb-gnus gnutls
network-stream nntp find-dired vc-annotate edebug apropos package
log-view tex-mode latexenc log-edit pcvs-util smerge-mode diff
tramp-cmds cal-move cl-print debug backtrace face-remap skeleton dabbrev
vc-mtn vc-src vc-sccs vc-svn vc-cvs vc-rcs misearch multi-isearch
url-http url-auth url-gw nsm ein-jupyter ein-dev ein-notebook
ein-python-send ein-traceback ein-shared-output ein-pytools ein-pager
ein-completer ein-notification ein-scratchsheet ein-worksheet poly-ein
display-line-numbers quail polymode poly-lock polymode-base
polymode-weave polymode-export polymode-compat polymode-methods
polymode-core polymode-classes eieio-custom eieio-base color
ein-kill-ring ein-cell ein-output-area ein-kernelinfo ein-kernel
ein-ipdb ein-events ein-websocket websocket bindat ein-file ein-node
ein-notebooklist shortdoc ein-contents-api ein-query ein-log ein-classes
ein-core request autorevert filenotify anaphora ein-utils deferred dash
cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine
cc-vars cc-defs ein add-log vc-hg vc-bzr tramp-cache remember arc-mode
archive-mode vc-dir ewoc vc company-oddmuse company-keywords
company-etags company-gtags company-dabbrev-code company-dabbrev
company-files company-clang company-template company-cmake company-bbdb
yasnippet-snippets yasnippet flymake-proc flymake company-capf company
pcase help-fns radix-tree elpy edmacro kmacro elpy-rpc pyvenv eshell
esh-cmd esh-ext esh-opt esh-proc esh-io esh-arg esh-module esh-groups
esh-util elpy-shell elpy-profile elpy-django s elpy-refactor ido grep
compile etags fileloop xref project cus-edit pp cus-start python
tramp-sh tramp tramp-loaddefs trampver tramp-integration files-x
tramp-compat shell ls-lisp flyspell ispell org-element avl-tree
generator ol-eww eww xdg url-queue thingatpt mm-url ol-rmail ol-mhe
ol-irc ol-info ol-gnus nnselect gnus-search eieio-opt cl-extra help-mode
speedbar ezimage dframe gnus-art mm-uu mml2015 mm-view mml-smime smime
dig gnus-sum shr kinsoku svg dom browse-url url url-proxy url-privacy
url-expand url-methods url-history url-cookie url-domsuf url-util
mailcap gnus-group gnus-undo gnus-start gnus-dbus dbus xml gnus-cloud
nnimap nnmail mail-source utf7 netrc nnoo parse-time gnus-spec gnus-int
gnus-range message rmc puny rfc822 mml mml-sec epa derived epg
epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231 gmm-utils
mailheader gnus-win ol-docview doc-view jka-compr image-mode exif
ol-bibtex bibtex iso8601 ol-bbdb ol-w3m org ob ob-tangle ob-ref ob-lob
ob-table ob-exp org-macro org-footnote org-src ob-comint org-pcomplete
pcomplete comint ansi-color org-list org-faces org-entities noutline
outline org-version ob-emacs-lisp ob-core ob-eval org-table ol org-keys
org-compat org-macs org-loaddefs format-spec find-func cal-x view
cal-china cal-bahai cal-islam holidays hol-loaddefs bbdb-anniv cal-iso
cal-hebrew lunar cal-julian solar cal-dst appt diary-lib diary-loaddefs
cal-menu calendar cal-loaddefs bug-reference vc-git diff-mode easy-mmode
vc-dispatcher dired-aux dired dired-loaddefs midnight warnings gnus
nnheader gnus-util rmail rmail-loaddefs rfc2047 rfc2045 ietf-drums
text-property-search time-date mail-utils mm-util mail-prsvr wid-edit
bbdb-mua bbdb-com crm mailabbrev bbdb bbdb-site timezone edit-server
advice server winner ring which-func imenu url-handlers url-parse
auth-source cl-seq eieio eieio-core cl-macs eieio-loaddefs
password-cache json subr-x map seq byte-opt gv bytecomp byte-compile
cconv url-vars paren help-at-pt desktop frameset cl-loaddefs cl-lib
cus-load info iso-transl tooltip eldoc electric uniquify ediff-hook
vc-hooks lisp-float-type mwheel term/ns-win ns-win ucs-normalize
mule-util term/common-win tool-bar dnd fontset image regexp-opt fringe
tabulated-list replace newcomment text-mode elisp-mode lisp-mode
prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu
timer select scroll-bar mouse jit-lock font-lock syntax font-core
term/tty-colors frame minibuffer cl-generic cham georgian utf-8-lang
misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms
cp51932 hebrew greek romanian slovak czech european ethiopic indian
cyrillic chinese composite charscript charprop case-table epa-hook
jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice button
loaddefs faces cus-face macroexp files window text-properties overlay
sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote threads kqueue cocoa ns lcms2
multi-tty make-network-process emacs)

Memory information:
((conses 16 748580 89494)
 (symbols 48 40414 10)
 (strings 32 262426 16078)
 (string-bytes 1 7373587)
 (vectors 16 111857)
 (vector-slots 8 2123010 161192)
 (floats 8 1165 577)
 (intervals 56 27275 7152)
 (buffers 992 86))

-- 
Sam Steingold (http://sds.podval.org/) on darwin Ns 10.3.1894
http://childpsy.net http://calmchildstories.com http://steingoldpsychology.com
https://www.memritv.org https://memri.org https://thereligionofpeace.com
If Microsoft wrote poetry, it would have patented dactyl and anapest.





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#49178: 28.0.50; make-auto-save-file-name connects to remote
  2021-06-22 20:53 bug#49178: 28.0.50; make-auto-save-file-name connects to remote Steingold
@ 2021-06-24 17:41 ` Michael Albinus
  2021-06-24 18:30   ` Sam Steingold
  0 siblings, 1 reply; 6+ messages in thread
From: Michael Albinus @ 2021-06-24 17:41 UTC (permalink / raw)
  To: Steingold; +Cc: 49178

Steingold <sds@gnu.org> writes:

Hi Sam,

> When I edit a remote file using tramp (scp method), I notice a
> significant slow-down on auto-save (not every time!), and a brief
> investigation seems to indicate that make-auto-save-file-name MAY
> re-establish the connection to the remote server when it is dead (or
> something?)

Well, this is the consequence of the fix for bug#45245. In etc/NEWS,
this is mentioned as

--8<---------------cut here---------------start------------->8---
*** Writing sensitive auto-save or backup files to the local temporary
directory must be confirmed.  In order to suppress this confirmation,
set user option 'tramp-allow-unsafe-temporary-files' to t.
--8<---------------cut here---------------end--------------->8---

Of course you could set tramp-allow-unsafe-temporary-files to t, but
that's not the idea for a general solution. Tramp uses already some
caches in order to minimize the needed checks, but perhaps it could do
better. I'll check.

Best regards, Michael.





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#49178: 28.0.50; make-auto-save-file-name connects to remote
  2021-06-24 17:41 ` Michael Albinus
@ 2021-06-24 18:30   ` Sam Steingold
  2021-06-24 18:37     ` Michael Albinus
  0 siblings, 1 reply; 6+ messages in thread
From: Sam Steingold @ 2021-06-24 18:30 UTC (permalink / raw)
  To: Michael Albinus; +Cc: 49178

Hi Michael,

The doc for `tramp-allow-unsafe-temporary-files ` says:
>>> Whether root-owned auto-save or backup files can be written to "/tmp"

1. the file is not owned by root
2. `auto-save-list-file-prefix` is under my home, not /tmp

On Thu, 24 Jun 2021 at 13:41, Michael Albinus <michael.albinus@gmx.de> wrote:
>
> > When I edit a remote file using tramp (scp method), I notice a
> > significant slow-down on auto-save (not every time!), and a brief
> > investigation seems to indicate that make-auto-save-file-name MAY
> > re-establish the connection to the remote server when it is dead (or
> > something?)
>
> Well, this is the consequence of the fix for bug#45245. In etc/NEWS,
> this is mentioned as
>
> --8<---------------cut here---------------start------------->8---
> *** Writing sensitive auto-save or backup files to the local temporary
> directory must be confirmed.  In order to suppress this confirmation,
> set user option 'tramp-allow-unsafe-temporary-files' to t.
> --8<---------------cut here---------------end--------------->8---

I am never asked for any confirmation.


-- 
Sam Steingold <http://sds.podval.org> <http://www.childpsy.net>
<http://steingoldpsychology.com>





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#49178: 28.0.50; make-auto-save-file-name connects to remote
  2021-06-24 18:30   ` Sam Steingold
@ 2021-06-24 18:37     ` Michael Albinus
  2021-06-25 12:20       ` Michael Albinus
  0 siblings, 1 reply; 6+ messages in thread
From: Michael Albinus @ 2021-06-24 18:37 UTC (permalink / raw)
  To: Sam Steingold; +Cc: 49178

Sam Steingold <sds@gnu.org> writes:

> Hi Michael,

Hi Sam,

> The doc for `tramp-allow-unsafe-temporary-files ` says:
>>>> Whether root-owned auto-save or backup files can be written to "/tmp"
>
> 1. the file is not owned by root
> 2. `auto-save-list-file-prefix` is under my home, not /tmp

Hmm, yes. I've seen in my code that I try to determine the owner of the
file *prior* all other checks. I guess this can be rearranged, and/or
simplified by caches. This is what I meant when saying I'll work on
it. Pls give me some time for analysis (one or two days, my todo list is
quite large).

Best regards, Michael.





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#49178: 28.0.50; make-auto-save-file-name connects to remote
  2021-06-24 18:37     ` Michael Albinus
@ 2021-06-25 12:20       ` Michael Albinus
  2021-07-07 18:39         ` Michael Albinus
  0 siblings, 1 reply; 6+ messages in thread
From: Michael Albinus @ 2021-06-25 12:20 UTC (permalink / raw)
  To: Sam Steingold; +Cc: 49178

Michael Albinus <michael.albinus@gmx.de> writes:

Hi Sam,

>> The doc for `tramp-allow-unsafe-temporary-files ` says:
>>>>> Whether root-owned auto-save or backup files can be written to "/tmp"
>>
>> 1. the file is not owned by root
>> 2. `auto-save-list-file-prefix` is under my home, not /tmp
>
> Hmm, yes. I've seen in my code that I try to determine the owner of the
> file *prior* all other checks. I guess this can be rearranged, and/or
> simplified by caches.

I've implemented this, pushed to master. Could you, pls, check whether
this improves the situation for you?

Best regards, Michael.





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#49178: 28.0.50; make-auto-save-file-name connects to remote
  2021-06-25 12:20       ` Michael Albinus
@ 2021-07-07 18:39         ` Michael Albinus
  0 siblings, 0 replies; 6+ messages in thread
From: Michael Albinus @ 2021-07-07 18:39 UTC (permalink / raw)
  To: Sam Steingold; +Cc: 49178-done

Version: 28.1

Michael Albinus <michael.albinus@gmx.de> writes:

Hi Sam,

> I've implemented this, pushed to master. Could you, pls, check whether
> this improves the situation for you?

No further comment, so I'm closing the bug.

Best regards, Michael.





^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2021-07-07 18:39 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-22 20:53 bug#49178: 28.0.50; make-auto-save-file-name connects to remote Steingold
2021-06-24 17:41 ` Michael Albinus
2021-06-24 18:30   ` Sam Steingold
2021-06-24 18:37     ` Michael Albinus
2021-06-25 12:20       ` Michael Albinus
2021-07-07 18:39         ` Michael Albinus

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.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).