Hi,
I was able to create oak index based on the finding from https://experienceleaguecommunities.adobe.com/t5/adobe-experience-manager/aem6-5-indexing-on-ootb-qu...
The query that is triggered is using
http://localhost:4502/content/project/us/en.find.json?_charset_=utf-8&f=abc&cs=false&wwo=false&cq_ck=1614580151256
But when i execute command on the top content path i.e /content/projectpath
select [jcr:path], [jcr:score], * from [nt:base] as a where isdescendantnode(a, '/content/projectpath/us/en') and lower([jcr:title]) like '%calling all%' union select [jcr:path], [jcr:score], * from [nt:base] as a where isdescendantnode(a, '/content/projectpath/us/en') and lower([jcr:description]) like '%calling all%' union select [jcr:path], [jcr:score], * from [nt:base] as a where isdescendantnode(a, '/content/projectpath/us/en') and lower([jcr:text]) like '%calling all%' union select [jcr:path], [jcr:score], * from [nt:base] as a where isdescendantnode(a, '/content/projectpath/us/en') and lower([text]) like '%calling all%' option(traversal OK)
Then it throws an exception ,how to solve this issue
Path for query
/libs/granite/operations/content/diagnosistools/queryPerformance.html
How to resolve this issue.
Thanks
Solved! Go to Solution.
Views
Replies
Total Likes
This can be avoided only by improving queries but by creating an index. In your case since you are using OOTB find servlet then you don't have the option to change it. you can run your queries for further small subtrees.
Try increasing the traversal limit
Note: This will consume high memory
Hope this helps.
Thanks,
Kiran Vedantam
Unfortunately that is a (very) sub-optimal query, and very hard to tailor a custem index for. A few major issues:
* Queries on nt:base, aka "everything"
* Lots of lowercase comparisons (i doubt any indexes are tailored for that property comparison)
* LIKEs with leading wildcards '%someterm....'
To be honest, I would log an issue with Support and see if they have recommendations and/or if they can escalate to Engineering to provide a performant OOTB index (or tweak the underlying query to be able to leverage a query).
I don't like adjusting the Traversal limit, since as mentioned increasing it can impact AEM performance, and also, remember that this is a global parameter, so other queries youre not thinking/are added in the future might start "enjoying" this higher limit, further impacting AEM performance.
Please do not increase the traversal limit. That limit is there to protect against OOM issues which means increasing the limit will use more memory and in some case, cause outofmemory
Start by creating an index and you can use the oakutils[1] tool to generate the definition. If this is still an issue after an index is deployed, log a support ticket.
[1] https://oakutils.appspot.com/generate/index
This can be avoided only by improving queries but by creating an index. In your case since you are using OOTB find servlet then you don't have the option to change it. you can run your queries for further small subtrees.
Hi Arun_Patidar,
So you meant that instead of executing at path /content/projectpath. I must execute a lower level that /content/projectpath/us/en/projectapplications
Thanks
Views
Replies
Total Likes
Views
Like
Replies