UPDATE MVA is freezing

Hello!

Sometimes i am facing the following problem - my MVA updates are infinitely freezing and after restart of searchd instance everything is fine. I have got a gdb stacktrace and i suspect, that this is connected with this thread:

[Switching to thread 13 (Thread 0x7f9f1774e700 (LWP 13919))]#0
0x0000000000779243 in IFilter_Values::EvalValues(long) const ()
(gdb) bt
#0 0x0000000000779243 in IFilter_Values::EvalValues(long) const ()
#1 0x000000000077f816 in Filter_Or::Eval(CSphMatch const&) const ()
#2 0x000000000077f816 in Filter_Or::Eval(CSphMatch const&) const ()

There goes Filter_Or::Eval(CSphMatch const&) const many times


#628 0x000000000077f816 in Filter_Or::Eval(CSphMatch const&) const ()
#629 0x000000000077f816 in Filter_Or::Eval(CSphMatch const&) const ()
#630 0x000000000060d4d8 in CSphIndex_VLN::ScanByBlocks(CSphQueryContext const&,
CSphQueryResult*, int, ISphMatchSorter**, CSphMatch&, int, bool, bool, int,
long) const ()
#631 0x00000000006218c6 in CSphIndex_VLN::MultiScan(CSphQuery const*,
CSphQueryResult*, int, ISphMatchSorter**, CSphMultiQueryArgs const&) const ()
#632 0x0000000000631b2c in CSphIndex_VLN::MultiQuery(CSphQuery const*,
CSphQueryResult*, int, ISphMatchSorter**, CSphMultiQueryArgs const&) const ()
#633 0x00000000006325d4 in CSphIndex_VLN::MultiQueryEx(int, CSphQuery const*,
CSphQueryResult**, ISphMatchSorter**, CSphMultiQueryArgs const&) const ()
#634 0x000000000056ab52 in SearchHandler_c::RunLocalSearches() ()
#635 0x00000000005775a0 in SearchHandler_c::RunActionQuery(CSphQuery const&,
CSphString const&, CSphString*) ()
#636 0x00000000005778a1 in HandleMySqlExtendedUpdate(AttrUpdateArgs&) ()
#637 0x00000000005bd00a in CommitMonitor_c::Update(CSphString&) ()
#638 0x00000000005cce22 in HandleCmdReplicate(RtAccum_t&, CSphString&, int*,
CSphString*, int*, Threads::ThdDesc_t const*) ()
#639 0x000000000054aadc in DoExtendedUpdate(CSphString const&, CSphString
const&, char const*, CSphAttrUpdate const&, bool, CSphQuery const&, bool, int&,
int&, SearchFailuresLog_c&, CSphString&, CSphRefcountedPtr<ServedIndex_c>
const&, Threads::ThdDesc_t const&) ()
#640 0x000000000057cdcf in sphHandleMysqlUpdate(StmtErrorReporter_i&, SqlStmt_t
const&, CSphString const&, CSphString&, Threads::ThdDesc_t const&) ()
#641 0x00000000005a8e15 in CSphinxqlSession::Execute(CSphString const&,
ISphOutputBuffer&, unsigned char&, Threads::ThdDesc_t&) ()
#642 0x0000000000581995 in LoopClientMySQL(unsigned char&, CSphinxqlSession&,
CSphString&, int, bool, Threads::ThdDesc_t&, InputBuffer_c&, ISphOutputBuffer&)
()
#643 0x000000000058226c in ThdJobQL_t::Call() ()
#644 0x00000000006b6100 in CSphThdPool::Tick(void*) ()
#645 0x00000000006b1955 in sphThreadProcWrapper(void*) ()
#646 0x00000031e9807aa1 in start_thread () from /lib64/libpthread.so.0
#647 0x00000031e94e8aad in clone () from /lib64/libc.so.6

What can cause this behaviour? Thanks in advance!

could you check your index with indextool --check to make sure index is valid.

I have checked the problem index and everything is fine.

could you create ticket at github and upload your index along with query that causes the issue? to recreate issue locally.