Return-Path: X-Original-To: notmuch@notmuchmail.org Delivered-To: notmuch@notmuchmail.org Received: from localhost (localhost [127.0.0.1]) by olra.theworths.org (Postfix) with ESMTP id DC13D431FAF for ; Wed, 22 Aug 2012 18:34:16 -0700 (PDT) X-Virus-Scanned: Debian amavisd-new at olra.theworths.org X-Spam-Flag: NO X-Spam-Score: -0.7 X-Spam-Level: X-Spam-Status: No, score=-0.7 tagged_above=-999 required=5 tests=[RCVD_IN_DNSWL_LOW=-0.7] autolearn=disabled Received: from olra.theworths.org ([127.0.0.1]) by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Ektz6Y1wQEdX for ; Wed, 22 Aug 2012 18:34:16 -0700 (PDT) Received: from dmz-mailsec-scanner-7.mit.edu (DMZ-MAILSEC-SCANNER-7.MIT.EDU [18.7.68.36]) by olra.theworths.org (Postfix) with ESMTP id DFDFF431FAE for ; Wed, 22 Aug 2012 18:34:15 -0700 (PDT) X-AuditID: 12074424-b7fa06d0000008c2-c1-503588979310 Received: from mailhub-auth-3.mit.edu ( [18.9.21.43]) by dmz-mailsec-scanner-7.mit.edu (Symantec Messaging Gateway) with SMTP id A8.0E.02242.79885305; Wed, 22 Aug 2012 21:34:15 -0400 (EDT) Received: from outgoing.mit.edu (OUTGOING-AUTH.MIT.EDU [18.7.22.103]) by mailhub-auth-3.mit.edu (8.13.8/8.9.2) with ESMTP id q7N1YDAK015517; Wed, 22 Aug 2012 21:34:14 -0400 Received: from awakening.csail.mit.edu (awakening.csail.mit.edu [18.26.4.91]) (authenticated bits=0) (User authenticated as amdragon@ATHENA.MIT.EDU) by outgoing.mit.edu (8.13.6/8.12.4) with ESMTP id q7N1YC8f019546 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=NOT); Wed, 22 Aug 2012 21:34:13 -0400 (EDT) Received: from amthrax by awakening.csail.mit.edu with local (Exim 4.77) (envelope-from ) id 1T4MJI-0000eQ-56; Wed, 22 Aug 2012 21:34:12 -0400 Date: Wed, 22 Aug 2012 21:34:12 -0400 From: Austin Clements To: Bart Bunting Subject: Re: Errors after upgrade to 0.14 Message-ID: <20120823013412.GX11179@mit.edu> References: <20120823004117.GT11179@mit.edu> <20120823010922.GV11179@mit.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFmphleLIzCtJLcpLzFFi42IR4hTV1p3eYRpgsGemsMXFPfvZLa7fnMns wOTxbNUtZo9TXw6xBzBFcdmkpOZklqUW6dslcGUcWLCHueCFesXpqdeZGhjvyncxcnJICJhI 3NxynRnCFpO4cG89WxcjF4eQwD5Gid/zvrFDOBsYJaY93gaVOckksX3rXSYIZwmjxIKNu8H6 WQRUJXYdO8cCYrMJaEhs27+csYuRg0NEQEXiyA4+kDCzgLTEt9/NTCC2sICmxLGeK6wgNq+A jsSt9yehFvQzSnz6cIYFIiEocXLmExaIZi2JG/9eMoHMBBm0/B8HSJgTKHzm6RywmaJAq6ac 3MY2gVFoFpLuWUi6ZyF0L2BkXsUom5JbpZubmJlTnJqsW5ycmJeXWqRrrpebWaKXmlK6iREU 2OwuKjsYmw8pHWIU4GBU4uF9YW4aIMSaWFZcmXuIUZKDSUmUV7QdKMSXlJ9SmZFYnBFfVJqT WnyIUYKDWUmE9081UI43JbGyKrUoHyYlzcGiJM57PeWmv5BAemJJanZqakFqEUxWhoNDSYLX EBjBQoJFqempFWmZOSUIaSYOTpDhPEDDpUFqeIsLEnOLM9Mh8qcYFaXEedlAEgIgiYzSPLhe WOJ5xSgO9Iow7wqQu3mASQuu+xXQYCagwWpXjUEGlyQipKQaGAX4k7bzmTVN1FHWP9L30/9k 7drzF1PYnFIuWp353dnx8OZne8Vp589HV1a9aov6df9wYEeiifKxl3tc5gVtan9Uz+hQtC75 tsr5EokuYe8ADwn7qRyCmRcb256xXbvkN6vB5E9nZFGlY9bEr2py3jILlJfJ7f6xqTy/mGf6 NJUTb6rZb+S1K7EUZyQaajEXFScCANmAhyoXAwAA Cc: notmuch@notmuchmail.org X-BeenThere: notmuch@notmuchmail.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: "Use and development of the notmuch mail system." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Aug 2012 01:34:17 -0000 This looks like a different error from the one in your original email. Was the original error also triggered by hitting 'a'? This error is definitely from simultaneous access to the database and is expected. But this has been a problem since the dawn of notmuch and shouldn't have started just with 0.14 (unless we did something to make it worse?). I do have some experimental patches that fix the database locking issues if it's turning out to be a serious problem for you, but the fix introduces its own issues. Quoth Bart Bunting on Aug 23 at 11:21 am: > Hi Austin, > > I applied the patch and this error was from after that. > > The way it was triggered was by hitting 'a' to archive a message in the > search view. > > From what I can tell it's just the xapian error and there is nothing > about json. Hope it means more to you. > > Debugger entered--Lisp error: (error "A Xapian exception occurred opening database: Unable to get write lock on /Users/bart/mail/.notmuch/xapian: already locked") > ad-Orig-signal(error ("A Xapian exception occurred opening database: Unable to get write lock on /Users/bart/mail/.notmuch/xapian: already locked")) > signal(error ("A Xapian exception occurred opening database: Unable to get write lock on /Users/bart/mail/.notmuch/xapian: already locked")) > ad-Orig-error("A Xapian exception occurred opening database: Unable to get write lock on /Users/bart/mail/.notmuch/xapian: already locked") > apply(ad-Orig-error "A Xapian exception occurred opening database: Unable to get write lock on /Users/bart/mail/.notmuch/xapian: already locked") > error("A Xapian exception occurred opening database: Unable to get write lock on /Users/bart/mail/.notmuch/xapian: already locked") > notmuch-call-notmuch-process("tag" "-inbox" "--" "thread:00000000000225c8") > apply(notmuch-call-notmuch-process "tag" ("-inbox" "--" "thread:00000000000225c8")) > notmuch-tag("thread:00000000000225c8" ("-inbox")) > notmuch-search-tag-region(800 800 ("-inbox")) > notmuch-search-tag(("-inbox")) > ad-Orig-notmuch-search-archive-thread() > notmuch-search-archive-thread() > call-interactively(notmuch-search-archive-thread nil nil) > > > Kind regards > > Austin Clements writes: > > > Quoth myself on Aug 22 at 8:41 pm: > >> Quoth Bart Bunting on Aug 23 at 9:36 am: > >> > Good morning, > >> > > >> > After upgrading to notmuch 014 I am seeing the following messages appear > >> > in the messages buffer. > >> > > >> > error in process filter: byte-code: Wrong type argument: number-or-marker-p, nil > >> > error in process filter: Wrong type argument: number-or-marker-p, nil > >> > > >> > I am also getting a repeating message in the minibuffer (I think) which > >> > says something like "json read tail error". Sorry that I am not more > >> > specific as I use emacspeak and this message appears to repeat many > >> > times interupting speech so I am not 100% sure of what it exactly says. > >> > >> This is probably "json-readtable-error", which is, unfortunately, > >> about the most generic error the JSON parser can give. > >> > >> > My gut feeling is that it is happening when notmuch is updating the > >> > database or something. > >> > > >> > Is this expected behaviour? It is particularly annoying for me as it > >> > sends the speech synth crazy and crashes it for a period of about 30 > >> > seconds. > >> > > >> > If it is expected then I will try and find a way to prevent emacspeak > >> > from trying to read it. > >> > >> This is definitely not expected behavior. Does this happen when > >> you're searching for messages or when you're viewing a thread? Can > >> you give any more details on what you're doing when you get this > >> error? > >> > >> Try doing M-x toggle-debug-on-error and then triggering the error. > >> Hopefully Emacs will give you a buffer with a backtrace that will give > >> us a better idea of where this is happening. > > > > Actually, I might know what's going on here. Based on your suspicion > > about notmuch updating the database and assuming that this happens in > > the search buffer, I think the parser error recovery code is leaving > > the parser in a slightly invalid state, which causes the next > > invocation to think it can consume more data when there is no more > > data to consume. I would expect that to give at most one readtable > > error, but maybe there's something I'm overlooking. > > > > Could you try the following one line patch? > > > > diff --git a/emacs/notmuch-lib.el b/emacs/notmuch-lib.el > > index 900235b..a09c0f6 100644 > > --- a/emacs/notmuch-lib.el > > +++ b/emacs/notmuch-lib.el > > @@ -375,7 +375,7 @@ resynchronize after an error by moving point." > > > > (if (eq (notmuch-json-next jp) 'value) > > ;; We're already at a value > > - nil > > + (if (eobp) 'retry nil) > > ;; Drive the state toward 'expect-value > > (skip-chars-forward " \t\r\n") > > (or (when (eobp) 'retry) > >