From: Stefan Monnier <monnier@IRO.UMontreal.CA>
To: Michael Albinus <Michael.Albinus@alcatel-lucent.de>
Cc: Julian Scheid <julians37@googlemail.com>, emacs-devel@gnu.org
Subject: Re: process-file and Tramp's file cache
Date: Tue, 18 Aug 2009 10:32:32 -0400 [thread overview]
Message-ID: <jwvmy5xw5zv.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <nq8whhv349.fsf_-_@alcatel-lucent.de> (Michael Albinus's message of "Tue, 18 Aug 2009 12:16:22 +0200")
>> BTW, to improve the behavior in case of things like "git status", it
>> might be worthwhile to add some way to indicate that a particular use of
>> process-file is (supposed to be) free of side-effects.
> I would like to introduce a new variable `process-file-modification-list'.
> It's default value shall be `t', which means that any file on the remote
> host could have been modified by the corresponding `process-file' call.
> `nil' means that no file is modified during `process-file'. A list of
> strings (remote file names) are indication, that exactly those files are
> modified, when `process-file' runs.
> This would allow Tramp to optimize its file cache. Currently, it assumes
> after every `process-file' call, that all cached values are invalid.
> This results in unnecessary check operations on the remote side.
> A typical use case in `vc-registered' would look like this:
> (let (handler process-file-modification-list)
> (cond ...
> Opinions?
How 'bout changing Tramp's process-file to compare the command (and
args) against a list of "known pure commands"? This would keep it all
inside Tramp, which I think I like better (tho I also agree that this
information is not fundamentally specific to Tramp, although currently
Tramp is the only package able to make use of it).
Stefan
next prev parent reply other threads:[~2009-08-18 14:32 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <200904150011.n3F0BT8Q005193@godzilla.ics.uci.edu>
2008-12-30 10:48 ` bug#1741: 23.0.60; vc fail to register file while logged as /su:: with tramp Thierry Volpiatto
2009-04-07 16:57 ` Dan Nicolaescu
2009-04-08 11:23 ` thierry.volpiatto
2009-04-08 16:24 ` Dan Nicolaescu
2009-04-08 17:53 ` Stefan Monnier
2009-04-09 13:51 ` Michael Albinus
2009-04-09 14:38 ` Stefan Monnier
2009-04-09 15:06 ` Michael Albinus
2009-04-09 18:23 ` Stefan Monnier
2009-04-12 18:15 ` Michael Albinus
2009-04-12 19:41 ` Stefan Monnier
2009-04-12 19:56 ` Michael Albinus
2009-04-12 22:51 ` Stefan Monnier
2009-04-13 9:30 ` Michael Albinus
2009-04-13 12:24 ` Stefan Monnier
2009-04-14 15:19 ` Michael Albinus
2009-04-14 17:06 ` Stefan Monnier
2009-04-15 20:55 ` Michael Albinus
2009-08-18 10:16 ` process-file and Tramp's file cache (was: bug#1741: 23.0.60; vc fail to register file while logged as /su:: with tramp) Michael Albinus
2009-08-18 14:32 ` Stefan Monnier [this message]
2009-08-18 14:54 ` process-file and Tramp's file cache Michael Albinus
2009-08-18 16:23 ` Stefan Monnier
2009-08-18 18:49 ` Michael Albinus
2009-08-18 19:19 ` Stefan Monnier
2009-08-19 7:44 ` Michael Albinus
2009-04-15 0:20 ` bug#1741: marked as done (23.0.60; vc fail to register file while logged as /su:: with tramp) Emacs bug Tracking System
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=jwvmy5xw5zv.fsf-monnier+emacs@gnu.org \
--to=monnier@iro.umontreal.ca \
--cc=Michael.Albinus@alcatel-lucent.de \
--cc=emacs-devel@gnu.org \
--cc=julians37@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.