On Fri, Jun 04, 2021 at 08:40:56PM -0500, Felipe Contreras wrote: > On Fri, Jun 4, 2021 at 8:37 PM David Bremner <da...@tethera.net> wrote: > > Felipe Contreras <felipe.contre...@gmail.com> writes: > > > > I can't use notmuch anymore, I get this error: > > > > > > A Xapian exception occurred opening database: The revision being read > > > has been discarded - you should call Xapian::Database::reopen() and > > > retry the operation > > > > > > Context. In order to investigate a bug about mbsync I moved away the > > > folder ~/mail/.notmuch. I have a timer that calls notmuch new after > > > mbsync, so I paused that timer. > > > > > > Initially I used notmuch, only to see everything empty. Then I > > > recalled what I did, removed all the files, and moved back the .nomuch > > > directory.
Perhaps a process had the database or the empty replacement open for writing over the moving aside or the moving back? That could result in a broken database. > `xapian-check ~/mail/.notmuch/xapian F` doesn't seem to change anything. With some filing systems and older format (chert) Xapian databases a system crash or power failure could result in truncating to zero size the files which tracked which blocks were in use and where the root of a particular revision of the tree; the xapian-check's "fix" mode was added to recreate those files by scanning the whole database to work out what they should contain. In newer format databases (glass) we eliminated these files and currently the "fix" mode doesn't actually do anything for glass. The plan was to teach xapian-check how to recreate the `iamglass` file, but that doesn't seem to suffer from the truncation problem and so it hasn't actually been implemented yet and so "F" currently does nothing for glass databases. > > > IIRC I was able to use notmuch without problems once, and then I got the > > > issue. > > > > Maybe the Xapian folk will have a more concrete suggestion, but I would > > start by running xapian-check on the database. In your case I guess that > > should be "xapian-check ~/mail/.notmuch". I'd suggest trying this simple tool I wrote that can probably rescue the tags from a broken notmuch database (the tags are the part notmuch can't just recreate by reindexing): https://git.xapian.org/?p=xapian;a=blob;f=README.notmuch;hb=refs/heads/notmuch-tag-rescue-hack Once you have those, you can reindex your mail and then restore the tags. Cheers, Olly _______________________________________________ notmuch mailing list -- email@example.com To unsubscribe send an email to notmuch-le...@notmuchmail.org