Lucene
In this article you will find some useful information around the Index provider running with Lucene.
Multi server setup
It is not recommended to run Lucene on a multi server setup as Lucene is not scalable out of the box. In that case, you will be required to use ElasticSearch that will be usable in 9.4 of Ucommerce and above.
What version of Lucene are you using ?
The Ucommerce integration is using 4.8.0.0 of Lucene
My CMS uses a different version of Lucene
Ucommerce has seperate dependency on Lucene than all the integrations. Luckily both versions of Lucene will be able to co-exist because of the Apps folder. This is where you will find the dependency to Lucene that Ucommerce are using.
Find it under Apps/Ucommerce.Search.Lucene/bin
Taking a dependency on Lucene in the version found in the bin folder, in your solution should not be needed, and is only relevant in case you are doing something very advanced that requires access to Lucene directly.
Where can I find the index files ?
The index files are OOTB specified under App_Data\Ucommerce\Indexes on your website. In here you will likely find folders called A and B as well as a file called 'A.active' or 'B.active'
To work efficiently with indexes it is important that we do not lock the entire site from going down when generating the indexes. We will start generating a new index next to the old one so the old index can still be queried while the new index is being generated. You can tell which one is in use by the 'active' file.
Debugging the indexes
It's very useful to look into the indexes from time to time, to see what they consist of. You can do that with a brilliant tool called 'Luke'.
Debugging the queries
In your log files you will be able to find verbose logging of the queries output via the APIs to Lucene. To help you understand what they mean, you can watch the following video below where a log entry will be disected.