This has started to happen to me a few times on Enterprise 18.104.22.168 and I wondering if anyone has experienced the same issue. I have noticed the "Catalog Search Index" is listed as "Processing" in the admin. I do the usual steps of removing any stray lock files in "var/locks" and it still remains.
If I look at the
index_process I can see that "catalogsearch_fulltext" has the "pending" status; however, if I look at the
enterprise_mview_metadata I see that "catalogsearch_fulltext_cl" as a status of "3" or "working" which I determined by logging of the mysql query that is ran when the Index Management page is displayed.
So why the disconnect between these two tables?
index_process says its not running, but
enterprise_mview_metadata says it is running (status 3 = working).
It's my understanding the
enterprise_mview_metadata tables handles the materialized views and triggers that in are in EE. I think there might be a bug in in somewhere where if cleans the tables.
I see in "app/code/core/Enterprise/Index/Model/Cron.php" there is a function called scheduledCleanup() which has the following comments:
Clean changelog tables listed in enterprise_mview/metadata table. Cleanup would be executed in case the "index_clean_schedule" is set to "1"
Has anybody experienced this issue? Maybe something to do with a search index that is aborted prematurely and the status not getting reset in: app/code/core/Enterprise/CatalogSearch/Model/Index/Action/Fulltext/Refresh.php
Edit: Just so everyone is aware. I can manually set the search indexer back to the green "Ready" status by the following MySQL; however, what I'm trying to accomplish is to understand how the situation I encountered can occur.
UPDATE `enterprise_mview_metadata` SET `status` = 1 WHERE `changelog_name` = 'catalogsearch_fulltext_cl'
Edit: I'm using SOLR for search if that helps.