I run

        dovecot-2.3.18

, & am deploying Solr search with 'dovecot-fts-solr'

I run Solr standalone.

When creating a dedicated 'dovecot' core, cp'ing from Dovecot's included solr 
schemas

        ls -al /usr/share/doc/dovecot/solr-*
                -rw-r--r-- 1 root root  12K Dec  3 06:48 
/usr/share/doc/dovecot/solr-config-7.7.0.xml
                -rw-r--r-- 1 root root 2.7K Dec  3 06:48 
/usr/share/doc/dovecot/solr-schema-7.7.0.xml
                -rw-r--r-- 1 root root 2.9K Dec  3 06:48 
/usr/share/doc/dovecot/solr-schema.xml

is tested only for Solr 7.7.0

        https://doc.dovecot.org/configuration_manual/fts/solr/
                "The steps described in this page are tested for Solr 7.7.0. For 
other versions, this these steps may need to be adjusted."

which, per solr docs

        https://solr.apache.org/downloads.html

                About versions and support
                        Version     Description
                                9.x     Current major version for feature 
releases (STABLE)
                                8.11.x  Previous major version may sometimes 
receive critical bugfix releases
                                10      Next major version, yet to be released 
(UNSTABLE)
                                <8.11   All older versions are End Of Life (EOL)

is EOL'd and unsupported.

In the dovecot 7.7.0 schema, FastLRUCache/LRUCache are used as the caching 
class(es),

        grep class=.*LRU  /usr/share/doc/dovecot/solr-config-7.7.0.xml
             <filterCache class="solr.FastLRUCache"
                    <queryResultCache class="solr.LRUCache"
                    <documentCache class="solr.LRUCache"
                           class="solr.search.LRUCache"


For Solr 9,

        cat CHANGES.txt
                Upgrade Notes
                ---------------------

                ...
                * SOLR-13817: Deprecate legacy SolrCache implementations. Users 
are encouraged to transition their
                  configurations to use org.apache.solr.search.CaffeineCache 
instead. (ab)

running solr9 + dovecot-fts-solr search, based on the 7.7.0 schemas, results in 
errors, failed scan & search.

Modifying the config to use CaffeineCache

        cp solr-config-7.7.0.xml solr-config-9.0.0.xml
        perl -pi -e '\
         s|solr.FastLRUCache|solr.CaffeineCache|g; \
         s|solr.LRUCache|solr.CaffeineCache|g; \
         s|solr.search.LRUCache|solr.search.CaffeineCache|g;' \
        solr-config-9.0.0.xml

appears to do the trick.
Atm, indexing & search -- both manually triggered, and on delivery receipt to 
Dovecot store -- is working with no errors (yet).

I've not tested exhaustively yet, & don't know if this Cache class change in the 
schema is both necessary & sufficient for dovecot-fts-solr search use with solr 
9.0.0

Given that for Solr

        "<8.11   All older versions are End Of Life (EOL)"

it'd be useful for Dovecot to 'retest' for current, not-EOL'd Solr, and 
publish/package compatible schemas accordingly.

Reply via email to