Usage after database close
David Bremner
david at tethera.net
Sun Jun 28 15:11:31 PDT 2020
Floris Bruynooghe <flub at devork.be> writes:
>
> Ok, I forgot the "expected behaviour" part of the bug report ;) I think
> that this doesn't work is fine and I'm not surprised by and your
> description of fetching it first is very reasonable. However I was
> expecting NOTMUCH_STATUS_XAPIAN_EXEPTION instead of bluntly getting
> terminated. This is what the notmuch_database_close() docs say after
> all.
Sure, uncaught exceptions are never nice.
>
> I had a little look and this seems to be caused by the
> message->doc.termlist_begin() call in
> _notmuch_message_ensure_metadata(),
I guess almost every Xapian API call will fail with the database closed.
> I didn't have xapian debug symbols and am not familiar with xapian to
> quickly have an idea of whether this case can be improved or not.
> (-dbg debian packages for notmuch and xapian would be very handy ;))
>
You need to add a seperate repo for the new style debug symbols in
Debian:
$ (git)-[master]-% apt policy libxapian30-dbgsym
libxapian30-dbgsym:
Installed: 1.4.15-1
Candidate: 1.4.15-1
Version table:
*** 1.4.15-1 500
500 http://debug.mirrors.debian.org/debian-debug testing-debug/main amd64 Packages
500 http://debug.mirrors.debian.org/debian-debug unstable-debug/main amd64 Packages
100 /var/lib/dpkg/status
> But part of my question is, *should* this be improved? Am I
> interpreting notmuch's intended API correctly?
Well, I agree you should get NOTMUCH_STATUS_XAPIAN_EXCEPTION back, or we
should change the docs to say "just don't do that".
d
More information about the notmuch
mailing list