M
M
Maxim Khramov2016-02-03 10:02:55
linux
Maxim Khramov, 2016-02-03 10:02:55

Why does the Sphinx daemon crash?

Good afternoon!
The Sphinx daemon on the server crashes every 5 days. In the sphinx logs it looks like this:

[Wed Jan 20 18:31:13.593 2016] [41074] rotating index 'test1': started
[Wed Jan 20 18:31:13.600 2016] [41074] rotating index 'test1': success
[Wed Jan 20 18:31: 13.600 2016] [41074] rotating index: all indexes done
[Mon Jan 25 11:08:05.680 2016] [41073] watchdog: main process 41074 forked ok
[Mon Jan 25 11:08:05.740 2016] [41073] watchdog: main process 41074 killed cleanly with SIGKILL, shutting down

After that I restart, get a new PID and again 5 days of work:
[Mon Jan 25 11:55:59.791 2016] [21932] watchdog: main process 21933 forked ok

;(

Answer the question

In order to leave comments, you need to log in

3 answer(s)
B
becks, 2016-02-03
@imdamain

I had something similar when using rt-index. binlog_path has been included. For some reason, it constantly increased in size and did not reset. Upon reaching a certain size, sphinx fell.
Removed the explicit definition of binlog_path in the configs, the system stopped crashing.
Again, everything worked great with binlog_path as long as there were 3 search languages ​​​​in the config (English, Russian, German). After he added a dozen more, the adventures described above began.

P
Puma Thailand, 2016-02-03
@opium

Look at dmesg on the server, most likely the memory is running out and the oomkiller is killing the sphinx

D
Daniil Muidinov, 2016-03-12
@DANic

The Sphinx keeps almost all the indexes in memory (RAM + SWAP), during indexing, it transfers all the data again through SWAP not in parts but in the full size of the indexes (perhaps this is how the merge of what is with the new index is implemented), if SWAP is not enough then the system kills the process. We solve the problem by swap fad + delta indices.
Look also here https://tools.sphinxsearch.com/ , they implemented monitoring and control of the sphinx through the WEB interface, you can see how much your indexes occupy, how many of them are in memory and how much are on disk.
Does anyone know if it is possible to set up the logic of transferring the index in parts after full indexing so as not to keep the SWAP volume of 2 index sizes?

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question