unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
* emacs UI hang: viewing a thread where msg has .tgz attachment with symlink to ..
@ 2014-07-18  0:11 Sanjoy Mahajan
  2014-07-18 11:55 ` David Bremner
  0 siblings, 1 reply; 5+ messages in thread
From: Sanjoy Mahajan @ 2014-07-18  0:11 UTC (permalink / raw)
  To: notmuch

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

When I view one particular thread, in which one of the messages has a
.tgz attachment, emacs hangs for at least 2-3 minutes before I stop it
with ctrl-g.  An strace on the emacs process shows an endless series of
stats and opens such as:

open("/tmp/emm.3391uhh/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/course/src/sfm-source/book/figures/fig-421.png",
O_RDONLY|O_LARGEFILE) = 15

Those are undoubtedly from the message with the .tgz attachment, which
all untars to src/ and has src/course as a symlink to ..:

$ tar -tvf 6.SFMx-source.tgz | grep src/course
lrwxrwxrwx sanjoy/sanjoy      0 2014-04-22 14:59 src/course -> ..

So I wonder whether notmuch-emacs is trying to untar the attachment and
then makes an ever more nested version of it, and never stops.  (As a
test, I visited the .tgz file directly in Emacs [with C-x C-f] but that
caused no problem.  So I think it is something specific to the notmuch
emacs interface.)

When I ctrl-g the emacs, I get a view of the thread in notmuch-show
mode, but perhaps not surprisingly it is slightly incorrect (see
attached screenshot).  The last message's information and content (from
the "Subject:" line onward) should be indented one space to line up
under the "Sanjoy Mahajan...07:11".

I'm using notmuch and notmuch-emacs 0.18.1-1 (Debian/i386 pkg) and emacs
24.3.

If there is further debugging information that would help, or tests that
I should run, let me know.

-Sanjoy


[-- Attachment #2: screenshot --]
[-- Type: image/png, Size: 8317 bytes --]

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

* Re: emacs UI hang: viewing a thread where msg has .tgz attachment with symlink to ..
  2014-07-18  0:11 emacs UI hang: viewing a thread where msg has .tgz attachment with symlink to Sanjoy Mahajan
@ 2014-07-18 11:55 ` David Bremner
  2014-07-20 11:27   ` Sanjoy Mahajan
  0 siblings, 1 reply; 5+ messages in thread
From: David Bremner @ 2014-07-18 11:55 UTC (permalink / raw)
  To: Sanjoy Mahajan, notmuch

Sanjoy Mahajan <sanjoy@MIT.EDU> writes:

> If there is further debugging information that would help, or tests that
> I should run, let me know.

It would be a big help if you could share a message that causes the
problem.

d

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

* Re: emacs UI hang: viewing a thread where msg has .tgz attachment with symlink to ..
  2014-07-18 11:55 ` David Bremner
@ 2014-07-20 11:27   ` Sanjoy Mahajan
  2014-07-20 14:25     ` David Bremner
  0 siblings, 1 reply; 5+ messages in thread
From: Sanjoy Mahajan @ 2014-07-20 11:27 UTC (permalink / raw)
  To: David Bremner, notmuch

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

David Bremner <david@tethera.net> writes:

> It would be a big help if you could share a message that causes the
> problem.

I've just managed to make an example that triggers the problem but that
isn't 14MB (the size of the original msg).  I'm attaching the message
below.  It contains, as an attachment, a 20KB .tgz file.

If it doesn't trigger the problem for you, I could also more closely
reproduce the procedure that triggers it by sending a message to the
list with that tgz file as an attachment.  But I am reluctant to do that
in the first instance, in case that approach does trigger the problem
for everyone reading the list emails using emacs!

( For my own reference in finding the message again: 
  notmuch search id:87d2d0uvoc.fsf@approx.mit.edu )

-Sanjoy


[-- Attachment #2: failing message --]
[-- Type: application/octet-stream, Size: 28032 bytes --]

Return-path: <sanjoy@mit.edu>
Envelope-to: sanjoy@localhost
Delivery-date: Sun, 20 Jul 2014 07:16:51 -0400
Received: from sanjoy by approx.mit.edu with local (Exim 4.82_1-5b7a7c0-XX)
	(envelope-from <sanjoy@mit.edu>)
	id 1X8p6p-0001UA-QC
	for sanjoy@localhost; Sun, 20 Jul 2014 07:16:51 -0400
From: Sanjoy Mahajan <sanjoy@mit.edu>
To: sanjoy@localhost
Subject: test notmuch w/ attached .tgz file that has link to ..
User-Agent: Notmuch/0.18.1 (http://notmuchmail.org) Emacs/24.3.1 (i486-pc-linux-gnu)
Date: Sun, 20 Jul 2014 07:16:51 -0400
Message-ID: <87d2d0uvoc.fsf@approx.mit.edu>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="

--=-=-=
Content-Type: text/plain

Here is the test file.

-Sanjoy


--=-=-=
Content-Type: application/x-gtar-compressed
Content-Disposition: attachment; filename=smaller-source.tgz
Content-Transfer-Encoding: base64
Content-Description: tgz file

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
IUTO/w8TwFXgAMgKAA==
--=-=-=--


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

* Re: emacs UI hang: viewing a thread where msg has .tgz attachment with symlink to ..
  2014-07-20 11:27   ` Sanjoy Mahajan
@ 2014-07-20 14:25     ` David Bremner
  2014-07-20 16:37       ` Sanjoy Mahajan
  0 siblings, 1 reply; 5+ messages in thread
From: David Bremner @ 2014-07-20 14:25 UTC (permalink / raw)
  To: Sanjoy Mahajan, notmuch

Sanjoy Mahajan <sanjoy@MIT.EDU> writes:

> David Bremner <david@tethera.net> writes:
>
>> It would be a big help if you could share a message that causes the
>> problem.
>
> I've just managed to make an example that triggers the problem but that
> isn't 14MB (the size of the original msg).  I'm attaching the message
> below.  It contains, as an attachment, a 20KB .tgz file.

Thanks very much for the test case. I've reported an upstream bug in
emacs; we'll have to see what the emacs devs think about it.

Here is a link to the bug report:

     http://debbugs.gnu.org/cgi/bugreport.cgi?bug=18063

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

* Re: emacs UI hang: viewing a thread where msg has .tgz attachment with symlink to ..
  2014-07-20 14:25     ` David Bremner
@ 2014-07-20 16:37       ` Sanjoy Mahajan
  0 siblings, 0 replies; 5+ messages in thread
From: Sanjoy Mahajan @ 2014-07-20 16:37 UTC (permalink / raw)
  To: David Bremner, notmuch

Thanks for finding the root cause (hopefully!).

-Sanjoy

David Bremner <david@tethera.net> writes:

> Sanjoy Mahajan <sanjoy@MIT.EDU> writes:
>
>> David Bremner <david@tethera.net> writes:
>>
>>> It would be a big help if you could share a message that causes the
>>> problem.
>>
>> I've just managed to make an example that triggers the problem but that
>> isn't 14MB (the size of the original msg).  I'm attaching the message
>> below.  It contains, as an attachment, a 20KB .tgz file.
>
> Thanks very much for the test case. I've reported an upstream bug in
> emacs; we'll have to see what the emacs devs think about it.
>
> Here is a link to the bug report:
>
>      http://debbugs.gnu.org/cgi/bugreport.cgi?bug=18063

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

end of thread, other threads:[~2014-07-20 16:38 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-07-18  0:11 emacs UI hang: viewing a thread where msg has .tgz attachment with symlink to Sanjoy Mahajan
2014-07-18 11:55 ` David Bremner
2014-07-20 11:27   ` Sanjoy Mahajan
2014-07-20 14:25     ` David Bremner
2014-07-20 16:37       ` Sanjoy Mahajan

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

	https://yhetil.org/notmuch.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).