[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[sup-talk] Localized date on mbox From line in sent messages



This might be known.  I accidentally used 0.8.1 instead of git next
once and it screwed up my sent box.  After forwarding a mail sup
started to blow up (what felt like) after initiall poll.

NoMethodError from thread: poll after loading inbox
undefined method `[]' for nil:NilClass
/home/terotil/src/sup/lib/sup/xapian_index.rb:567:in `mkterm'
/home/terotil/src/sup/lib/sup/xapian_index.rb:338:in `find_docid'
/home/terotil/src/sup/lib/sup/xapian_index.rb:344:in `find_doc'
/home/terotil/src/sup/lib/sup/xapian_index.rb:354:in `get_entry'
/home/terotil/src/sup/lib/sup/xapian_index.rb:73:in `build_message'
/usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
/home/terotil/src/sup/lib/sup/xapian_index.rb:363:in `synchronize'
/home/terotil/src/sup/lib/sup/xapian_index.rb:73:in `build_message'
/home/terotil/src/sup/lib/sup/util.rb:520:in `send'
/home/terotil/src/sup/lib/sup/util.rb:520:in `method_missing'
/home/terotil/src/sup/lib/sup/poll.rb:109:in `do_poll'
/home/terotil/src/sup/lib/sup/poll.rb:166:in `each_message_from'
/home/terotil/src/sup/lib/sup/source.rb:104:in `each'

I went to throw in debugger and see what was inside.

/home/terotil/src/sup/lib/sup/poll.rb:109
old_m = Index.build_message m.id
(rdb:1) eval m
#<Redwood::Message:0xb649d5e8 @attachments=[], @have_snippet=false, @source_info=4598, @chunks=[#<Redwood::Chunk::Text:0xb648d328 @lines=["...", "", "***********************************************************************", " An error occurred while loading this message. It is possible that", " the source has changed, or (in the case of remote sources) is down.", " You can check the log for errors, though hopefully an error window", " should have popped up at some point.", "", " The message location was:", " sup://sent#4598", "***********************************************************************", "", "The error message was:", "  mismatch in mbox file offset 4598: \"From tero@tilus.net pe", "loka\\302\\240\\302\\240 16 19:06:58 +0300 2009\\n\"."]>], @dirty=true, @snippet_contains_encrypted_content=false, @source=#<Recoverable:0xb78023cc @error=#<Redwood::OutOfSyncSourceError: mismatch in mbox file offset 4598: "From tero@tilus.net pe loka\302\240\302\240 16 19:06:58 +0300 2
 009\n".>, @mutex=#<Mutex:0xb7802390>, @o=#<Redwood::SentLoader:0xb7809b2c @cur_offset=12856, @dirty=true, @uri="mbox:///home/terotil/.sup/sent.mbox", @archived=true, @path="/home/terotil/.sup/sent.mbox", @filename="/home/terotil/.sup/sent.mbox", @f=#<File:/home/terotil/.sup/sent.mbox>, @mutex=#<Mutex:0xb7809adc>, @labels=#<Set: {}>, @id=nil, @usual=true>>, @encrypted=false, @refs=[], @labels=#<Set: {:sent, :inbox, :unread}>, @snippet=nil>

Okay, it could not load a message from sent box because it thought the
message wasnt there anymore.  The missmatch was because of the
starting From line had broken date.  It was a localized version of
what should have been there, with an added bonus of multibyte chars
(two nonbreaking spaces after month name, no idea how thats even
possible).

Fixed it by fixing the mbox.  Dunno how the broken header came to be.
The file has most certainly been accessed by sup alone.

Full broken headers follow

From tero@tilus.net pe loka   16 19:06:58 +0300 2009
Subject: Fwd: Neuroscience, Cogmed, and learning disabilities
From: Tero Tilus <tero@tilus.net>
To: joonas.kekkonen <joonas.kekkonen@iki.fi>
Date: Fri, 16 Oct 2009 19:06:58 +0300
Message-Id: <1255709172-sup-7715@kuovi.tilus.net>
User-Agent: Sup/0.8.1
Content-Transfer-Encoding: 8bit
Content-Type: multipart/mixed; boundary="=-1255709218-544380-431-3013-1-="
MIME-Version: 1.0

-- 
Tero Tilus ## 050 3635 235 ## http://tero.tilus.net/
_______________________________________________
sup-talk mailing list
sup-talk@rubyforge.org
http://rubyforge.org/mailman/listinfo/sup-talk