I know that notmuch doesnt' like it when the database changes while another action is running. But usually it will raise an exception. And not crash in talloc.
This is the backtrace I just got:
[debug] (13:34:37): ti: loaded 2100 threads.
[debug] (13:34:37): ti: loaded 2200 threads.
[debug] (13:34:37): ti: loaded 2300 threads.
[debug] (13:34:37): ti: loaded 2400 threads.
[ERROR] (13:34:37): nmt: got NULL for authors.
Program received signal SIGABRT, Aborted.
0x00007ffff3ffd477 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:55
55 ../sysdeps/unix/sysv/linux/raise.c: Datei oder Verzeichnis nicht gefunden.
(gdb) bt
#0 0x00007ffff3ffd477 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:55
#1 0x00007ffff3ffe8ca in __GI_abort () at abort.c:89
#2 0x00007ffff3fbae9c in talloc_abort (reason=0x7ffff3fc6ca8 "Bad talloc magic value - unknown value") at ../talloc.c:399
#3 0x00007ffff3fbcfcd in talloc_abort_unknown_value () at ../talloc.c:417
#4 talloc_chunk_from_ptr (ptr=0xb734b0) at ../talloc.c:436
#5 __talloc_with_prefix (prefix_len=0, size=24, context=0xb734b0) at ../talloc.c:648
#6 __talloc (size=24, context=0xb734b0) at ../talloc.c:708
#7 _talloc_named_const (name=0x7ffff7fc817a "notmuch_string_list_t", size=24, context=0xb734b0) at ../talloc.c:865
#8 talloc_named_const (context=<optimized out>, size=size@entry=24, name=name@entry=0x7ffff7fc817a "notmuch_string_list_t")
at ../talloc.c:1606
#9 0x00007ffff7fb54b5 in _notmuch_string_list_create (ctx=<optimized out>) at lib/string-list.c:34
#10 0x00007ffff7fc60f2 in notmuch_thread_get_tags (thread=0xb734b0) at lib/thread.cc:605
#11 0x00000000004a883b in Astroid::NotmuchThread::get_tags (this=0xd4c7e0, nm_thread=0xb734b0) at src/db.cc:515
#12 0x00000000004a807b in Astroid::NotmuchThread::load (this=0xd4c7e0, nm_thread=0xb734b0) at src/db.cc:505
#13 0x00000000004a82b7 in Astroid::NotmuchThread::NotmuchThread (this=0xd4c7e0, t=0xb734b0) at src/db.cc:470
#14 0x0000000000511143 in Astroid::ThreadIndex::load_more_threads (this=0xa4cc00, all=false, count=3940, checked=true)
at src/modes/thread_index/thread_index.cc:306
#15 0x0000000000513460 in Astroid::ThreadIndex::refresh (this=0xa4cc00, all=false, count=3940, checked=false)
at src/modes/thread_index/thread_index.cc:233
#16 0x0000000000514562 in Astroid::ThreadIndex::ThreadIndex(Astroid::MainWindow*, Glib::ustring, Glib::ustring)::$_1::operator
()(Astroid::Key) const (this=0xab7b50) at src/modes/thread_index/thread_index.cc:83
#17 0x0000000000514372 in std::_Function_handler<bool (Astroid::Key), Astroid::ThreadIndex::ThreadIndex(Astroid::MainWindow*,
Glib::ustring, Glib::ustring)::$_1>::_M_invoke(std::_Any_data const&, Astroid::Key) (__functor=..., __args=...)
at /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/include/g++-v4/functional:2024
#18 0x00000000004f725b in std::function<bool (Astroid::Key)>::operator()(Astroid::Key) const (this=0xab73f8, __args=...)
at /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/include/g++-v4/functional:2439
#19 0x00000000004f405b in Astroid::Keybindings::handle (this=0xa4cd20, event=0xa30390) at src/modes/keybindings.cc:345
#20 0x000000000050181b in Astroid::Mode::on_key_press_event (this=0xa4cc00, event=0xa30390) at src/modes/mode.cc:218
#21 0x00007ffff7c25e64 in Gtk::Widget_Class::key_press_event_callback (self=0xa078f0, p0=0xa30390)
at /var/tmp/portage/dev-cpp/gtkmm-3.18.0-r1/work/gtkmm-3.18.0/gtk/gtkmm/widget.cc:4475
#22 0x00007ffff58f15c9 in _gtk_marshal_BOOLEAN__BOXEDv (closure=0x717d70, return_value=0x7fffffffc3e0,
instance=<optimized out>, args=<optimized out>, marshal_data=<optimized out>, n_params=<optimized out>,
param_types=0x717da0) at /var/tmp/portage/x11-libs/gtk+-3.18.6/work/gtk+-3.18.6/gtk/gtkmarshalers.c:131
#23 0x00007ffff51f2ce2 in _g_closure_invoke_va (closure=closure@entry=0x717d70,
return_value=return_value@entry=0x7fffffffc3e0, instance=instance@entry=0xa078f0, args=args@entry=0x7fffffffc4e0,
n_params=1, param_types=0x717da0) at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/gobject/gclosure.c:86
#24 0x00007ffff520ccf0 in g_signal_emit_valist (instance=0xa078f0, signal_id=<optimized out>, detail=<optimized out>,[0/29555]
var_args=var_args@entry=0x7fffffffc4e0)
at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/gobject/gsignal.c:3292
#25 0x00007ffff520dbb7 in g_signal_emit (instance=instance@entry=0xa078f0, signal_id=<optimized out>, detail=detail@entry=0)
at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/gobject/gsignal.c:3439
#26 0x00007ffff5a2d6fc in gtk_widget_event_internal (widget=0xa078f0, event=0xa30390)
at /var/tmp/portage/x11-libs/gtk+-3.18.6/work/gtk+-3.18.6/gtk/gtkwidget.c:7692
#27 0x00007ffff5a4d66b in gtk_window_propagate_key_event (window=window@entry=0x8f2230, event=event@entry=0xa30390)
at /var/tmp/portage/x11-libs/gtk+-3.18.6/work/gtk+-3.18.6/gtk/gtkwindow.c:7775
#28 0x00007ffff5a5085b in gtk_window_key_press_event (widget=0x8f2230, event=0xa30390)
at /var/tmp/portage/x11-libs/gtk+-3.18.6/work/gtk+-3.18.6/gtk/gtkwindow.c:7808
#29 0x00007ffff7c23af4 in Gtk::Widget::on_key_press_event (this=0x7ecd60, key_event=0xa30390)
at /var/tmp/portage/dev-cpp/gtkmm-3.18.0-r1/work/gtkmm-3.18.0/gtk/gtkmm/widget.cc:7825
#30 0x00007ffff7c25e64 in Gtk::Widget_Class::key_press_event_callback (self=0x8f2230, p0=0xa30390)
at /var/tmp/portage/dev-cpp/gtkmm-3.18.0-r1/work/gtkmm-3.18.0/gtk/gtkmm/widget.cc:4475
#31 0x00007ffff58f14cf in _gtk_marshal_BOOLEAN__BOXED (closure=0x717d70, return_value=0x7fffffffc7e0,
n_param_values=<optimized out>, param_values=0x7fffffffc8a0, invocation_hint=<optimized out>,
---Type <return> to continue, or q <return> to quit---
marshal_data=0x7ffff7c25e10 <Gtk::Widget_Class::key_press_event_callback(_GtkWidget*, _GdkEventKey*)>)
at /var/tmp/portage/x11-libs/gtk+-3.18.6/work/gtk+-3.18.6/gtk/gtkmarshalers.c:86
#32 0x00007ffff51f2b65 in g_closure_invoke (closure=closure@entry=0x717d70, return_value=return_value@entry=0x7fffffffc7e0,
n_param_values=2, param_values=param_values@entry=0x7fffffffc8a0, invocation_hint=invocation_hint@entry=0x7fffffffc830)
at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/gobject/gclosure.c:801
#33 0x00007ffff5204daa in signal_emit_unlocked_R (node=node@entry=0x717dc0, detail=detail@entry=0,
instance=instance@entry=0x8f2230, emission_return=emission_return@entry=0x7fffffffc950,
instance_and_params=instance_and_params@entry=0x7fffffffc8a0)
at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/gobject/gsignal.c:3665
#34 0x00007ffff520d444 in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>, detail=<optimized out>,
var_args=var_args@entry=0x7fffffffca30)
at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/gobject/gsignal.c:3393
#35 0x00007ffff520dbb7 in g_signal_emit (instance=instance@entry=0x8f2230, signal_id=<optimized out>, detail=detail@entry=0)
at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/gobject/gsignal.c:3439
#36 0x00007ffff5a2d6fc in gtk_widget_event_internal (widget=0x8f2230, event=0xa30390)
at /var/tmp/portage/x11-libs/gtk+-3.18.6/work/gtk+-3.18.6/gtk/gtkwidget.c:7692
#37 0x00007ffff58ee9ee in propagate_event (widget=0x9dd2b0, event=0xa30390, captured=<optimized out>, topmost=0x0)
at /var/tmp/portage/x11-libs/gtk+-3.18.6/work/gtk+-3.18.6/gtk/gtkmain.c:2610
#38 0x00007ffff58f06e8 in gtk_main_do_event (event=0xa30390)
at /var/tmp/portage/x11-libs/gtk+-3.18.6/work/gtk+-3.18.6/gtk/gtkmain.c:1850
#39 0x00007ffff568ab42 in gdk_event_source_dispatch (source=<optimized out>, callback=<optimized out>,
user_data=<optimized out>) at /var/tmp/portage/x11-libs/gtk+-3.18.6/work/gtk+-3.18.6/gdk/x11/gdkeventsource.c:364
#40 0x00007ffff4cba0ad in g_main_dispatch (context=0x65a5f0)
at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/glib/gmain.c:3154
#41 g_main_context_dispatch (context=context@entry=0x65a5f0)
at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/glib/gmain.c:3769
#42 0x00007ffff4cba390 in g_main_context_iterate (context=context@entry=0x65a5f0, block=block@entry=1,
dispatch=dispatch@entry=1, self=<optimized out>)
at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/glib/gmain.c:3840
#43 0x00007ffff4cba43c in g_main_context_iteration (context=0x65a5f0, context@entry=0x0, may_block=may_block@entry=1)
at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/glib/gmain.c:3901
#44 0x00007ffff52e050c in g_application_run (application=0x6cf0e0, argc=<optimized out>, argv=0x7fffffffd788)
at /var/tmp/portage/dev-libs/glib-2.46.2-r1/work/glib-2.46.2/gio/gapplication.c:2311
#45 0x0000000000443212 in Astroid::Astroid::main (this=0x65c1d0, argc=1, argv=0x7fffffffd788) at src/astroid.cc:229
#46 0x0000000000432d3b in main (argc=1, argv=0x7fffffffd788) at src/main.cc:5