Project:Apache Solr Multilingual
Version:6.x-2.x-dev
Component:Code
Category:bug report
Priority:critical
Assigned:mkalkbrenner
Status:closed (fixed)

Issue Summary

Thanks for showing me that other multi-core dir fix.

But now I found a critical issue. My setup is a non-english unique language with multi-core setup, using the textfiles module to generate the schema and solrconfig.

If I choose textfile multilingual_config: OK, no problems.

But if I choose the textfile "apachesolr_unique", then when I try to do a keyword-search, I get this error in watchdog:

"500" Status: Internal Server Error<html><head><title>Apache Tomcat/6.0.26 - Error report</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>HTTP Status 500 - null

java.lang.NullPointerException
at org.apache.solr.handler.component.SpellCheckComponent.process(SpellCheckComponent.java:122)
at org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:203)
at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:131)
at org.apache.solr.core.SolrCore.execute(SolrCore.java:1316)
at org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:338)
at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:241)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Unknown Source)
</h1><HR size="1" noshade="noshade"><p><b>type</b> Status report</p><p><b>message</b> <u>null

...

The problem is caused by:

$params['spellcheck.dictionary'] = 'spellchecker_' . $filter_language;

in multilingual.module line 328

It forces a disctionary like spellechecker_lang, but that does not exist for unique languages.

Comments

#1

Assigned to:Anonymous» mkalkbrenner

You're right. I'll fix it.

#2

Same issue with "Search fields" tab where "Recommended to "Omit". Use language specific fields instead." has to be removed in unique language setup.

We have to decide if we offer a switch in the settings to the user or if we try something smart like $solr->getFields().

#3

Status:active» needs review

Could you please test my patch?

AttachmentSize
863154_1.x.patch 2.36 KB
863154_2.x.patch 2.37 KB

#4

I tested both patches, I think they are good! Thanks.

#5

Status:needs review» reviewed & tested by the community

#6

Status:reviewed & tested by the community» fixed

#7

Status:fixed» closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.

nobody click here