Troubleshooting Guide: Error 9986 – Search Property List Cache Generation Failure
Why This Error Happens
Error 9986 occurs when SQL Server’s full-text indexing engine fails to query the registered search properties from the sys.registered_search_property_lists system metadata, typically due to a corrupted Full-Text Catalog or a damaged MSFTESQL/Filter Daemon Host (FDHost) component. This can also stem from insufficient permissions on the SQL Server service account to access property store registry keys, or from corruption in the underlying property cache files stored in the catalog’s physical directory. In some cases, a mismatched or outdated tquery.dll/FTSPersistentStore component after an OS or SQL Server patch update triggers this HRESULT-level internal failure.
Step-by-Step Resolution Guide
Step 1: Restart the Full-Text Filter Daemon Host Service
- Open Services.msc on Windows Server 2025 / Windows 11.
- Locate SQL Full-text Filter Daemon Launcher (MSSQLSERVER) and restart it.
- Alternatively, run in an elevated Command Prompt:
net stop MSSQLFDLauncher
net start MSSQLFDLauncher
- This clears any stale in-memory property list cache causing the HRESULT failure.
Step 2: Rebuild the Full-Text Catalog
- Open SQL Server Management Studio (SSMS) and connect to the affected instance.
- Run the following T-SQL against the impacted database:
ALTER FULLTEXT CATALOG [YourCatalogName] REBUILD;
- If the catalog name is unknown, retrieve it first:
SELECT name FROM sys.fulltext_catalogs;
- Rebuilding forces SQL Server to regenerate the search property list cache from scratch.
Step 3: Verify Registered Search Property Lists Integrity
- Run the following query to check for corruption or orphaned entries:
SELECT * FROM sys.registered_search_property_lists;
- If the list is empty or throws an error, drop and recreate the property list:
DROP SEARCH PROPERTY LIST [YourPropertyListName];
CREATE SEARCH PROPERTY LIST [YourPropertyListName];
- Reassign the new property list to the affected full-text index via
ALTER FULLTEXT INDEX.
Step 4: Validate Service Account Permissions
- Open Component Services (dcomcnfg) and confirm the SQL Server service account has Launch and Activation Permissions for the Filter Daemon Host.
- Check that the account also has read/write access to:
C:\Program Files\Microsoft SQL Server\MSSQL17.MSSQLSERVER\MSSQL\FTData
- Grant Full Control to the SQL Server service account on this folder if missing, then restart the SQL Server and Full-Text Filter Daemon Launcher services.
Step 5: Apply the Latest Cumulative Update
- Confirm your SQL Server 2025 build number via:
SELECT @@VERSION;
- Download and install the latest Cumulative Update (CU) from the Microsoft Update Catalog, as this issue is sometimes tied to a known
tquery.dllversioning bug. - Reboot Windows Server 2025 / Windows 11 after installation to finalize component registration.
Alternative or Verification Steps
- After completing the steps above, run
ALTER FULLTEXT CATALOG [YourCatalogName] REBUILD;once more and monitor the SQL Server Error Log or Event Viewer (Application log) to confirm Error 9986 no longer appears during the next full population. - If the error persists, drop the full-text index entirely, restart the SQL Server instance, and recreate the index and catalog from scratch as a clean-slate alternative.