Re: Errors after upgrade to 0.14
authorBart Bunting <bart@ursys.com.au>
Thu, 23 Aug 2012 01:43:19 +0000 (11:43 +1000)
committerW. Trevor King <wking@tremily.us>
Fri, 7 Nov 2014 17:49:11 +0000 (09:49 -0800)
a5/899240834dfa6ad48655f254374e871efd7671 [new file with mode: 0644]

diff --git a/a5/899240834dfa6ad48655f254374e871efd7671 b/a5/899240834dfa6ad48655f254374e871efd7671
new file mode 100644 (file)
index 0000000..8a1d419
--- /dev/null
@@ -0,0 +1,178 @@
+Return-Path: <bart@ursys.com.au>\r
+X-Original-To: notmuch@notmuchmail.org\r
+Delivered-To: notmuch@notmuchmail.org\r
+Received: from localhost (localhost [127.0.0.1])\r
+       by olra.theworths.org (Postfix) with ESMTP id 0F333431FAF\r
+       for <notmuch@notmuchmail.org>; Wed, 22 Aug 2012 18:43:25 -0700 (PDT)\r
+X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
+X-Spam-Flag: NO\r
+X-Spam-Score: 0\r
+X-Spam-Level: \r
+X-Spam-Status: No, score=0 tagged_above=-999 required=5 tests=[none]\r
+       autolearn=disabled\r
+Received: from olra.theworths.org ([127.0.0.1])\r
+       by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
+       with ESMTP id K7t5v14F3s6x for <notmuch@notmuchmail.org>;\r
+       Wed, 22 Aug 2012 18:43:24 -0700 (PDT)\r
+Received: from bit.local (that.urnet.com.au [203.7.149.1])\r
+       by olra.theworths.org (Postfix) with ESMTP id 0FF95431FAE\r
+       for <notmuch@notmuchmail.org>; Wed, 22 Aug 2012 18:43:24 -0700 (PDT)\r
+Received: by bit.local (Postfix, from userid 501)\r
+       id 1305112AB2AA; Thu, 23 Aug 2012 11:43:19 +1000 (EST)\r
+From: "Bart Bunting" <bart@ursys.com.au>\r
+To: Austin Clements <amdragon@MIT.EDU>\r
+Subject: Re: Errors after upgrade to 0.14\r
+In-Reply-To: <20120823013412.GX11179@mit.edu>\r
+References: <m2mx1m8pp3.fsf@ursys.com.au> <20120823004117.GT11179@mit.edu>\r
+       <20120823010922.GV11179@mit.edu> <m2mx1m9zd9.fsf@ursys.com.au>\r
+       <20120823013412.GX11179@mit.edu>\r
+User-Agent: Notmuch/0.13.2+128~g369b28d (http://notmuchmail.org)\r
+       Emacs/24.2.50.1 (i386-apple-darwin12.0.0)\r
+Date: Thu, 23 Aug 2012 11:43:19 +1000\r
+Message-ID: <m2fw7etmbs.fsf@ursys.com.au>\r
+MIME-Version: 1.0\r
+Content-Type: text/plain\r
+Cc: notmuch@notmuchmail.org\r
+X-BeenThere: notmuch@notmuchmail.org\r
+X-Mailman-Version: 2.1.13\r
+Precedence: list\r
+List-Id: "Use and development of the notmuch mail system."\r
+       <notmuch.notmuchmail.org>\r
+List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
+       <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
+List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
+List-Post: <mailto:notmuch@notmuchmail.org>\r
+List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
+List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
+       <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
+X-List-Received-Date: Thu, 23 Aug 2012 01:43:25 -0000\r
+\r
+Austin,\r
+\r
+I agree, it appears to be the normal locking issue.\r
+That poses a problem but one I'm used to.\r
+\r
+I was doing an archive when I hit the other error as well.\r
+\r
+I just got a debug traceback when entering the inbox from the hello\r
+screen.  Unfortunately it locked up my entire emacs and had to kill the\r
+process.\r
+\r
+I'll keep trying until I get something more helpfull.\r
+\r
+Cheers\r
+Bart\r
+\r
+\r
+\r
+\r
+Austin Clements <amdragon@MIT.EDU> writes:\r
+\r
+> This looks like a different error from the one in your original email.\r
+> Was the original error also triggered by hitting 'a'?\r
+>\r
+> This error is definitely from simultaneous access to the database and\r
+> is expected.  But this has been a problem since the dawn of notmuch\r
+> and shouldn't have started just with 0.14 (unless we did something to\r
+> make it worse?).  I do have some experimental patches that fix the\r
+> database locking issues if it's turning out to be a serious problem\r
+> for you, but the fix introduces its own issues.\r
+>\r
+> Quoth Bart Bunting on Aug 23 at 11:21 am:\r
+>> Hi Austin,\r
+>> \r
+>> I applied the patch and this error was from after that.\r
+>> \r
+>> The way it was triggered was by hitting 'a' to archive a message in the\r
+>> search view.\r
+>> \r
+>> From what I can tell it's just the xapian error and there is nothing\r
+>> about json.  Hope it means more to you.\r
+>> \r
+>> Debugger entered--Lisp error: (error "A Xapian exception occurred opening database: Unable to get write lock on /Users/bart/mail/.notmuch/xapian: already locked")\r
+>>   ad-Orig-signal(error ("A Xapian exception occurred opening database: Unable to get write lock on /Users/bart/mail/.notmuch/xapian: already locked"))\r
+>>   signal(error ("A Xapian exception occurred opening database: Unable to get write lock on /Users/bart/mail/.notmuch/xapian: already locked"))\r
+>>   ad-Orig-error("A Xapian exception occurred opening database: Unable to get write lock on /Users/bart/mail/.notmuch/xapian: already locked")\r
+>>   apply(ad-Orig-error "A Xapian exception occurred opening database: Unable to get write lock on /Users/bart/mail/.notmuch/xapian: already locked")\r
+>>   error("A Xapian exception occurred opening database: Unable to get write lock on /Users/bart/mail/.notmuch/xapian: already locked")\r
+>>   notmuch-call-notmuch-process("tag" "-inbox" "--" "thread:00000000000225c8")\r
+>>   apply(notmuch-call-notmuch-process "tag" ("-inbox" "--" "thread:00000000000225c8"))\r
+>>   notmuch-tag("thread:00000000000225c8" ("-inbox"))\r
+>>   notmuch-search-tag-region(800 800 ("-inbox"))\r
+>>   notmuch-search-tag(("-inbox"))\r
+>>   ad-Orig-notmuch-search-archive-thread()\r
+>>   notmuch-search-archive-thread()\r
+>>   call-interactively(notmuch-search-archive-thread nil nil)\r
+>> \r
+>> \r
+>> Kind regards\r
+>> \r
+>> Austin Clements <amdragon@MIT.EDU> writes:\r
+>> \r
+>> > Quoth myself on Aug 22 at  8:41 pm:\r
+>> >> Quoth Bart Bunting on Aug 23 at  9:36 am:\r
+>> >> > Good morning,\r
+>> >> > \r
+>> >> > After upgrading to notmuch 014 I am seeing the following messages appear\r
+>> >> > in the messages buffer.\r
+>> >> > \r
+>> >> > error in process filter: byte-code: Wrong type argument: number-or-marker-p, nil\r
+>> >> > error in process filter: Wrong type argument: number-or-marker-p, nil\r
+>> >> > \r
+>> >> > I am also getting a repeating message in the minibuffer (I think) which\r
+>> >> > says something like "json read tail error".  Sorry that I am not more\r
+>> >> > specific as I use emacspeak and this message appears to repeat many\r
+>> >> > times interupting speech so I am not 100% sure of what it exactly says.\r
+>> >> \r
+>> >> This is probably "json-readtable-error", which is, unfortunately,\r
+>> >> about the most generic error the JSON parser can give.\r
+>> >> \r
+>> >> > My gut feeling is that it is happening when notmuch is updating the\r
+>> >> > database or something.\r
+>> >> > \r
+>> >> > Is this expected behaviour?  It is particularly annoying for me as it\r
+>> >> > sends the speech synth crazy and crashes it for a period of about 30\r
+>> >> > seconds.\r
+>> >> > \r
+>> >> > If it is expected then I will try and find a way to prevent emacspeak\r
+>> >> > from trying to read it.\r
+>> >> \r
+>> >> This is definitely not expected behavior.  Does this happen when\r
+>> >> you're searching for messages or when you're viewing a thread?  Can\r
+>> >> you give any more details on what you're doing when you get this\r
+>> >> error?\r
+>> >> \r
+>> >> Try doing M-x toggle-debug-on-error and then triggering the error.\r
+>> >> Hopefully Emacs will give you a buffer with a backtrace that will give\r
+>> >> us a better idea of where this is happening.\r
+>> >\r
+>> > Actually, I might know what's going on here.  Based on your suspicion\r
+>> > about notmuch updating the database and assuming that this happens in\r
+>> > the search buffer, I think the parser error recovery code is leaving\r
+>> > the parser in a slightly invalid state, which causes the next\r
+>> > invocation to think it can consume more data when there is no more\r
+>> > data to consume.  I would expect that to give at most one readtable\r
+>> > error, but maybe there's something I'm overlooking.\r
+>> >\r
+>> > Could you try the following one line patch?\r
+>> >\r
+>> > diff --git a/emacs/notmuch-lib.el b/emacs/notmuch-lib.el\r
+>> > index 900235b..a09c0f6 100644\r
+>> > --- a/emacs/notmuch-lib.el\r
+>> > +++ b/emacs/notmuch-lib.el\r
+>> > @@ -375,7 +375,7 @@ resynchronize after an error by moving point."\r
+>> >  \r
+>> >    (if (eq (notmuch-json-next jp) 'value)\r
+>> >        ;; We're already at a value\r
+>> > -      nil\r
+>> > +      (if (eobp) 'retry nil)\r
+>> >      ;; Drive the state toward 'expect-value\r
+>> >      (skip-chars-forward " \t\r\n")\r
+>> >      (or (when (eobp) 'retry)\r
+>> >\r
+Bart\r
+-- \r
+Bart Bunting - Engineering Manager - URSYS\r
+459-461 Parramatta Rd. Leichhardt  NSW  2040  Australia\r
+Ph:           +61 2 8745 2811\r
+Mbl:          0409 560 005\r