Archive of RubyForge sup-talk mailing list
 help / color / mirror / Atom feed
From: bgamari.foss@gmail.com (Ben Gamari)
Subject: [sup-talk] Crash while scrolling
Date: Wed, 16 Sep 2009 13:23:40 -0400	[thread overview]
Message-ID: <20090916172340.GA20566@ben-laptop> (raw)
In-Reply-To: <1252773189-sup-246@masanjin.net>

On Sat, Sep 12, 2009 at 09:35:21AM -0700, William Morgan wrote:
> Reformatted excerpts from Ben Gamari's message of 2009-09-11:
> > Recently I've been seeing this crash[1] pretty consistently on the next
> > branch with the Xapian backend.
> 
> Is your Xapian index somewhat old? There have been index format changes
> that have caused this type of thing recently. You might try rebuilding
> it.

Well, after several attempts at rebuilding my index, I finally got lucky
and sup-sync ran to completion. Unfortunately, sup now fails to even
start, failing out with the following exception while loading threads
for inbox-mode,

	$ sup
	--- SystemExit from thread: main
	Thread#join: deadlock 0x7f592eec4d78 - mutual join(0x7f592f01d6e8)
	/opt/exp/sup/lib/sup/message.rb:240:in `select'
	/opt/exp/sup/lib/sup/buffer.rb:35:in `nonblocking_getch'
	/usr/bin/sup:213

However, at this point during debugging I happened to pipe stderr to a
file and accidentally found that most of the backtrace was actually
being hidden by curses.  Examining the full output on stderr reveals,

	/usr/bin/sup:213(eval):3:in `synchronize': Thread#join: deadlock 0x7f4d5da565c0 - mutual join(0x7f4d5daf8be0) (ThreadError)
		from (eval):3:in `raw_header'
		from /opt/exp/sup/lib/sup/imap.rb:98:in `load_header'
		from /opt/exp/sup/lib/sup/util.rb:560:in `send'
		from /opt/exp/sup/lib/sup/util.rb:560:in `__pass'
		from /opt/exp/sup/lib/sup/util.rb:547:in `method_missing'
		from /opt/exp/sup/lib/sup/message.rb:238:in `load_from_source!'
		from /opt/exp/sup/lib/sup/message.rb:219:in `chunks'
		from /opt/exp/sup/lib/sup/message.rb:164:in `snippet'
		from /opt/exp/sup/lib/sup/thread.rb:91:in `snippet'
		from /opt/exp/sup/lib/sup/imap.rb:259:in `select'
		from /opt/exp/sup/lib/sup/thread.rb:68:in `each'
		from /opt/exp/sup/lib/sup/thread.rb:168:in `each_with_stuff'
		from /opt/exp/sup/lib/sup/thread.rb:67:in `each'
		from /opt/exp/sup/lib/sup/thread.rb:91:in `select'
		from /opt/exp/sup/lib/sup/thread.rb:91:in `snippet'
		from /opt/exp/sup/lib/sup/modes/thread-index-mode.rb:840:in `text_for_thread_at'
		from /opt/exp/sup/lib/sup/modes/thread-index-mode.rb:758:in `regen_text'
		from /opt/exp/sup/lib/sup/util.rb:364:in `map_with_index'
		from /opt/exp/sup/lib/sup/imap.rb:259:in `each_with_index'
		from /opt/exp/sup/lib/sup/util.rb:364:in `each'
		from /opt/exp/sup/lib/sup/util.rb:364:in `each_with_index'
		from /opt/exp/sup/lib/sup/util.rb:364:in `map_with_index'
		from /opt/exp/sup/lib/sup/modes/thread-index-mode.rb:758:in `regen_text'
		from /opt/exp/sup/lib/sup/modes/thread-index-mode.rb:687:in `resize'
		from /opt/exp/sup/lib/sup/buffer.rb:88:in `resize'
		from /opt/exp/sup/lib/sup/buffer.rb:329:in `draw_screen'
		from /opt/exp/sup/lib/sup/buffer.rb:745:in `clear'
		from /opt/exp/sup/lib/sup/util.rb:520:in `send'
		from /opt/exp/sup/lib/sup/util.rb:520:in `method_missing'
		from /opt/exp/sup/lib/sup/imap.rb:283:in `shutup'
		from /opt/exp/sup/lib/sup/imap.rb:270:in `unsafe_connect'
		from /opt/exp/sup/lib/sup/imap.rb:244:in `initialize'
		from /opt/exp/sup/lib/sup/imap.rb:244:in `new'
		from /opt/exp/sup/lib/sup/imap.rb:244:in `unsafe_connect'
		from /opt/exp/sup/lib/sup/imap.rb:331:in `safely'
		from /opt/exp/sup/lib/sup/imap.rb:148:in `unsynchronized_connect'
		from (eval):3:in `connect'
		from (eval):3:in `synchronize'
		from (eval):3:in `connect'
		from /opt/exp/sup/lib/sup/util.rb:560:in `send'
		from /opt/exp/sup/lib/sup/util.rb:560:in `__pass'
		from /opt/exp/sup/lib/sup/util.rb:547:in `method_missing'
		from /usr/bin/sup:189
		from /opt/exp/sup/lib/sup.rb:77:in `reporting_thread'
		from /opt/exp/sup/lib/sup.rb:75:in `initialize'
		from /opt/exp/sup/lib/sup.rb:75:in `new'
		from /opt/exp/sup/lib/sup.rb:75:in `reporting_thread'
		from /usr/bin/sup:187
		from /usr/bin/sup:185:in `each'
		from /usr/bin/sup:185
		[Wed Sep 16 13:01:11 -0400 2009] ERROR: oh crap, an exception
		----------------------------------------------------------------
		I'm very sorry. It seems that an error occurred in Sup. Please
		accept my sincere apologies. If you don't mind, please send the
		contents of ~/.sup/exception-log.txt and a brief report of the
		circumstances to sup-talk at rubyforge dot orgs so that I might
		address this problem. Thank you!

		Sincerely,
		William
		----------------------------------------------------------------


with the first stacktrace following this on stdout. With this
information it looks like this bug should become much more debuggable.
Being in the imap module, it seems likely that it is my gmail source
that is causing the failure. Unfortunately I have no way to verify that
the problem is limited to the gmail source as sup raises as exception
when it encounters an unknown source, precluding the option of simply
commenting out the source in sources.yaml.

Anyways, this is the current status of things on my machine. William, do
you have any ideas what might cause such a backtrace. At this point
classes have started and I really have no more time to devote to
getting sup working. If there isn't a fairly simple solution here I guess
I'll just need to stick with mutt (ugh). Anyways, thanks for your work.

Cheers,
- Ben



  parent reply	other threads:[~2009-09-16 17:23 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-11 16:58 Ben Gamari
2009-09-12 16:35 ` William Morgan
2009-09-13 15:02   ` Ben Gamari
2009-09-16 17:23   ` Ben Gamari [this message]
2009-09-26 14:31     ` William Morgan
2009-09-28 18:10       ` Ben Gamari
2009-10-01 13:43         ` William Morgan
2009-10-01 17:44           ` Ben Gamari
2009-10-01 18:31             ` William Morgan
2009-10-01 19:01               ` Ben Gamari
2009-10-11 20:31                 ` William Morgan
2009-10-01 18:41             ` [sup-talk] Writing time-sensitive portions of sup in C Carl Worth
2009-09-30 21:21     ` [sup-talk] Crash while scrolling William Morgan
2009-10-04 19:59 ` Guillaume Quintard

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=20090916172340.GA20566@ben-laptop \
    --to=bgamari.foss@gmail.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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox