AEM as a Cloud Service: ‘Fulltext query without index for filter’ warnings when searching across disjoint paths
This article explains the cause and impact of frequent Fulltext query without index for filter warnings in Adobe Experience Manager when executing fulltext queries across disjoint subtrees.
Description description
Environment
- Adobe Experience Manager (AEM) as a Cloud Service (AEMasaCS) (all versions)
- Adobe Experience Manager
Issue/Symptoms
When executing fulltext JCR-SQL2 queries that search across two or more disjoint subtrees using an OR between ISDESCENDANTNODE() path restrictions, the following warning appears in the logs, even though a custom Luceneindex is defined and tagged:
WARN org.apache.jackrabbit.oak.query.QueryImpl Fulltext query without index for filter ... no results will be returned
- The warning is logged approximately 3000 times per day.
- Example query that triggers the warning:
SELECT *
FROM [ nt:base] AS node
WHERE ...
AND (
isdescendantnode(node,'/content/site-path') OR
isdescendantnode(node,'/var/pim/green/products')
)
OPTION (index tag datevCommon)
- The issue does not occur when searching within a single subtree.
- Performance impact is not observed, but log noise is a concern.
- The two queried paths do not share a common ancestor.
Cause
The warning is generated during Oak’s initial query planning phase, where the combined query shape (fulltext + OR across disjoint paths) is evaluated with infinite index costs, triggering the warning. Oak then rewrites the query internally and correctly uses the custom index for execution. The warning is considered misleading and does not reflect actual index usage or query performance.
Resolution resolution
Follow these steps to resolve the issue:
- Review the query pattern to confirm it uses an
ORacross disjointISDESCENDANTNODE()path restrictions and a custom Lucene index with an index tag. - Refer to the upstream Apache Jackrabbit Oak issue
OAK-12270for ongoing investigation and updates. - No action is required on the customer’s side, as the warning is a result of Oak’s internal query planning and does not indicate a real indexing or performance problem.
- Monitor the Oak Jira for any future changes regarding warning suppression or logging adjustments.