I have some problem with OPTIMIZE INDEX.
I call
optimize index prod_addr_v2
Then i call
show threads
It shows than optimize thread is started:
| 100172 | - | - | | 2.671889 | SYSTEM OPTIMIZE |
Then i look in index directoy. I see 3 new files:
-rw------- 1 _sphinx _sphinx 262140 22 feb. 17:06 prod_addr_v2.1.tmp.spa
-rw------- 1 _sphinx _sphinx 0 22 feb. 17:06 prod_addr_v2.1.tmp.spm
-rw------- 1 _sphinx _sphinx 0 22 feb. 17:06 prod_addr_v2.1.tmp.sps
And nothing else happen. I waited for many hours, repeat after manticore reboot, after server reboot…
top
doesn’t show any load on my server - no CPU usage, no IO usage. No parameters in config that limit resource usage for optimize.
How can i fight with this promblem?
Manticore 2.7.5 on FreeBSD 11.2-RELEASE-p4.
tomat
February 22, 2019, 3:55pm
2
could you reproduce issue with daemon run with —logdebug option? or provide BT from hung daemon?
Daemon is not hanging - it works, accept connections, response on requests.
There is crash info with --logedbug
[Fri Feb 22 18:02:37.288 2019] [100290] DEBUG: progressive merge - merging 1 (179801 kb) with 2 (2 kb)
------- FATAL: CRASH DUMP -------
[Fri Feb 22 18:02:37.071 2019] [27876]
--- crashed invalid query ---
--- request dump end ---
Manticore 2.7.5 4a31c54@181204 release
Handling signal 11
-------------- backtrace begins here ---------------
Program compiled with 4.2.1
Configured with flags: Configured by CMake with these definitions: -DCMAKE_BUILD_TYPE=RelWithDebInfo -DDL_EXPAT=1 -DEXPAT_LIB=libexpat.so.1 -DUSE_LIBICONV=1 -DDL_MYSQL=1 -DMYSQL_LIB=libmysqlclient.so.21 -DDATADIR=/usr/local/var/data -DUSE_BISON=ON -DUSE_FLEX=ON -DUSE_SYSLOG=1 -DWITH_EXPAT=ON -DWITH_ICONV=ON -DWITH_MYSQL=1 -DWITH_ZLIB=ON
Host OS is FreeBSD test.instella.com 11.2-RELEASE-p4 FreeBSD 11.2-RELEASE-p4 #0: Thu Sep 27 08:16:24 UTC 2018 root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64
Stack bottom = 0x7fffdf9f179f, thread stack size = 0x100000
Trying manual backtrace:
Something wrong with thread stack, manual backtrace may be incorrect (fp=0x7fffdf9f02b0)
Stack looks OK, attempting backtrace.
0x407f02
0x0
0x800c8feb2
0x7ffffffff193
0x4ea545
0x4ecd2b
0x73a1f8
0x45e480
0x5e7163
0x800c8ac06
0x0
Something wrong in frame pointers, manual backtrace failed (fp=0)
-------------- backtrace ends here ---------------
--- BT to source lines (depth 0): ---
--- BT to source lines finished ---
--- 2 active threads ---
thd 0, proto sphinxql, state handshake, command SYSTEM
thd 1, proto sphinxql, state handshake, command SYSTEM
------- CRASH DUMP END -------
As it is crash, i create bug report
opened 09:02AM - 24 Feb 19 UTC
closed 01:14PM - 19 Mar 19 UTC
# Describe the environment
**Manticore Search version: 2.7.5**
**OS version: F… reeBSD 11.2-RELEASE-p4**
# Describe the problem
**Description of the issue:**
Crash on OPTIMIZE INDEX. Config file is attached. Index file is too large (61Mb) for github. Tell me where can i put it.
**Steps to reproduce:**
1. Run manticore with --logdebug
2. Call
`optimize index prod_addr_v2`
**Messsages from log files:**
```
[Fri Feb 22 18:02:37.288 2019] [100290] DEBUG: progressive merge - merging 1 (179801 kb) with 2 (2 kb)
------- FATAL: CRASH DUMP -------
[Fri Feb 22 18:02:37.071 2019] [27876]
--- crashed invalid query ---
--- request dump end ---
Manticore 2.7.5 4a31c54@181204 release
Handling signal 11
-------------- backtrace begins here ---------------
Program compiled with 4.2.1
Configured with flags: Configured by CMake with these definitions: -DCMAKE_BUILD_TYPE=RelWithDebInfo -DDL_EXPAT=1 -DEXPAT_LIB=libexpat.so.1 -DUSE_LIBICONV=1 -DDL_MYSQL=1 -DMYSQL_LIB=libmysqlclient.so.21 -DDATADIR=/usr/local/var/data -DUSE_BISON=ON -DUSE_FLEX=ON -DUSE_SYSLOG=1 -DWITH_EXPAT=ON -DWITH_ICONV=ON -DWITH_MYSQL=1 -DWITH_ZLIB=ON
Host OS is FreeBSD test.instella.com 11.2-RELEASE-p4 FreeBSD 11.2-RELEASE-p4 #0: Thu Sep 27 08:16:24 UTC 2018 root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64
Stack bottom = 0x7fffdf9f179f, thread stack size = 0x100000
Trying manual backtrace:
Something wrong with thread stack, manual backtrace may be incorrect (fp=0x7fffdf9f02b0)
Stack looks OK, attempting backtrace.
0x407f02
0x0
0x800c8feb2
0x7ffffffff193
0x4ea545
0x4ecd2b
0x73a1f8
0x45e480
0x5e7163
0x800c8ac06
0x0
Something wrong in frame pointers, manual backtrace failed (fp=0)
-------------- backtrace ends here ---------------
--- BT to source lines (depth 0): ---
--- BT to source lines finished ---
--- 2 active threads ---
thd 0, proto sphinxql, state handshake, command SYSTEM
thd 1, proto sphinxql, state handshake, command SYSTEM
------- CRASH DUMP END -------
```
[sphinx.conf.zip](https://gitlab.com/manticoresearch/dev/uploads/a6f37433eddc534b66fb3f45e826aec4/1550998929_sphinx.conf.zip)
Changelog: fixed crash of daemon on RT optimize with MVA updated; prohibit optimize for RT index with disk chunks there MVA got updated; prohibit merge of plain indexes with MVA updated. That restrictions will be removed along with release of V3 version.