0
votes

I am new to Hybris and trying to run an E-commerce Website. I am getting a Solr Error "Could not check index status: index=master_game_Product_flip" when the server is started. Following is the Error Trace.

WARN  [full-gameIndex-cronJob::de.hybris.platform.servicelayer.internal.jalo.ServicelayerJob] (full-gameIndex-cronJob) [SolrIndexerJob] Error during indexer call: gameIndex
de.hybris.platform.solrfacetsearch.indexer.exceptions.IndexerException: de.hybris.platform.solrfacetsearch.solr.exceptions.SolrServiceException: Could not check index status: index=master_game_Product_flip, nodes=[http://localhost:8983/solr]
        at de.hybris.platform.solrfacetsearch.indexer.listeners.IndexerOperationListener.afterPrepareContext(IndexerOperationListener.java:97) ~[solrfacetsearchserver.jar:?]
        at de.hybris.platform.solrfacetsearch.indexer.impl.DefaultIndexerContextFactory.executeAfterPrepareListeners(DefaultIndexerContextFactory.java:168) ~[solrfacetsearchserver.jar:?]
        at de.hybris.platform.solrfacetsearch.indexer.impl.DefaultIndexerContextFactory.prepareContext(DefaultIndexerContextFactory.java:97) ~[solrfacetsearchserver.jar:?]
        at de.hybris.platform.solrfacetsearch.indexer.strategies.impl.AbstractIndexerStrategy.doExecute(AbstractIndexerStrategy.java:156) ~[solrfacetsearchserver.jar:?]
        at de.hybris.platform.solrfacetsearch.indexer.strategies.impl.AbstractIndexerStrategy.execute(AbstractIndexerStrategy.java:124) ~[solrfacetsearchserver.jar:?]
        at de.hybris.platform.solrfacetsearch.indexer.impl.DefaultIndexerService.performFullIndex(DefaultIndexerService.java:68) ~[solrfacetsearchserver.jar:?]
        at de.hybris.platform.solrfacetsearch.indexer.cron.SolrIndexerJob.indexItems(SolrIndexerJob.java:78) ~[solrfacetsearchserver.jar:?]
        at de.hybris.platform.solrfacetsearch.indexer.cron.SolrIndexerJob.performIndexingJob(SolrIndexerJob.java:57) [solrfacetsearchserver.jar:?]
        at de.hybris.platform.multicountry.solr.indexer.cron.impl.MulticountrySolrIndexerJob.performIndexingJob(MulticountrySolrIndexerJob.java:72) [classes/:?]
        at de.hybris.platform.solrfacetsearch.indexer.cron.AbstractIndexerJob.perform(AbstractIndexerJob.java:40) [solrfacetsearchserver.jar:?]
        at de.hybris.platform.servicelayer.internal.jalo.ServicelayerJob.performCronJob(ServicelayerJob.java:38) [processingserver.jar:?]
        at de.hybris.platform.cronjob.jalo.Job.execute(Job.java:1390) [processingserver.jar:?]
        at de.hybris.platform.cronjob.jalo.Job.performImpl(Job.java:814) [processingserver.jar:?]
        at de.hybris.platform.cronjob.jalo.Job.access$1(Job.java:767) [processingserver.jar:?]
        at de.hybris.platform.cronjob.jalo.Job$JobRunable.run(Job.java:686) [processingserver.jar:?]
        at de.hybris.platform.util.threadpool.PoolableThread.internalRun(PoolableThread.java:208) [coreserver.jar:?]
        at de.hybris.platform.core.threadregistry.RegistrableThread.run(RegistrableThread.java:134) [coreserver.jar:?]
Caused by: de.hybris.platform.solrfacetsearch.solr.exceptions.SolrServiceException: Could not check index status: index=master_game_Product_flip, nodes=[http://localhost:8983/solr]
        at de.hybris.platform.solrfacetsearch.solr.impl.SolrStandaloneSearchProvider.createIndex(SolrStandaloneSearchProvider.java:144) ~[solrfacetsearchserver.jar:?]
Wrapper Process has not received any CPU time for 1 seconds.  Extending timeouts.
        at de.hybris.platform.solrfacetsearch.indexer.listeners.IndexerOperationListener.afterPrepareContext(IndexerOperationListener.java:86) ~[solrfacetsearchserver.jar:?]

I am not sure why this error is appearing, The server is started successfully and I am able to see my storefront. However, I am unable to do Full Solr Indexing Due to which I can not browse through the website completely. The Solr Server is also running successfully at port 8983. When I tried to access https://localhost:8983 where the Solr admin is running it asks to enter Username and Password, But I haven't set any Username and Password. Pardon me if I broke any community guidelines as it is my first question on Stack Overflow.

I am working on Hybris 6.7 version.

3
Are you able to access localhost:8983/solr? - HybrisHelp
Yes I am able to access localhost:8983/solr , But it asks to Enter Username and Password, which is weird because I haven't set any. Also for the Previous version of Hybris I was able to access localhost:8983/solr without entering any Username and Password - kaushal singh
I believe that the username and password are defined by the following properties: standaloneSolr.authentication.username and standaloneSolr.authentication.password. Also there should be a property for enabling SOLR authentication: standaloneSolr.authentication.enabled - dj_frunza
Thank you very much! I was able to login to Solr Admin, but the issue is still appearing :( - kaushal singh

3 Answers

1
votes

After a bit research, I found that this issue was appearing due to Solr Upgrade. The Hybris code I was trying to run was based on an older version of Solr, and in that version all the communication with Solr was through http, and in the newer version only https is allowed (Out of the box atleast). I had to change the IMPEX which was configuring the Solr and replace all the http to https. This fixed the issue.

0
votes

that the configuration in your solr.impex is wrong. He is looking for this index:

index=master_game_Product_flip

But in the line before he says something about this one

gameIndex

You have to configure your solr index in your *.impex files correctly and than start the cronjob for indexing again.

0
votes

Solr is an indexed based search engine. The data in the search engine is indexed in the defined cores within Solr. These cores are created by hybris index jobs. In short, an indexedType in hybris is a core in the Solr.

As stated by Mafick in the answer, You need to check if the core (master_game_Product_flip) that you are trying to access exists in the Solr.

Regarding the auth in Solr with hybris, please refer to the Solr security guide. A snapshot of the guide is below for your ready reference. You can use the appropriate user credentials to access the Solr console and check if the core exists there or not.

Solr Authentication Support

Hope this helps.