<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><br class=""><div><br class=""><blockquote type="cite" class=""><div class="">On Jan 9, 2022, at 22:35, Aki Tuomi <<a href="mailto:aki.tuomi@open-xchange.com" class="">aki.tuomi@open-xchange.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class=""><br class=""><blockquote type="cite" class="">On 10/01/2022 05:32 Bert JW Regeer <<a href="mailto:xistence@0x58.com" class="">xistence@0x58.com</a>> wrote:<br class=""><br class=""><br class="">Hello,<br class=""><br class="">I have dovecot 2.3.17 running on FreeBSD 12.2 and it keeps panicking:<br class=""><br class="">Jan 10 03:04:07 strida dovecot[55198]: imap(<a href="mailto:xistence@0x58.com" class="">xistence@0x58.com</a>)<56382><dx4KlzHVQecmAQKCQwA50VytdgLnsQSr>: Panic: file array.c: line 10 (array_idx_modifiable_i): assertion failed: (idx < array->buffer->used / array->element_size)<br class="">Jan 10 03:04:07 strida dovecot[55198]: imap(<a href="mailto:xistence@0x58.com" class="">xistence@0x58.com</a>)<56382><dx4KlzHVQecmAQKCQwA50VytdgLnsQSr>: Fatal: master: service(imap): child 56382 killed with signal 6 (core not dumped - <a href="https://dovecot.org/bugreport.html#coredumps" class="">https://dovecot.org/bugreport.html#coredumps</a>)<br class=""><br class="">Ignore the core not dumped, this is happening over and over, and I got one process to core dump:<br class=""><br class=""># lldb /usr/local/libexec/dovecot/imap -c imap.core<br class="">(lldb) target create "/usr/local/libexec/dovecot/imap" --core "imap.core"<br class="">Core file '/usr/local/vmail/domains/<a href="http://0x58.com/xistence/imap.core'" class="">0x58.com/xistence/imap.core'</a> (x86_64) was loaded.<br class="">(lldb) bt<br class="">* thread #1, name = 'imap', stop reason = signal SIGABRT<br class=""> * frame #0: 0x0000000011588c2a libc.so.7`__sys_thr_kill + 10<br class=""> frame #1: 0x0000000011587084 libc.so.7`__raise + 52<br class=""> frame #2: 0x00000000114fd279 libc.so.7`abort + 73<br class=""> frame #3: 0x00000000113736f3 libdovecot.so.0`___lldb_unnamed_symbol873$$libdovecot.so.0 + 147<br class=""> frame #4: 0x0000000011371eaf libdovecot.so.0`___lldb_unnamed_symbol862$$libdovecot.so.0 + 47<br class=""> frame #5: 0x0000000011372c71 libdovecot.so.0`___lldb_unnamed_symbol864$$libdovecot.so.0 + 33<br class=""> frame #6: 0x00000000113720bb libdovecot.so.0`i_panic + 187<br class=""> frame #7: 0x0000000011363d3f libdovecot.so.0`array_idx_modifiable_i + 79<br class=""> frame #8: 0x0000000011ef7c68 lib20_fts_plugin.so`fts_user_autoindex_exclude + 72<br class=""> frame #9: 0x0000000011ef550f lib20_fts_plugin.so`fts_mailbox_allocated + 239<br class=""> frame #10: 0x000000001113ed5a libdovecot-storage.so.0`hook_mailbox_allocated + 154<br class=""> frame #11: 0x00000000111381e1 libdovecot-storage.so.0`mailbox_alloc + 449<br class=""> frame #12: 0x0000000001043db4 imap`cmd_select_full + 356<br class=""> frame #13: 0x000000000104c582 imap`command_exec + 178<br class=""> frame #14: 0x000000000104ae8a imap`___lldb_unnamed_symbol58$$imap + 58<br class=""> frame #15: 0x000000000104af91 imap`___lldb_unnamed_symbol58$$imap + 321<br class=""> frame #16: 0x00000000010499e7 imap`client_handle_input + 471<br class=""> frame #17: 0x0000000001048178 imap`client_input + 120<br class=""> frame #18: 0x000000001138ca9f libdovecot.so.0`io_loop_call_io + 111<br class=""> frame #19: 0x000000001138f45b libdovecot.so.0`io_loop_handler_run_internal + 347<br class=""> frame #20: 0x000000001138cffa libdovecot.so.0`io_loop_handler_run + 346<br class=""> frame #21: 0x000000001138ce58 libdovecot.so.0`io_loop_run + 88<br class=""> frame #22: 0x00000000112f11c8 libdovecot.so.0`master_service_run + 24<br class=""> frame #23: 0x000000000105a417 imap`main + 1383<br class=""> frame #24: 0x000000000103bed2 imap`_start + 226<br class="">(lldb) ^D<br class=""><br class=""><br class="">I was able to generate a core dump by issue a doveadm command too:<br class=""><br class="">(lldb) bt<br class="">* thread #1, name = 'doveadm', stop reason = signal SIGABRT<br class=""> * frame #0: 0x00000008017b1c2a libc.so.7`__sys_thr_kill + 10<br class=""> frame #1: 0x00000008017b0084 libc.so.7`__raise + 52<br class=""> frame #2: 0x0000000801726279 libc.so.7`abort + 73<br class=""> frame #3: 0x000000080159c6f3 libdovecot.so.0`___lldb_unnamed_symbol873$$libdovecot.so.0 + 147<br class=""> frame #4: 0x000000080159aeaf libdovecot.so.0`___lldb_unnamed_symbol862$$libdovecot.so.0 + 47<br class=""> frame #5: 0x000000080159ae71 libdovecot.so.0`default_fatal_handler + 33<br class=""> frame #6: 0x000000080159b0bb libdovecot.so.0`i_panic + 187<br class=""> frame #7: 0x000000080158cd3f libdovecot.so.0`array_idx_modifiable_i + 79<br class=""> frame #8: 0x0000000802236c68 lib20_fts_plugin.so`fts_user_autoindex_exclude + 72<br class=""> frame #9: 0x000000080223450f lib20_fts_plugin.so`fts_mailbox_allocated + 239<br class=""> frame #10: 0x0000000801367d5a libdovecot-storage.so.0`hook_mailbox_allocated + 154<br class=""> frame #11: 0x00000008013611e1 libdovecot-storage.so.0`mailbox_alloc + 449<br class=""> frame #12: 0x000000080222d5fc lib20_fts_plugin.so`fts_backend_rescan + 60<br class=""> frame #13: 0x000000080227c1a3 lib20_doveadm_fts_plugin.so`___lldb_unnamed_symbol15$$lib20_doveadm_fts_plugin.so + 99<br class=""> frame #14: 0x000000000107172f doveadm`___lldb_unnamed_symbol134$$doveadm + 479<br class=""> frame #15: 0x000000000107252c doveadm`doveadm_cmd_ver2_to_mail_cmd_wrapper + 2492<br class=""> frame #16: 0x0000000001083c98 doveadm`doveadm_cmd_run_ver2 + 1416<br class=""> frame #17: 0x00000000010836d7 doveadm`doveadm_cmd_try_run_ver2 + 71<br class=""> frame #18: 0x0000000001086da3 doveadm`main + 835<br class=""> frame #19: 0x000000000105fa92 doveadm`_start + 226<br class="">(lldb)<br class=""><br class=""># doveadm fts rescan -u <a href="mailto:xistence@0x58.com" class="">xistence@0x58.com</a><br class="">doveadm(<a href="mailto:xistence@0x58.com" class="">xistence@0x58.com</a>): Panic: file array.c: line 10 (array_idx_modifiable_i): assertion failed: (idx < array->buffer->used / array->element_size)<br class="">Abort (core dumped)<br class=""><br class=""># dovecot-sysreport<br class="">Gathering configurations ...<br class="">grep: The -P option is not supported<br class="">grep: The -P option is not supported<br class="">grep: The -P option is not supported<br class="">Gathering system informations ...<br class="">Creating archive ...<br class="">All done! Please report file <a href="http://dovecot-sysreport-strida.0x58.com" class="">dovecot-sysreport-strida.0x58.com</a>-1641784164.tar.gz<br class="">Removing temp files at /tmp/tmp.z5qJkwrW …<br class=""><br class=""><br class=""><br class="">While reading about fts/fts_squat I came across the page noting it was deprecated. I am running a mail server for myself, and have avoided installing Solr this entire time, but I guess its time to upgrade.<br class=""><br class="">In the mean time hopefully this core dump can help figure out what is going on.<br class=""><br class="">Bert JW Regeer<br class=""></blockquote><br class="">Hi!<br class=""><br class="">This is because fts_squat is not calling fts_mail_user_init. This is a bug, just not sure if it is going to get fixed with fts_squat being deprecated, so it would be best to migrate to something newer, like fts_flatcurve.<br class=""><br class="">Aki<br class=""></div></div></blockquote><br class=""></div><div>Thanks for the response Aki!</div><div><br class=""></div><div>Is there a big difference between:</div><div><br class=""></div><div><a href="https://github.com/grosjo/fts-xapian" class="">https://github.com/grosjo/fts-xapian</a></div><div><br class=""></div><div>And </div><div><br class=""></div><div><a href="https://github.com/slusarz/dovecot-fts-flatcurve" class="">https://github.com/slusarz/dovecot-fts-flatcurve</a> (do note that it is not compatible with the latest Dovecot 2.3.17 release: <a href="https://github.com/slusarz/dovecot-fts-flatcurve/issues/17" class="">https://github.com/slusarz/dovecot-fts-flatcurve/issues/17</a>)</div><div><br class=""></div><div>Is there a preference to use one over the other? The former is available on my platform as a package, whereas the latter is not. I’d have to package it myself.</div><div><br class=""></div><div>Thanks,</div><div>Bert JW Regeer</div><br class=""></body></html>