We had a strange behavior by a customer regarding the indexing queue. We used to have two IA configured and we uninstalled one.
I figured out that we still had indexing queue requests for the old index agent while it was totally uninstalled.
I checked the following objects to see if the agent was still configured somewhere: dm_fulltext_index, dm_ftengine_config, dm_ftindex_agent_config. But the old IA was not declared anymore.
The main problem is that it continued to queue all changes in the indexing queue and nothing cleaned it up, so we got like 2 million requests, filling up the db table.
I finally found out where the old IA was declared: in the registry events.
select * from dmi_registry where user_name = ‘dm_fulltext_index_user_01’;
r_object_id user_name registered_id event 2601b86480001d03 dm_fulltext_index_user_01 0301b86480000104 dm_save 2601b86480001d04 dm_fulltext_index_user_01 0301b86480000104 dm_destroy 2601b86480001d05 dm_fulltext_index_user_01 0301b86480000105 dm_save 2601b86480001d06 dm_fulltext_index_user_01 0301b86480000105 dm_readonlysave 2601b86480001d07 dm_fulltext_index_user_01 0301b86480000105 dm_checkin ...
In order to unregister the events, use the following:
unregister,c,<registered_id>,<event>,<queue_name>
So for me:
unregister,c,0301b86480000104,dm_save,dm_fulltext_index_user_01 unregister,c,0301b86480000104,dm_destroy,dm_fulltext_index_user_01 unregister,c,0301b86480000105,dm_save,dm_fulltext_index_user_01 unregister,c,0301b86480000105,dm_readonlysave,dm_fulltext_index_user_01 ...
If you want to check if the old IA still queues requests, you can use:
select distinct name from dmi_queue_item where name like ‘dm_fulltext%’;
If you see the old queue name, that means you still have the registered events.