Can we safely remove ExternalIndex?
# help-with-umbraco
m
I read this article from today's UMB.FYI newsletter: https://umbracare.net/blog/how-to-remove-any-examine-index-in-umbraco/ It made me think that maybe we could just as well remove the ExternalIndex indices on our two Umbraco instances (10 + 8) e.g. to boost performance. We don't use Umbraco's built-in search in our website, so do we need ExternalIndex (and can we safely delete it)? Can it implicitly be in use by something else?
s
Late reply but your question got me curious! I got a reply from @Ronald Barendse : > If 'safe' is not throwing exceptions and returning 0 results, then that's not the case if they use any of the
PublishedContentQuery
methods: https://github.com/umbraco/Umbraco-CMS/blob/contrib/src/Umbraco.Infrastructure/PublishedContentQuery.cs#L246-L250 > > So it will be safer to disable indexing all content (keeping the index empty), instead of completely removing the index 🤔
As for performance improvements you will get from this: it will depend a lot on the amount of content you have and is changing I think. In reality, Umbraco only updates the index for items that are changing. So if you publish things all the time, it may be faster. If you have a LOT of content, all of that needs to be loaded into memory, so if you have memory constraints you might see a gain.
I also know that some people try to rebuild the indexes on application start, or manage to configure their sites so that after each deploy their index files are gone. Obviously you're going to see degradation in performance if that's the case, but it shouldn't be necessary to rebuild indexes on start.
j
Or if you're using Umbraco Deploy that rebuilds all examine indexes including custom ones on fx a deploy extraction 😅
s
I think we need a bug report 😅 We know exactly which IDs we're touching, so we really don't need to rebuild all the indexes, just request to index the specific IDs! But maybe that's me thinking too simply about how these things work..
j
Right here: https://github.com/umbraco/Umbraco.Deploy.Issues/issues/211 Problem is that it uses this core functionality: https://github.com/umbraco/Umbraco-CMS/blob/contrib/src/Umbraco.Infrastructure/Suspendable.cs#L98 Which in turn uses this rebuildIndexes method which you could argue should only rebuild the standard Umbraco indexes and not custom ones: https://github.com/umbraco/Umbraco-CMS/blob/contrib/src/Umbraco.Infrastructure/Examine/ExamineIndexRebuilder.cs#L189
m
It sounds like it won't be worth the time we need to put into this and the risk of something not working. But thanks so much for your thorough answer 👍
10 Views