Según el Solr FAQ: What does "exceeded limit of maxWarmingSearchers=X" mean?
Si se encuentra con este error mucho, usted puede (en teoría) aumentar el número i n su maxWarmingSearchers, pero eso es riesgoso de hacer a menos que tenga confianza en que tiene los recursos del sistema (RAM, CPU, etc.) para hacer de forma segura. Una forma más correcta de lidiar con la situación es reducir con qué frecuencia envía commits.
Lo que significa que este error es que básicamente hace confirmaciones con demasiada frecuencia y que la memoria caché interna no puede seguir el ritmo de "borre la caché y déjeme buscar con los datos nuevos". Debes disminuir la frecuencia que estás haciendo commits. Puede encontrar más información sobre este problema aquí en Near Realtime Search Tuning, pero la idea básica es que cuantas más facetas use, mayor será el intervalo que necesitará entre las confirmaciones.
Una forma de evitar esto fue dejar de realizar confirmaciones manuales (es decir, hacer que mi aplicación envíe datos a Solr y luego ejecutar una solicitud de confirmación) y activar solr autocommit.
He aquí un ejemplo:
<!-- solrconfig.xml -->
<autoCommit>
<maxDocs>10000</maxDocs> <!-- maximum uncommited docs before autocommit triggered -->
<maxTime>15000</maxTime> <!-- maximum time (in MS) after adding a doc before an autocommit is triggered -->
<openSearcher>false</openSearcher> <!-- SOLR 4.0. Optionally don't open a searcher on hard commit. This is useful to minimize the size of transaction logs that keep track of uncommitted updates. -->
</autoCommit>
que tendrá que determinar qué tan grande de intervalo que se necesita (es decir maxTime
) pero en la práctica cada vez que agrego búsqueda más facetas de mi solicitud (o más índices o ¿qué tienes? Tengo que aumentar el intervalo.
Si necesita más búsqueda en tiempo real que la frecuencia de estas confirmaciones le permitirá consultar Solr soft commits.
¿Por qué no es una buena práctica? – TTT
Dicen: "es riesgoso hacerlo a menos que esté seguro de que tiene los recursos del sistema (RAM, CPU, etc.) para hacerlo de forma segura", pero ¿cómo sabe que tiene suficientes recursos? – lizzie
Bien. También he estado investigando esto y la guía del usuario dice: "Si solo encuentras este error con poca frecuencia debido a situaciones de platija, probablemente estarás bien simplemente ignorándolo". – TTT