unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#3071: 23.0.92; accept-process-output broken on MacOS
@ 2009-04-21 12:52 David Abrahams
  2009-04-21 19:29 ` Michael Albinus
       [not found] ` <87tz4hls94.fsf@gmx.de>
  0 siblings, 2 replies; 9+ messages in thread
From: David Abrahams @ 2009-04-21 12:52 UTC (permalink / raw)
  To: emacs-pretest-bug; +Cc: John Wiegley, tramp-devel, michael.albinus

[-- Attachment #1: Type: text/plain, Size: 720 bytes --]


Please write in English if possible, because the Emacs maintainers
usually do not have translators to read other languages for them.

Your bug report will be posted to the emacs-pretest-bug@gnu.org mailing list.

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:

Opening remote files/directories via TRAMP is wicked slow on MacOS; the
same operation on a linux emacs running on the same hardware is
practically instantaneous.  Turns out that applying the enclosed patch
makes the symptom go away.  I'm not an expert on emacs process handling,
but that tells me emacs probably isn't detecting output from the process
until the timeout (usually 1 second for TRAMP) is reached.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: tramp.el.patch --]
[-- Type: text/x-patch, Size: 738 bytes --]

cvs diff: warning: failed to open /Users/dave/.cvspass for reading: No such file or directory
Index: tramp.el
===================================================================
RCS file: /sources/tramp/tramp/lisp/tramp.el,v
retrieving revision 2.686
diff -d -u -r2.686 tramp.el
--- tramp.el	12 Apr 2009 19:21:03 -0000	2.686
+++ tramp.el	21 Apr 2009 04:45:54 -0000
@@ -5864,7 +5864,7 @@
       ;; Under Windows XP, accept-process-output doesn't return
       ;; sometimes.  So we add an additional timeout.
       (with-timeout ((or timeout 1))
-	(accept-process-output proc timeout timeout-msecs)))
+	(accept-process-output proc .01)))
     (tramp-message proc 10 "\n%s" (buffer-string))))
 
 (defun tramp-check-for-regexp (proc regexp)

[-- Attachment #3: Type: text/plain, Size: 3031 bytes --]



If Emacs crashed, and you have the Emacs process in the gdb debugger,
please include the output from the following gdb commands:
    `bt full' and `xbacktrace'.
If you would like to further debug the crash, please read the file
/Applications/Emacs.app/Contents/Resources/etc/DEBUG for instructions.


In GNU Emacs 23.0.92.1 (i386-apple-darwin9.6.2, NS apple-appkit-949.43)
 of 2009-04-19 on zreba.local
Windowing system distributor `Apple', version 10.3.949
configured using `configure  '--with-ns' '--with-jpeg' '--with-tiff' '--with-gif''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: nil
  value of $XMODIFIERS: nil
  locale-coding-system: nil
  default-enable-multibyte-characters: t

Major mode: C/l

Minor modes in effect:
  shell-dirtrack-mode: t
  show-paren-mode: t
  server-mode: t
  global-auto-revert-mode: t
  delete-selection-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  global-auto-composition-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t
  abbrev-mode: t

Recent input:
C-n C-p C-p C-p C-p C-p C-p C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-p 
C-p C-p C-p C-p C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-b C-( C-p C-p C-p C-p 
C-n C-n C-n C-p C-p C-p C-p C-x C-b C-x C-b M-x M-p 
<return>

Recent messages:
Tramp: Waiting 60s for local shell to come up...
Tramp: Sending command `ssh hydra.local   -q -e none && exit || exit'
Tramp: Waiting for prompts from remote shell
Tramp: Found remote shell prompt on `hydra.local' [3 times]
Quit [2 times]
Mark saved where search started
Quit
Mark saved where search started [4 times]
Quit
Mark saved where search started [2 times]

-- 
Dave Abrahams
BoostPro Computing
http://www.boostpro.com

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

* bug#3071: 23.0.92; accept-process-output broken on MacOS
       [not found] <mailman.5766.1240325046.31690.bug-gnu-emacs@gnu.org>
@ 2009-04-21 15:20 ` Michael Albinus
       [not found] ` <nqmyaaav9j.fsf@alcatel-lucent.de>
  1 sibling, 0 replies; 9+ messages in thread
From: Michael Albinus @ 2009-04-21 15:20 UTC (permalink / raw)
  To: David Abrahams; +Cc: John Wiegley, tramp-devel, 3071

David Abrahams <dave@boostpro.com> writes:

> Opening remote files/directories via TRAMP is wicked slow on MacOS; the
> same operation on a linux emacs running on the same hardware is
> practically instantaneous.  Turns out that applying the enclosed patch
> makes the symptom go away.  I'm not an expert on emacs process handling,
> but that tells me emacs probably isn't detecting output from the process
> until the timeout (usually 1 second for TRAMP) is reached.

Thanks a lot for your investigation! However, I believe your patch
towards tramp.el shall be only the last resort (and NOT the final
solution). One shall investigate, what's happening on mac.

Best regards, Michael.






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

* bug#3071: 23.0.92; accept-process-output broken on MacOS
       [not found] ` <nqmyaaav9j.fsf@alcatel-lucent.de>
@ 2009-04-21 16:40   ` David Abrahams
  0 siblings, 0 replies; 9+ messages in thread
From: David Abrahams @ 2009-04-21 16:40 UTC (permalink / raw)
  To: Michael Albinus; +Cc: John Wiegley, tramp-devel, 3071


On Apr 21, 2009, at 11:20 AM, Michael Albinus wrote:

> David Abrahams <dave@boostpro.com> writes:
>
>> Opening remote files/directories via TRAMP is wicked slow on MacOS;  
>> the
>> same operation on a linux emacs running on the same hardware is
>> practically instantaneous.  Turns out that applying the enclosed  
>> patch
>> makes the symptom go away.  I'm not an expert on emacs process  
>> handling,
>> but that tells me emacs probably isn't detecting output from the  
>> process
>> until the timeout (usually 1 second for TRAMP) is reached.
>
> Thanks a lot for your investigation! However, I believe your patch
> towards tramp.el shall be only the last resort (and NOT the final
> solution).

Of course.

> One shall investigate, what's happening on mac.


Until they figure it out, my plan is to use some advice to force that  
timeout parameter to zero in accept-process-output.

--
David Abrahams
BoostPro Computing
http://boostpro.com










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

* bug#3071: 23.0.92; accept-process-output broken on MacOS
  2009-04-21 12:52 bug#3071: 23.0.92; accept-process-output broken on MacOS David Abrahams
@ 2009-04-21 19:29 ` Michael Albinus
       [not found] ` <87tz4hls94.fsf@gmx.de>
  1 sibling, 0 replies; 9+ messages in thread
From: Michael Albinus @ 2009-04-21 19:29 UTC (permalink / raw)
  To: David Abrahams; +Cc: John Wiegley, tramp-devel, 3071

David Abrahams <dave@boostpro.com> writes:

> Opening remote files/directories via TRAMP is wicked slow on MacOS; the
> same operation on a linux emacs running on the same hardware is
> practically instantaneous.  Turns out that applying the enclosed patch
> makes the symptom go away.  I'm not an expert on emacs process handling,
> but that tells me emacs probably isn't detecting output from the process
> until the timeout (usually 1 second for TRAMP) is reached.

Reading <http://emacsbugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=895>
indicates, one shall set `process-connection-type' to `nil'. This is
also documented in Bugs 2056, 2503, 2639, 2717.

OTOH, the comment for `tramp-process-connection-type' says that it's not
applicable for Tramp.

Hmm. What happens, when you set `tramp-process-connection-type' to `nil'?
Does Tramp still work on your mac? How fast?

Best regards, Michael.






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

* bug#3071: 23.0.92; accept-process-output broken on MacOS
       [not found] <m2iqkyqidn.fsf@boostpro.com>
@ 2009-04-21 23:46 ` YAMAMOTO Mitsuharu
  2016-02-11 20:24   ` Alan Third
  0 siblings, 1 reply; 9+ messages in thread
From: YAMAMOTO Mitsuharu @ 2009-04-21 23:46 UTC (permalink / raw)
  To: David Abrahams, 3071; +Cc: John Wiegley, tramp-devel, michael.albinus

>>>>> On Tue, 21 Apr 2009 08:52:04 -0400, David Abrahams <dave@boostpro.com> said:

> Opening remote files/directories via TRAMP is wicked slow on MacOS;
> the same operation on a linux emacs running on the same hardware is
> practically instantaneous.

> In GNU Emacs 23.0.92.1 (i386-apple-darwin9.6.2, NS apple-appkit-949.43)
>  of 2009-04-19 on zreba.local
> Windowing system distributor `Apple', version 10.3.949
> configured using `configure  '--with-ns' '--with-jpeg' '--with-tiff' '--with-gif''

I tried the following steps with both the Cocoa/GNUstep port and the
X11 build on the same machine running Mac OS X 10.5.6.  Both are
compiled from the latest CVS trunk.

  1. Start Emacs with the `-Q' option.
  2. C-x C-f /sshx:remotehost: RET  (remotehost is running Solaris)

The Cocoa/GNUstep port was much slower (~20 sec. to list the home
directory) than the X11 build (< 2 sec.).

				     YAMAMOTO Mitsuharu
				mituharu@math.s.chiba-u.ac.jp






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

* bug#3071: 23.0.92; accept-process-output broken on MacOS
       [not found] ` <87tz4hls94.fsf@gmx.de>
@ 2009-04-22 13:09   ` David Abrahams
       [not found]   ` <D490528D-C6E7-439C-A327-A99025D7B02F@boostpro.com>
  1 sibling, 0 replies; 9+ messages in thread
From: David Abrahams @ 2009-04-22 13:09 UTC (permalink / raw)
  To: Michael Albinus; +Cc: John Wiegley, tramp-devel, 3071

[-- Attachment #1: Type: text/plain, Size: 1056 bytes --]


On Apr 21, 2009, at 3:29 PM, Michael Albinus wrote:

> David Abrahams <dave@boostpro.com> writes:
>
>> Opening remote files/directories via TRAMP is wicked slow on MacOS;  
>> the
>> same operation on a linux emacs running on the same hardware is
>> practically instantaneous.  Turns out that applying the enclosed  
>> patch
>> makes the symptom go away.  I'm not an expert on emacs process  
>> handling,
>> but that tells me emacs probably isn't detecting output from the  
>> process
>> until the timeout (usually 1 second for TRAMP) is reached.
>
> Reading <http://emacsbugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=895 
> >
> indicates, one shall set `process-connection-type' to `nil'. This is
> also documented in Bugs 2056, 2503, 2639, 2717.
>
> OTOH, the comment for `tramp-process-connection-type' says that it's  
> not
> applicable for Tramp.
>
> Hmm. What happens, when you set `tramp-process-connection-type' to  
> `nil'?
> Does Tramp still work on your mac?

Nope.

> How fast?


It fails very slowly ;-)

A full TRAMP log is enclosed.

[-- Attachment #2: tramp.log --]
[-- Type: application/octet-stream, Size: 15807 bytes --]

[-- Attachment #3: Type: text/plain, Size: 63 bytes --]



--
David Abrahams
BoostPro Computing
http://boostpro.com





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

* bug#3071: 23.0.92; accept-process-output broken on MacOS
       [not found]   ` <D490528D-C6E7-439C-A327-A99025D7B02F@boostpro.com>
@ 2009-04-22 13:59     ` Michael Albinus
       [not found]     ` <nqhc0glrh4.fsf@alcatel-lucent.de>
  1 sibling, 0 replies; 9+ messages in thread
From: Michael Albinus @ 2009-04-22 13:59 UTC (permalink / raw)
  To: David Abrahams; +Cc: John Wiegley, tramp-devel, 3071

David Abrahams <dave@boostpro.com> writes:

>> Reading
>> <http://emacsbugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=895>
>> indicates, one shall set `process-connection-type' to `nil'. This is
>> also documented in Bugs 2056, 2503, 2639, 2717.
>>
>> OTOH, the comment for `tramp-process-connection-type' says that it's
>> not
>> applicable for Tramp.
>>
>> Hmm. What happens, when you set `tramp-process-connection-type' to
>> nil'?
>> Does Tramp still work on your mac?
>
> Nope.

That's what I've feared. The comment says, that Tramp needs a pty for
connection; `process-connection-type' must be set to t therefore. So
that's not applicable.

> David Abrahams

Best regards, Michael.






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

* bug#3071: 23.0.92; accept-process-output broken on MacOS
       [not found]     ` <nqhc0glrh4.fsf@alcatel-lucent.de>
@ 2009-04-22 14:52       ` David Abrahams
  0 siblings, 0 replies; 9+ messages in thread
From: David Abrahams @ 2009-04-22 14:52 UTC (permalink / raw)
  To: Michael Albinus; +Cc: John Wiegley, tramp-devel, 3071


On Apr 22, 2009, at 9:59 AM, Michael Albinus wrote:

> David Abrahams <dave@boostpro.com> writes:
>
>>> Reading
>>> <http://emacsbugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=895>
>>> indicates, one shall set `process-connection-type' to `nil'. This is
>>> also documented in Bugs 2056, 2503, 2639, 2717.
>>>
>>> OTOH, the comment for `tramp-process-connection-type' says that it's
>>> not
>>> applicable for Tramp.
>>>
>>> Hmm. What happens, when you set `tramp-process-connection-type' to
>>> nil'?
>>> Does Tramp still work on your mac?
>>
>> Nope.
>
> That's what I've feared. The comment says, that Tramp needs a pty for
> connection; `process-connection-type' must be set to t therefore. So
> that's not applicable.


FWIW, on my machine, t is the default for process-connection-type as  
well as tramp-process-connection-type.

--
David Abrahams
BoostPro Computing
http://boostpro.com










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

* bug#3071: 23.0.92; accept-process-output broken on MacOS
  2009-04-21 23:46 ` YAMAMOTO Mitsuharu
@ 2016-02-11 20:24   ` Alan Third
  0 siblings, 0 replies; 9+ messages in thread
From: Alan Third @ 2016-02-11 20:24 UTC (permalink / raw)
  To: YAMAMOTO Mitsuharu
  Cc: David Abrahams, John Wiegley, tramp-devel, 3071, michael.albinus

YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> writes:

>>>>>> On Tue, 21 Apr 2009 08:52:04 -0400, David Abrahams <dave@boostpro.com> said:
>
>> Opening remote files/directories via TRAMP is wicked slow on MacOS;
>> the same operation on a linux emacs running on the same hardware is
>> practically instantaneous.
>
>> In GNU Emacs 23.0.92.1 (i386-apple-darwin9.6.2, NS apple-appkit-949.43)
>>  of 2009-04-19 on zreba.local
>> Windowing system distributor `Apple', version 10.3.949
>> configured using `configure  '--with-ns' '--with-jpeg' '--with-tiff' '--with-gif''
>
> I tried the following steps with both the Cocoa/GNUstep port and the
> X11 build on the same machine running Mac OS X 10.5.6.  Both are
> compiled from the latest CVS trunk.
>
>   1. Start Emacs with the `-Q' option.
>   2. C-x C-f /sshx:remotehost: RET  (remotehost is running Solaris)
>
> The Cocoa/GNUstep port was much slower (~20 sec. to list the home
> directory) than the X11 build (< 2 sec.).

I've just tried this on Emacs 25 and it all seems pretty snappy. If
anyone is still finding it to be slow please let meknow, otherwise I'll
close this bug as fixed.
-- 
Alan Third





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

end of thread, other threads:[~2016-02-11 20:24 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-04-21 12:52 bug#3071: 23.0.92; accept-process-output broken on MacOS David Abrahams
2009-04-21 19:29 ` Michael Albinus
     [not found] ` <87tz4hls94.fsf@gmx.de>
2009-04-22 13:09   ` David Abrahams
     [not found]   ` <D490528D-C6E7-439C-A327-A99025D7B02F@boostpro.com>
2009-04-22 13:59     ` Michael Albinus
     [not found]     ` <nqhc0glrh4.fsf@alcatel-lucent.de>
2009-04-22 14:52       ` David Abrahams
     [not found] <mailman.5766.1240325046.31690.bug-gnu-emacs@gnu.org>
2009-04-21 15:20 ` Michael Albinus
     [not found] ` <nqmyaaav9j.fsf@alcatel-lucent.de>
2009-04-21 16:40   ` David Abrahams
     [not found] <m2iqkyqidn.fsf@boostpro.com>
2009-04-21 23:46 ` YAMAMOTO Mitsuharu
2016-02-11 20:24   ` Alan Third

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).