AEM as a Cloud Service: advertencias de “Consulta de texto completo sin índice para filtrar” al buscar en rutas separadas
Este artículo explica la causa y el impacto de las frecuentes consultas de texto completo sin índice para las advertencias de filterr en Adobe Experience Manager al ejecutar consultas de texto completo en subárboles separados.
Descripción description
Entorno
- Adobe Experience Manager (AEM) as a Cloud Service (AEMasaCS) (todas las versiones)
- Adobe Experience Manager
Problema/Síntomas
Al ejecutar consultas JCR-SQL2 de texto completo que buscan en dos o más subárboles separados usando un OR entre ISDESCENDANTNODE() restricciones de ruta, aparece la siguiente advertencia en los registros, aunque se defina y etiquete un índice Lucene personalizado:
WARN org.apache.jackrabbit.oak.query.QueryImpl Fulltext query without index for filter ... no results will be returned
- La advertencia se registra aproximadamente 3000 veces al día.
- Consulta de ejemplo que almacena en déclencheur la advertencia:
SELECT *
FROM [ nt:base] AS node
WHERE ...
AND (
isdescendantnode(node,'/content/site-path') OR
isdescendantnode(node,'/var/pim/green/products')
)
OPTION (index tag datevCommon)
- El problema no se produce al buscar dentro de un solo subárbol.
- No se observa impacto en el rendimiento, pero el ruido de registro es motivo de preocupación.
- Las dos rutas consultadas no comparten un antecesor común.
Causa
La advertencia se genera durante la fase inicial de planificación de consultas de Oak, en la que la forma de consulta combinada (texto completo + O en rutas separadas) se evalúa con costes de índice infinitos, lo que activa la advertencia. A continuación, Oak reescribe la consulta internamente y utiliza correctamente el índice personalizado para la ejecución. La advertencia se considera engañosa y no refleja el uso real del índice o el rendimiento de la consulta.
Resolución resolution
Siga estos pasos para resolver el problema:
- Revise el patrón de consulta para confirmar que usa un
ORen las restricciones de ruta de acceso deISDESCENDANTNODE()separadas y un índice Lucene personalizado con una etiqueta de índice. - Consulte el problema de Apache Jackrabbit Oak
OAK-12270del flujo ascendente para obtener una investigación y actualizaciones continuas. - No se requiere ninguna acción por parte del cliente, ya que la advertencia es el resultado de la planificación de consultas interna de Oak y no indica un problema real de indexación o rendimiento.
- Monitorice el Oak Jira para cualquier cambio futuro con respecto a la supresión de advertencias o ajustes de registro.