Attach failed with lock error

Scenario is as follows:

  1. Start manticoresearch engine.
  2. Perform indexing on main data:
    #sudo -u manticore indexer -c /etc/manticoresearch/manticore.conf main_index --rotate

total 0 docs, 0 bytes (Empty index)

  1. Reload indexes :

mysql -P9306 -h0 -e “RELOAD INDEXES”

  1. Again Perform indexing on main data:
    #sudo -u manticore indexer -c /etc/manticoresearch/manticore.conf main_index --rotate

total 903 docs, 7282727 bytes (data is present in index)

  1. Move data from the main index to the real time index.
    #mysql -P9306 -h0 -e "ATTACH INDEX main_index TO RTINDEX testrt

On 5th step getting following error:
ERROR 1064 (42000) at line 1: ATTACH failed, failed to rename lock /var/lib/manticore/main_index.spl to /var/lib/manticore/data/testrt.1.spl, fd=31, error No such file or directory (2);

How to resolve this error without restarting manticore service again.

Configuration of main and testrt indexes are as follows:

source src1
{
type = mysql

    sql_host                = localhost
    sql_user                = test
    sql_pass                = test1234
    sql_db                  = test
    sql_port                = 3306  # optional, default is 3306

    sql_query               = \
            SELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title, content \
            FROM documents where IsIndexed=false
#sql_query_post = REPLACE INTO time_counter select 1, now()
sql_query_post = UPDATE documents SET IsIndexed=true where UNIX_TIMESTAMP(date_added) < (SELECT UNIX_TIMESTAMP(date_added) FROM time_counter WHERE id=1)

sql_field_string    = content
sql_field_string     = title
    sql_attr_uint           = group_id
    sql_attr_timestamp      = date_added

}

index main_index
{
source = src1
path = /var/lib/manticore/main_index
stopwords = /usr/share/manticore/stopwords/en
dict = keywords
blend_chars = +, ?, !, @, -, &, U+002C, $, ", ', :, #
stopwords_unstemmed = 1
min_infix_len = 3, max_substring_len = 6
}

index testrt
{
type = rt
rt_mem_limit = 128M
path = /var/lib/manticore/data/testrt
rt_field = title
rt_field = content
rt_attr_uint = group_id
rt_attr_timestamp = date_added
stopwords = /usr/share/manticore/stopwords/en
dict = keywords
blend_chars = +, ?, !, @, -, &, U+002C, $, ", ', :, #
stopwords_unstemmed = 1
min_infix_len = 3, max_substring_len = 6
}

Looks like a bug. Filed it on github --rotate and RELOAD INDEXES are different in terms of .spl handling · Issue #499 · manticoresoftware/manticoresearch · GitHub