Expand my Community achievements bar.

SOLVED

AEM as Cloud Service Index Problem

Avatar

Level 2

Hi Everyone,

 

I created a custom lucene index on local environment and deploy it to the cloud via ui.apps module. Index definition created on Author instance succesfully. Then i created new version of the index with naming convention. first index name "cqPageLucene-custom-1" and new one's name is "cqPageLucene-custom-2".

When i check the sample query on Query Performance-> Explain Query page on author instance. It shows that "cqPageLucene-custom-2" index used to return results. Also our search result page returns the same results. But on publish environment search result page still returns old results. I cannot open Query Performance page on publish environment, it gives 404 not found error. How can i check which index is used on publish instance. And why author and publish instances use different indexes?

 

I check developer console and publish instances also have the "cqPageLucene-custom-2" index definition. 

1 Accepted Solution

Avatar

Correct answer by
Employee Advisor

Please raise a support ticket. Your custom version should always take precendence over the ootb version.

View solution in original post

7 Replies

Avatar

Level 7

This sounds strange to me. 

  • Make sure all cache is cleared and you are not referring to cached version of a page or service
  • And post that also if it didn't work then raise support ticket for the same. 

 

 

Avatar

Level 2

I have a servlet that call query api and returns the result and it doesn't cache. Also call the search result page with "keyword" query parameter, so the search result page is not cached 

Avatar

Level 4

When you are testing, make sure you are clicking on links rather than refreshing or hitting enter in the url bar. The caching behavior is different in both scenarios , best to test in a new incognito window or a different browser . I did run into a similar issue with browser cache on search page URL with query param.

Avatar

Level 2

I tested on Microsoft Edge instead of Chrome and there is no difference. My search result page url like this : 

https://{publish_address}/personal/search.html?q=space&p=personal

and search result servlet url is like that:

/content/abc/en/personal/search/jcr:content/.../searchresult.search.personal.0.json?fulltext=space

 

You can see both page url and servlet url have query parameters

Avatar

Level 4

This sound like a cache issue. Can you try opening search results in an incognito window with a query parameter in the URL to ensure you are not fetching anything from the cache? You may use instance URL instead of domain URL.

Avatar

Correct answer by
Employee Advisor

Please raise a support ticket. Your custom version should always take precendence over the ootb version.

Avatar

Level 2

Yes, you are right. I added extra query logging on test environment and found out there is a misnamed index on publish instance. 

 

In the beginning of project, i had created a custom index without checking naming convention for AEM Cloud. Later, i had raised a ticket and support team removed it from Author instance and seems like they didn't remove it from publish environment. This misnamed index is picked by our search query.

 

I raised another support ticket for deletion of this misnamed index from publish instances.

 

Thanks for answers