Tuesday 1 November 2011

Ektron: Finding “Missing” Content in the Index on 64bit Windows

When content is created on an Ektron with a large content id (commonly on eSync enabled workareas) it may corrupt the content id. 

For example if a new content item has an id of 6442451035 it will actually be indexed with a contentid of 2147483739.  This is because the original id is larger than an unsigned integer can hold.

   1: long contentId = 6442451035;
   2: Console.WriteLine((uint)contentId); //2147483739

You can then query your public index to see if content has been misindexed by running a query to find your content

SELECT Filename, Path, ContentID64, ContentLanguage FROM <<PUBLIC_CATALOG>>..SCOPE() WHERE contentid64=6442451035 OR contentid64=2147483739

image

If the content is not indexed at all, you won’t find any content and the issue is something else.  However, if you get  a result but the CONTENTID64 value is wrong, then you should be able to fix the problem.

To fix this you can follow the following procedure:

  1. Download Updated QLXFilters (and check that they are newer than your current dlls!)
  2. Backup QLXFilter.dll from c:\windows\system32 and c:\windows\sysWoW64 on the server
  3. Stop the Indexing Service
  4. Replace the dlls with the updated versions
  5. Start the Indexing Service
  6. Run a full SearchConfigUI, if you have assets missing from the current server please untick Documents from the advanced tab.
  7. Select Re-index existing Catalogues  - this may affect the stability of you website.
  8. After this has completed please check the Docs to Index on the indexing service and ensure that this has finished indexing.
  9. After this is complete please run your query and you should now see the results return correctly.

No comments:

Post a Comment

Got something to say? Let it out then!
Comments are moderated, so it may take a while to for them to be displayed here!