[PATCH 2/5] doc: document notmuch-dump --output=filename option
[notmuch-archives.git] / 3b / fb49e33a6698266e27ad58b7a2ce743b7b186d
1 Return-Path: <amdragon@mit.edu>\r
2 X-Original-To: notmuch@notmuchmail.org\r
3 Delivered-To: notmuch@notmuchmail.org\r
4 Received: from localhost (localhost [127.0.0.1])\r
5         by olra.theworths.org (Postfix) with ESMTP id B041B431FAF\r
6         for <notmuch@notmuchmail.org>; Wed, 22 Aug 2012 19:47:30 -0700 (PDT)\r
7 X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
8 X-Spam-Flag: NO\r
9 X-Spam-Score: -0.7\r
10 X-Spam-Level: \r
11 X-Spam-Status: No, score=-0.7 tagged_above=-999 required=5\r
12         tests=[RCVD_IN_DNSWL_LOW=-0.7] autolearn=disabled\r
13 Received: from olra.theworths.org ([127.0.0.1])\r
14         by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
15         with ESMTP id dSQ55vYOHWAY for <notmuch@notmuchmail.org>;\r
16         Wed, 22 Aug 2012 19:47:29 -0700 (PDT)\r
17 Received: from dmz-mailsec-scanner-2.mit.edu (DMZ-MAILSEC-SCANNER-2.MIT.EDU\r
18         [18.9.25.13])\r
19         by olra.theworths.org (Postfix) with ESMTP id 0E42C431FAE\r
20         for <notmuch@notmuchmail.org>; Wed, 22 Aug 2012 19:47:28 -0700 (PDT)\r
21 X-AuditID: 1209190d-b7fd56d000000933-7a-503599bf69ff\r
22 Received: from mailhub-auth-3.mit.edu ( [18.9.21.43])\r
23         by dmz-mailsec-scanner-2.mit.edu (Symantec Messaging Gateway) with SMTP\r
24         id 8D.62.02355.FB995305; Wed, 22 Aug 2012 22:47:27 -0400 (EDT)\r
25 Received: from outgoing.mit.edu (OUTGOING-AUTH.MIT.EDU [18.7.22.103])\r
26         by mailhub-auth-3.mit.edu (8.13.8/8.9.2) with ESMTP id q7N2lRlu020924; \r
27         Wed, 22 Aug 2012 22:47:27 -0400\r
28 Received: from awakening.csail.mit.edu (awakening.csail.mit.edu [18.26.4.91])\r
29         (authenticated bits=0)\r
30         (User authenticated as amdragon@ATHENA.MIT.EDU)\r
31         by outgoing.mit.edu (8.13.6/8.12.4) with ESMTP id q7N2lPtW026071\r
32         (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=NOT);\r
33         Wed, 22 Aug 2012 22:47:26 -0400 (EDT)\r
34 Received: from amthrax by awakening.csail.mit.edu with local (Exim 4.77)\r
35         (envelope-from <amdragon@mit.edu>)\r
36         id 1T4NS9-0000o9-En; Wed, 22 Aug 2012 22:47:25 -0400\r
37 Date: Wed, 22 Aug 2012 22:47:25 -0400\r
38 From: Austin Clements <amdragon@MIT.EDU>\r
39 To: Bart Bunting <bart@ursys.com.au>\r
40 Subject: Re: Errors after upgrade to 0.14\r
41 Message-ID: <20120823024725.GY11179@mit.edu>\r
42 References: <m2mx1m8pp3.fsf@ursys.com.au> <20120823004117.GT11179@mit.edu>\r
43         <20120823010922.GV11179@mit.edu> <m2mx1m9zd9.fsf@ursys.com.au>\r
44         <20120823013412.GX11179@mit.edu> <m2fw7etmbs.fsf@ursys.com.au>\r
45         <m2k3wq74yg.fsf@ursys.com.au>\r
46 MIME-Version: 1.0\r
47 Content-Type: text/plain; charset=us-ascii\r
48 Content-Disposition: inline\r
49 Content-Transfer-Encoding: quoted-printable\r
50 In-Reply-To: <m2k3wq74yg.fsf@ursys.com.au>\r
51 User-Agent: Mutt/1.5.21 (2010-09-15)\r
52 X-Brightmail-Tracker:\r
53  H4sIAAAAAAAAA+NgFlrOKsWRmVeSWpSXmKPExsUixCmqrbt/pmmAwaf/UhYX9+xnt7h+cyaz\r
54         A5PHs1W3mD1OfTnEHsAUxWWTkpqTWZZapG+XwJWxr3E9c8FrjYpdLxexNzD+Vepi5OSQEDCR\r
55         +NyzhB3CFpO4cG89WxcjF4eQwD5Gib8zNzNCOBsYJW5eeMEO4Zxkklj1aTYbSIuQwBJGiVXv\r
56         pUFsFgFViXVn17KA2GwCGhLb9i8H6ubgEBFQkTiygw8kzCwgLfHtdzMTiC0soClxrOcKK4jN\r
57         K6Aj8WluC9TmT4wSZw78Y4ZICEqcnPmEBaJZS+LGv5dMIDNBBi3/xwER1pZYtvA1WDknUMmB\r
58         e/PBThMFWjvl5Da2CYzCs5BMmoVk0iyESbOQTFrAyLKKUTYlt0o3NzEzpzg1Wbc4OTEvL7VI\r
59         10gvN7NELzWldBMjOA4keXcwvjuodIhRgINRiYf3hblpgBBrYllxZe4hRkkOJiVR3hOTgUJ8\r
60         SfkplRmJxRnxRaU5qcWHGCU4mJVEeP9UA+V4UxIrq1KL8mFS0hwsSuK8V1Ju+gsJpCeWpGan\r
61         phakFsFkZTg4lCR4H88AahQsSk1PrUjLzClBSDNxcIIM5wEafhqkhre4IDG3ODMdIn+KUZfj\r
62         /8mTdxmFWPLy81KlxHkPgRQJgBRllObBzYGlr1eM4kBvCfNyAZOZEA8w9cFNegW0hAloidpV\r
63         Y5AlJYkIKakGRpnOZ/9XLa3YYraAI8X0YlG9bL1CifCXj5Hr3q556nC+wGp23MTHwRtbE2Lb\r
64         dpl/NBL9YMp/5jOPq5zaLhfbL9K9i+1ORfsFrGE1zRS7cuPb69Oz75mU68t11RUG31j0QO3B\r
65         ng1fNG6/7hc8eMjtuGCiTFd27+1lQc7/jlzYLse4w83/6Ny1fEosxRmJhlrMRcWJAMYNTI86        AwAA\r
66 Cc: notmuch@notmuchmail.org\r
67 X-BeenThere: notmuch@notmuchmail.org\r
68 X-Mailman-Version: 2.1.13\r
69 Precedence: list\r
70 List-Id: "Use and development of the notmuch mail system."\r
71         <notmuch.notmuchmail.org>\r
72 List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
73         <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
74 List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
75 List-Post: <mailto:notmuch@notmuchmail.org>\r
76 List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
77 List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
78         <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
79 X-List-Received-Date: Thu, 23 Aug 2012 02:47:30 -0000\r
80 \r
81 Fun.  It looks like several things are colluding to cause problems\r
82 here.  The root problem is still concurrent database access, judging\r
83 by the error messages embedded in the string passed to\r
84 notmuch-search-process-filter, but it's being handled poorly at\r
85 several layers.  First, _notmuch_thread_create in the library doesn't\r
86 notice when notmuch_query_search_messages fails, so it constructs an\r
87 empty thread object, rather than indicating failure, which\r
88 notmuch-search.c dutifully emits.  But by that point the damage has\r
89 already been done by the error printed deep in the bowels of the\r
90 library.  Somehow that error message is tripping up the incremental\r
91 parser (exactly how I'm unclear on) and causing it to read the string\r
92 "tags" as a list-level JSON object, which it then passes to\r
93 notmuch-search-show-result as a result object.  Since it's not a\r
94 result object, plist-get returns nil, which causes =3D to raise the\r
95 error.\r
96 \r
97 This is probably a bug in the error recovery of the incremental JSON\r
98 parser (or its use in search-mode), since the output below looks clean\r
99 enough that it *should* be able to catch the error and resynchronize.\r
100 \r
101 Quoth Bart Bunting on Aug 23 at 11:49 am:\r
102 > Ok perhaps this is more helpfull?\r
103 >=20\r
104 > Debugger entered--Lisp error: (wrong-type-argument number-or-marker-p nil)\r
105 >   notmuch-search-show-result("tags")\r
106 >   byte-code("\304=08\305\"\203\306    !\307=3D\203\310\202Q\303\202Q\304=08\=\r
107 311\"\203D\312  !\304=0B\313\"\2030\310\202@\304=0B\314\"\203<\315\202@\316=\r
108 =0B!\210)\202Q\304=08\317\"\203Q\320    !\210\310\304\207" [notmuch-search-pro=\r
109 cess-state notmuch-search-json-parser done result memql (begin) notmuch-jso=\r
110 n-begin-compound retry t (result) notmuch-json-read (retry) (end) end notmu=\r
111 ch-search-show-result (end) notmuch-json-eof] 3)\r
112 >   notmuch-search-process-filter(#<process notmuch-search> ", \"tags\": []=\r
113 },\nA Xapian exception occurred performing query: The revision being read h=\r
114 as been discarded - you should call Xapian::Database::reopen() and retry th=\r
115 e operation\nQuery string was: thread:0000000000020a59\n{\"thread\": \"0000=\r
116 00000001fd19\", \"timestamp\": 0, \"date_relative\": \"1970-01-01\", \"matc=\r
117 hed\": 0, \"total\": 0, \"authors\": \"\", \"subject\": \"\", \"tags\": []}=\r
118 ,\nA Xapian exception occurred performing query: The revision being read ha=\r
119 s been discarded - you should call Xapian::Database::reopen() and retry the=\r
120  operation\nQuery string was: thread:0000000000020a57\n{\"thread\": \"00000=\r
121 00000020a59\", \"timestamp\": 0, \"date_relative\": \"1970-01-01\", \"match=\r
122 ed\": 0, \"total\": 0, \"authors\": \"\", \"subject\": \"\", \"tags\": []},=\r
123 \nA Xapian exception occurred performing query: The revision being read has=\r
124  been discarded - you should call Xapian::Database::reopen() and retry the =\r
125 operation\nQuery string was: thread:0000000000020a57\n{\"thread\": \"000000=\r
126 0000020a57\", \"timestamp\": 0, \"date_relative\": \"1970-01-01\", \"matche=\r
127 d\": 0, \"total\": 0, \"authors\": ")\r
128 >   recursive-edit()\r
129 >   debug(error (error "A Xapian exception occurred opening database: Unabl=\r
130 e to get write lock on /Users/bart/mail/.notmuch/xapian: already locked"))\r
131 >   ad-Orig-signal(error ("A Xapian exception occurred opening database: Un=\r
132 able to get write lock on /Users/bart/mail/.notmuch/xapian: already locked"=\r
133 ))\r
134 >   signal(error ("A Xapian exception occurred opening database: Unable to =\r
135 get write lock on /Users/bart/mail/.notmuch/xapian: already locked"))\r
136 >   ad-Orig-error("A Xapian exception occurred opening database: Unable to =\r
137 get write lock on /Users/bart/mail/.notmuch/xapian: already locked")\r
138 >   apply(ad-Orig-error "A Xapian exception occurred opening database: Unab=\r
139 le to get write lock on /Users/bart/mail/.notmuch/xapian: already locked")\r
140 >   error("A Xapian exception occurred opening database: Unable to get writ=\r
141 e lock on /Users/bart/mail/.notmuch/xapian: already locked")\r
142 >   notmuch-call-notmuch-process("tag" "-inbox" "--" "thread:00000000000222=\r
143 88")\r
144 >   apply(notmuch-call-notmuch-process "tag" ("-inbox" "--" "thread:0000000=\r
145 000022288"))\r
146 >   notmuch-tag("thread:0000000000022288" ("-inbox"))\r
147 >   notmuch-search-tag-region(202 202 ("-inbox"))\r
148 >   notmuch-search-tag(("-inbox"))\r
149 >   ad-Orig-notmuch-search-archive-thread()\r
150 >   notmuch-search-archive-thread()\r
151 >   call-interactively(notmuch-search-archive-thread nil nil)\r
152 >   recursive-edit()\r
153 >   debug(error (error "A Xapian exception occurred opening database: Unabl=\r
154 e to get write lock on /Users/bart/mail/.notmuch/xapian: already locked"))\r
155 >   ad-Orig-signal(error ("A Xapian exception occurred opening database: Un=\r
156 able to get write lock on /Users/bart/mail/.notmuch/xapian: already locked"=\r
157 ))\r
158 >   signal(error ("A Xapian exception occurred opening database: Unable to =\r
159 get write lock on /Users/bart/mail/.notmuch/xapian: already locked"))\r
160 >   ad-Orig-error("A Xapian exception occurred opening database: Unable to =\r
161 get write lock on /Users/bart/mail/.notmuch/xapian: already locked")\r
162 >   apply(ad-Orig-error "A Xapian exception occurred opening database: Unab=\r
163 le to get write lock on /Users/bart/mail/.notmuch/xapian: already locked")\r
164 >=20\r
165 >=20\r
166 > Kind regards\r
167 >=20\r
168 > Bart\r