[ https://issues.apache.org/jira/browse/SOLR-2824?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13274308#comment-13274308 ]
Yonik Seeley commented on SOLR-2824: ------------------------------------ I just checked in a patch for the rewrite issue. Still need a patch to parse the query in the correct core though. > Cross-Core Join doesn't parse fields against joining schema > ----------------------------------------------------------- > > Key: SOLR-2824 > URL: https://issues.apache.org/jira/browse/SOLR-2824 > Project: Solr > Issue Type: Bug > Components: multicore, search > Affects Versions: 4.0 > Reporter: Thijs Vonk > Priority: Blocker > Fix For: 4.0 > > Attachments: SOLR-2824.patch > > > I have two cores with 2 different schema's > now I want to join between the 2 cores. where I filter on a field from one > core that doesn't exist in the other core. > core1: {childIds, name, id}, core2:{id, type, specials} > I have the following query > /core1/select?q=*:*&fq={!join from=id to=childIds > fromIndex=core2}specials:1&fl=id,name > I get this exception [1] > Looking at the debugger I see that > at > org.apache.solr.search.JoinQParserPlugin$1.parse(JoinQParserPlugin.java:60) > the parse is called for the filterquery on the main core (core1). Not the > core of the 'fromIndex' (core2) > [1] > SEVERE: org.apache.solr.common.SolrException: undefined field specials > at > org.apache.solr.schema.IndexSchema.getDynamicFieldType(IndexSchema.java:1028) > at > org.apache.solr.schema.IndexSchema$SolrQueryAnalyzer.getWrappedAnalyzer(IndexSchema.java:335) > at > org.apache.lucene.analysis.AnalyzerWrapper.createComponents(AnalyzerWrapper.java:71) > at org.apache.lucene.analysis.Analyzer.tokenStream(Analyzer.java:83) > at > org.apache.lucene.queryparser.classic.QueryParserBase.newFieldQuery(QueryParserBase.java:476) > at > org.apache.lucene.queryparser.classic.QueryParserBase.getFieldQuery(QueryParserBase.java:464) > at > org.apache.solr.search.SolrQueryParser.getFieldQuery(SolrQueryParser.java:134) > at > org.apache.lucene.queryparser.classic.QueryParserBase.handleBareTokenQuery(QueryParserBase.java:1052) > at > org.apache.lucene.queryparser.classic.QueryParser.Term(QueryParser.java:358) > at > org.apache.lucene.queryparser.classic.QueryParser.Clause(QueryParser.java:257) > at > org.apache.lucene.queryparser.classic.QueryParser.Query(QueryParser.java:181) > at > org.apache.lucene.queryparser.classic.QueryParser.TopLevelQuery(QueryParser.java:170) > at > org.apache.lucene.queryparser.classic.QueryParserBase.parse(QueryParserBase.java:118) > at > org.apache.solr.search.LuceneQParser.parse(LuceneQParserPlugin.java:74) > at org.apache.solr.search.QParser.getQuery(QParser.java:143) > at > org.apache.solr.search.JoinQParserPlugin$1.parse(JoinQParserPlugin.java:60) > at org.apache.solr.search.QParser.getQuery(QParser.java:143) > at > org.apache.solr.handler.component.QueryComponent.prepare(QueryComponent.java:138) > at > org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:180) > at > org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:129) > at org.apache.solr.core.SolrCore.execute(SolrCore.java:1452) > at > org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:353) > at > org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:248) > 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:859) > 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(Thread.java:662) -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org