I have a problem where my External Index refuses to obtain any kind of data when rebuild. When rebuilding the index, it removes any entry in the index.
My Internal Index works just fine, and contains every node in Umbraco.
I thought it might be a bad node/entry, and have therefore made a backup of the entire database, and in an isolated environment I then started deleting sections, hopen that one of the sections would remove the problem.
Now I have deleted all of my content, and added one new entry. And still my External Index insists on being empty.
What can I do to troubleshoot this further?
Is there some way I can debug my ExternalIndexer to see what it is that is stirring up the trouble?
Does anyone know what the problem could be?
I'm sporting a Umbraco version 7.1.8 assembly: 1.0.5394.16131
You could also try increasing the logging level to see if anything shows up. In config/log4net.config set the priority value to DEBUG.
<priority value="DEBUG" />
Then try to re-index. Don't forget to re-set that value once you've finished.
You can look at the contents of an index outside of Umbraco by downloading and using Luke. It's java based so you'll require a JDK. Beware that you may need to stop the IIS application pool though as Umbraco retains a lock on the index files and Luke won't be able to access them.
Finally, and perhaps most importantly, have you added a handler for the OnGatheringNodeData event of the ExternalIndex? If so, this would be the first place I'd check.
Still nothing usefull in the log (Looking in umbracoLog table in the DB) :/
I know Luke, and using it I see nothing (as the index contains nothing). The few times it manages to contain anything, it contains references to a few files.
I havn't added a handler for OnGatheringNodeData, something I should do to be able to debug better?
Check the log file ~/App-Data/Logs/UmbracoTraceLog.txt. I think the DB log table is more geared towards auditing than info/error logging.
If there's no errors in the log file then all I can suggest is stopping the app pool in IIS, delete the contents of External Index folder and then re-start the app pool.
If you don't already have an OnGatheringNodeData handler then don't add one. You only need it if you want to change or add extra data to the index.
I found the solution. It turned out that we had some invalid data that wasn't visible due to the property didn't allow that kind of data.
We had a field where one previously had been able to insert both ints and strings. Now that we changed it so that one could only insert ints, the strings wasn't visible, even though they were still assigned to the node.
Examine ExternalIndexer returns empty Index
I have a problem where my External Index refuses to obtain any kind of data when rebuild. When rebuilding the index, it removes any entry in the index. My Internal Index works just fine, and contains every node in Umbraco.
I thought it might be a bad node/entry, and have therefore made a backup of the entire database, and in an isolated environment I then started deleting sections, hopen that one of the sections would remove the problem.
Now I have deleted all of my content, and added one new entry. And still my External Index insists on being empty.
I'm sporting a Umbraco version 7.1.8 assembly: 1.0.5394.16131
My Examine settings for the Indexers
My IndexSet for ExternalIndexSet
Question on Stackoverflow: http://stackoverflow.com/questions/33867682/examine-externalindexer-returns-empty-index
Hi,
Could you show the contents of the ExamineIndex.config file for the External Index? For example, my setting is as follows:
Also, have you checked the umbraco log file to see if it's showing any errors during the indexing process?
Ver
Nothing to see in the Umbraco Log File :/
My IndexSet for ExternalIndexSet
You could also try increasing the logging level to see if anything shows up. In config/log4net.config set the priority value to DEBUG.
Then try to re-index. Don't forget to re-set that value once you've finished.
You can look at the contents of an index outside of Umbraco by downloading and using Luke. It's java based so you'll require a JDK. Beware that you may need to stop the IIS application pool though as Umbraco retains a lock on the index files and Luke won't be able to access them.
Finally, and perhaps most importantly, have you added a handler for the OnGatheringNodeData event of the ExternalIndex? If so, this would be the first place I'd check.
Ver
Still nothing usefull in the log (Looking in umbracoLog table in the DB) :/
I know Luke, and using it I see nothing (as the index contains nothing). The few times it manages to contain anything, it contains references to a few files.
I havn't added a handler for OnGatheringNodeData, something I should do to be able to debug better?
Check the log file ~/App-Data/Logs/UmbracoTraceLog.txt. I think the DB log table is more geared towards auditing than info/error logging.
If there's no errors in the log file then all I can suggest is stopping the app pool in IIS, delete the contents of External Index folder and then re-start the app pool.
If you don't already have an OnGatheringNodeData handler then don't add one. You only need it if you want to change or add extra data to the index.
Ver
Even though logging is enabled in UmbracoSettings.config...
I cannot find any logfile. So, I guess it haven't produced any errors?
Resetting the app pool have been tried, no luck there :/
I won't implement it then :P
I found the solution. It turned out that we had some invalid data that wasn't visible due to the property didn't allow that kind of data.
We had a field where one previously had been able to insert both ints and strings. Now that we changed it so that one could only insert ints, the strings wasn't visible, even though they were still assigned to the node.
is working on a reply...