manticoresoftware / manticoresearch

Easy to use open source fast database for search | Good alternative to Elasticsearch now | Drop-in replacement for E in the ELK soon
https://manticoresearch.com
GNU General Public License v3.0
9.04k stars 507 forks source link

Manticore 6.3.6 segfault on Win10 #2580

Closed dimv36 closed 1 month ago

dimv36 commented 1 month ago

Bug Description:

Win10, x86_64.

Manticore when try run, segfault with minidump

C:\manticore\bin\searchd.exe --install --service manticore
sc start manticore

Searchd does not running, fault with minidump (see searchd.log)

Manticore Search Version:

6.3.6

Operating System Version:

Windows10

Have you tried the latest development version?

None

Internal Checklist:

To be completed by the assignee. Check off tasks that have been completed or are not applicable.

- [x] Implementation completed - [x] Tests developed - [x] Documentation updated - [x] Documentation reviewed - [x] [Changelog](https://docs.google.com/spreadsheets/d/1mz_3dRWKs86FjRF7EIZUziUDK_2Hvhd97G0pLpxo05s/edit?pli=1&gid=1102439133) updated
sanikolaev commented 1 month ago

@dimv36 uploaded the vm to /mnt/s3.manticoresearch.com/issue-2580/Win10-test.ova

tomatolog commented 1 month ago

I see that your VM runs daemon well, ie no any error about missed MSVCP140.dll. I installed recent release package at VM you provided

Output folder: C:\Manticore
Extract: manticore_src.txt... 100%
https://repo.manticoresearch.com/repository/manticoresearch_windows/release/x64/manticore-6.3.6-24080221-593045790-x64-main.zip
Delete file: C:\Manticore\manticore_src.txt
Delete file: C:\Manticore\manticore.zip
Extract: tzdata_src.txt... 100%
https://repo.manticoresearch.com/repository/manticoresearch_windows/release/x64/manticore-tzdata-1.0.0-240522-a8aa66e-x64.zip
Delete file: C:\Manticore\tzdata_src.txt
Delete file: C:\Manticore\tzdata.zip
Create folder: C:\Manticore\var\data
Create folder: C:\Manticore\var\log\manticore
Create folder: C:\Manticore\var\run\manticore
Create folder: C:\Manticore\usr\local\lib\manticore
Created uninstaller: C:\Manticore\uninstall.exe
Extract: mcl_src.txt... 100%
https://repo.manticoresearch.com/repository/manticoresearch_windows/release/x64/manticore-columnar-lib-2.3.0-24052206-88a01c3-x64-libs.zip
Delete file: C:\Manticore\mcl_src.txt
Delete file: C:\Manticore\mcl.zip
Completed

and daemon starts well without any error about missed dll

C:\manticore\bin>searchd.exe
Manticore 6.3.6 593045790@24080214 (columnar 2.3.0 88a01c3@24052206) (secondary 2.3.0 88a01c3@24052206)
Copyright (c) 2001-2016, Andrew Aksyonoff
Copyright (c) 2008-2016, Sphinx Technologies Inc (http://sphinxsearch.com)
Copyright (c) 2017-2024, Manticore Software LTD (https://manticoresearch.com)

[40:06.912] [1468] using config file 'c:/manticore/etc/manticoresearch/manticore.conf' (344 chars)...
[40:06.914] [1468] WARNING: preopen_indexes=1 has no effect with seamless_rotate=0
starting daemon version '6.3.6 593045790@24080214 (columnar 2.3.0 88a01c3@24052206) (secondary 2.3.0 88a01c3@24052206)' listening on 127.0.0.1:9312 for sphinx and http(s)
listening on 127.0.0.1:9306 for mysql
listening on 127.0.0.1:9308 for sphinx and http(s)
binlog: replaying log C:\Manticore/var/data/binlog/binlog.001
WARNING: binlog: empty binlog C:\Manticore/var/data/binlog/binlog.001 detected, skipping
binlog: finished replaying total 4 in 0.017 sec
prereading 0 tables
preread 0 tables in 0.000 sec
WARNING: GlobalCrashQueryGetRef: thread-local info is not set! Use ad-hoc

After start daemon crashed with the following stack

    KernelBase.dll!00007ffa05201b39()   Unknown
    vcruntime140.dll!00007ff9cb715267() Unknown
    [Inline Frame] searchd.exe!boost::process::detail::windows::executor<char,boost::fusion::joint_view<boost::fusion::tuple<boost::process::detail::windows::exe_cmd_init<char>>,boost::fusion::filter_view<const boost::fusion::tuple<const char *&,const boost::process::detail::windows::limit_handles_ &>,boost::process::detail::is_initializer<mpl_::arg<-1>>>>>::internal_error_handle(const std::error_code & ec, const char * msg, mpl_::bool_<0>, mpl_::bool_<0>) Line 124   C++
    [Inline Frame] searchd.exe!boost::process::detail::windows::executor<char,boost::fusion::joint_view<boost::fusion::tuple<boost::process::detail::windows::exe_cmd_init<char>>,boost::fusion::filter_view<const boost::fusion::tuple<const char *&,const boost::process::detail::windows::limit_handles_ &>,boost::process::detail::is_initializer<mpl_::arg<-1>>>>>::set_error(const std::error_code & ec, const char * msg) Line 226   C++
    searchd.exe!boost::process::detail::windows::executor<char,boost::fusion::joint_view<boost::fusion::tuple<boost::process::detail::windows::exe_cmd_init<char>>,boost::fusion::filter_view<const boost::fusion::tuple<const char *&,const boost::process::detail::windows::limit_handles_ &>,boost::process::detail::is_initializer<mpl_::arg<-1>>>>>::operator()() Line 210 C++
    searchd.exe!boost::process::detail::basic_execute_impl<char,const char *,const boost::process::detail::windows::limit_handles_ &>(const char * && args, const boost::process::detail::windows::limit_handles_ & args) Line 268  C++
    [Inline Frame] searchd.exe!boost::process::detail::execute_impl(const char * && args, const boost::process::detail::windows::limit_handles_ & args) Line 275    C++
    searchd.exe!boost::process::child::child<const char *,const boost::process::detail::windows::limit_handles_ &>(const char * && args, const boost::process::detail::windows::limit_handles_ & args) Line 35  C++
>   searchd.exe!BuddyStopContainer() Line 417   C++
    searchd.exe!BuddyStart(const CSphString & sConfigPath, const CSphString & sPluginDir, bool bHasBuddyPath, const VecTraits_T<ListenerDesc_t> & dListeners, bool bTelemetry, int iThreads, const CSphString & sConfigFilePath, const CSphString & sDataDir) Line 460  C++
    searchd.exe!ServiceMain(int argc, char * * argv) Line 21463 C++

I also tried to disable buddy by adding buddy_path = # to searchd section of config however that does not affect how daemon stops the previous instance of the buddy on start and got that crash.

Will investigate that crash further however it seems strange that the crash happens only in that VM.

tomatolog commented 1 month ago

I've just fixed this crash at https://github.com/manticoresoftware/manticoresearch/commit/1e3877e8bdcd3155b8378d368a29a1968f14420d

You need to use package from the dev repository to get issue fixed.