unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#48118: 27.1; 28; Only first process receives output with multiple running processes
@ 2021-04-30 13:44 Daniel Mendler
  2021-04-30 14:17 ` Eli Zaretskii
  0 siblings, 1 reply; 24+ messages in thread
From: Daniel Mendler @ 2021-04-30 13:44 UTC (permalink / raw)
  To: 48118

When running multiple asynchronous processes only the output of the
first process is handled. This happens when the first process
continously produces a huge amount of output, for example when running
`ripgrep` as done by my `consult-ripgrep` command (part of my Consult
package). Then Emacs is stuck handling the output of the first process.
The output of the second process is not read until the first process is
terminated. I expect Emacs to treat the running processes fairly. The
issue also occurs if a :filter function is specified. Both Emacs 27 and
28 are affected.

Minimal reproducible example by @jakanakaevangeli:

(progn
  (setq pa (make-process
             :name "yes-a"
             :command '("yes")
             :connection-type 'pipe
             :buffer (setq a (generate-new-buffer " *a*"))))
  (setq pb (make-process
             :name "yes-b"
             :command '("yes")
             :connection-type 'pipe
             :buffer (setq b (generate-new-buffer " *b*"))))
  (run-at-time
   1 1
   (lambda ()
     (message "size a: %s\nsize b: %s"
              (buffer-size a) (buffer-size b)))))

Original bug discussions:
https://github.com/minad/consult/issues/272
https://github.com/minad/consult/pull/297





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

end of thread, other threads:[~2021-06-04 14:00 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-04-30 13:44 bug#48118: 27.1; 28; Only first process receives output with multiple running processes Daniel Mendler
2021-04-30 14:17 ` Eli Zaretskii
2021-04-30 14:23   ` Daniel Mendler
2021-04-30 14:31     ` Eli Zaretskii
2021-04-30 14:26   ` Eli Zaretskii
2021-04-30 14:30     ` Daniel Mendler
2021-04-30 14:34       ` Eli Zaretskii
2021-04-30 14:45         ` Daniel Mendler
2021-04-30 14:59           ` Eli Zaretskii
2021-04-30 15:39             ` Daniel Mendler
2021-04-30 15:58               ` Eli Zaretskii
2021-04-30 16:17                 ` Daniel Mendler
2021-04-30 18:06                   ` Eli Zaretskii
2021-05-02  7:23                   ` Lars Ingebrigtsen
2021-05-24 21:05                     ` miha--- via Bug reports for GNU Emacs, the Swiss army knife of text editors
2021-05-25 11:38                       ` Eli Zaretskii
2021-05-25 15:18                         ` miha--- via Bug reports for GNU Emacs, the Swiss army knife of text editors
2021-05-25 17:12                           ` Eli Zaretskii
2021-05-25 18:02                             ` miha--- via Bug reports for GNU Emacs, the Swiss army knife of text editors
2021-05-25 19:02                               ` Lars Ingebrigtsen
2021-06-04 13:34                     ` Philipp
2021-06-04 14:00                       ` Eli Zaretskii
2021-04-30 16:15               ` jakanakaevangeli
2021-04-30 17:52                 ` Eli Zaretskii

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