Hi all,
Since the upgrade to 4.41, my logs have been filling up red with exceptions and failures, and I now believe they are clues to why my VPS account has been falling over once a day.
- Lots of Violation of UNIQUE KEY constraint 'IX_SearchItemWord'.
- Lots of Transaction (Process ID xxx) was deadlocked
- always involving the DotNetNuke.Services.Search.SearchEngineScheduler
I have repeatedly cleared the search tables using the methods pasted further down.
I have also completely disabled the search engine scheduler task.
The problem is, the same errors still occur after the SearchEngineScheduler task has been disabled and the tables cleared? How?
So I looked into the db using Webbase Enterprise Manager at my host and the various searchitem and searchword tables are still full of data. Shouldn't they be empty?
How can I properly clear the tables out and how can I disable the indexer? When I run the scripts to clear the tables, it always reports success, but obviously it doesn't work.
My server is going to fall over again today unless I can figure this out Any advice is greatly appreciated.
Rob
These are what I have used in attempts to clear out the tables:
delete SearchItemWordPosition where SearchItemWordId in (select SearchItemWordId from SearchItemWord where SearchItemID in (select SearchItemId from SearchItem))
delete SearchWord where SearchWordsId in (select SearchWordsId from SearchItemWord where SearchItemID in (select SearchItemId from SearchItem))
delete SearchItemWord where SearchItemId in (select SearchItemId from SearchItem) delete SearchItem
and also the following queries in the order listed, pasted into Query Analyzer in the enterprise manager:
delete dbo.SearchItemWordPosition
delete dbo.SearchItemWord
delete dbo.SearchWord
delete dbo.SearchItem
The latter is from Ecktwo's handy site