We retail - Traversal index

tadijam47062732

23-09-2019

I am trying to make AEM search to search for "sonja" jacket with traversal node to see how much time it will need.


I disabled lucene and cqPageLucene indexes from oak:index, but can not find any nodes when trying this query in Explain Query tool:

/jcr:root/content/we-retail/us/en//element(*, cq:Page)[(jcr:contains(., 'sonja'))]

This is tested on We Retail project.

Why this does not find any nodes, and with indexes it does?

What will be needed for this to find pages that have "sonja" in their title? (or any other query, it is only important that I can run some query with traversal to compare its speed with lucene)

Accepted Solutions (1)

Accepted Solutions (1)

jbrar

Employee

23-09-2019

Cost of traversal shows up as "Infinity" and that's the reason AEM does not start the traversal.

Listing the costs from my local instance:

Cost with cqPageLucene: 2799

Cost with Lucene: 185827

Cost with Traversal: Infinity

I believe you should focus on COST rather than TIME as cost is directly related to time

Answers (10)

Answers (10)

jbrar

Employee

23-09-2019

I tested this on my local instance and disabling both "lucene" and "cqpagelucene" will force the query below to use traversal:

/jcr:root/content/we-retail/us/en//element(*, cq:Page)[(jcr:contains(., 'sonja'))]

Screen Shot 2019-09-23 at 10.01.57 AM.png

tadijam47062732

23-09-2019

It makes sense, I just thought it should run "infinity cost" if there is no cost lower than that. I will mark your question as correct. Thank you

tadijam47062732

23-09-2019

I have the same situation, now I am interested why it does not return any nodes as search results?

And how could I achieve that?

Because speed of traversal search that does not find any node is 1ms so it can not be compared to lucene index when lucene actually goes through content and searches nodes (which takes more time)

tadijam47062732

23-09-2019

That is exactly what I need. I am doing research on how much improvement will lucene index bring.

I want to run query with traversal (and get results) and then do the same with lucene index included.

So no business case, just research.

berliant

Employee

23-09-2019

What is your business case, that you need to disable indexes and force a traversal search? Traversal search will significantly affect performance and as a result, the AEM server might not responsive at all.