all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Ted Zlatanov <tzz@lifelogs.com>
To: emacs-devel@gnu.org
Subject: Gnus encrypted connections hang (was: Several problems)
Date: Thu, 31 Jul 2014 19:23:58 -0400	[thread overview]
Message-ID: <877g2tglip.fsf_-_@lifelogs.com> (raw)
In-Reply-To: 53D9C470.80703@yandex.ru

On Thu, 31 Jul 2014 08:22:08 +0400 Dmitry Antipov <dmantipov@yandex.ru> wrote: 

DA> On 07/31/2014 12:02 AM, Ted Zlatanov wrote:
>> The symptom seems to be that GnuTLS will read data, then gets a retry,
>> and finally hangs forever. I can duplicate it by trying to read the last
>> 200 messages in emacs-devel and I believe even as little as 16K will
>> trigger the behavior. But if I read the last 1 message only (`C-u 1
>> RET') then things work.  If this is indeed a timer problem, it will be
>> hard to replicate but I hope this is enough data.

DA> Is it possible to create a simple recipe?  I'm not familiar enough with Gnus, and
DA> would like to see something like in http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16603#5.

>> If you prefer a bug report, let me know.

DA> Yes, please.

Hmm, I'd like some help here.  I can't replicate the problem easily.
Using Lars' recipe from that bug report, I did:

#+begin_src emacs-lisp
(require 'gnus-group)
(setq gnutls-verbose 9)
(let ((gnus-bug-group-download-format-alist
       '((emacs . "https://code.jquery.com/jquery-2.1.1.js"))))
  (gnus-read-ephemeral-emacs-bug-group 16577))
#+end_src

which locks up for me reliably the *first* time it's run, in a way
similar to what I reported earlier, but there's no output in *Messages*.
It's hitting a static URL with some parameters and transferring a few KB
of data.

OTOH here's a recipe that doesn't lock up, but transfers a fairly large
file quickly.  Because it doesn't lock up, I believe the issue is
somehow tied to interaction with the process.

#+begin_src emacs-lisp
(let ((p (open-gnutls-stream "tls" "tls" "code.jquery.com" "443")))
  (with-current-buffer "tls"
    (process-send-string p "GET /jquery-2.1.1.js\n")))
#+end_src

Ideally I'd like to provide you an exact recipe to replicate what Gnus
does but it's fairly complicated. Lars would be better at figuring this
out. Perhaps the first recipe above is enough. If you or others have
ideas, please let me know.  I'll open the bug as soon as I have a recipe.

I also asked about the reason for introducing this change recently, and
if it can be made configurable and optional, at least. Right now it
makes Gnus and perhaps other parts of Emacs unusable.  Please point me
to the discussion, if any, about this change so I can learn.  If there
was no previous discussion, could you explain a bit?

Thanks
Ted




  reply	other threads:[~2014-07-31 23:23 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-30 20:02 Several problems Ted Zlatanov
2014-07-30 20:10 ` Ted Zlatanov
2014-07-31  4:22 ` Dmitry Antipov
2014-07-31 23:23   ` Ted Zlatanov [this message]
2014-07-31 23:41     ` Gnus encrypted connections hang Ted Zlatanov
2014-08-01  7:01       ` Dmitry Antipov
2014-08-01  7:13     ` Dmitry Antipov
2014-08-01  9:44       ` Ted Zlatanov

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=877g2tglip.fsf_-_@lifelogs.com \
    --to=tzz@lifelogs.com \
    --cc=emacs-devel@gnu.org \
    /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.