lucene-solr-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ray Cheng <rch...@rocketmail.com>
Subject Re: config JoinQParserPlugin
Date Fri, 03 Jan 2014 01:05:04 GMT
Hi Chris,

> but also exactly what response you got
I didn't get any response. Even with debug=true, there was nothing at all printed after the
curl command. Nothing on the Solr log file either. (Are there higher debug levels on Solr
log?) That was the reason I thought I needed to add JoinQParserPlugin explicitly in solrconfig.xml.

Thanks for your and other email saying JoinQParserPlugin is Solr already. After reading
your email, I tried a simple example of collections "brands" and "products" used in this url:
http://stackoverflow.com/questions/12665797/is-solr-4-0-capable-of-using-join-for-multiple-core


I also added -v to curl with !join syntax and saw some output:
< HTTP/1.1 400 Bad Request
< Content-Length: 0

Then, I tried join syntax from Solr admin console and browser rather than using curl. After
a few tries, cross core join worked with the simple "brands" and "products" collections! :)
So, as you said, both of the following worked:

http://localhost:8983/solr/brands/select?q=*:*&fq={!join from=brand_id to=id fromIndex=products_shard1_replica1}name:iPad
http://localhost:8983/solr/brands/select?q=*:*&fq={!type=join from=brand_id to=id fromIndex=products_shard1_replica1}name:iPad

However, without _shard1_replica1 in "products",
http://localhost:8983/solr/brands/select?q=*:*&fq={!join from=brand_id to=id fromIndex=products}name:iPad

gave this error: (I'm using SolrCloud from sole-4.6.0)
msg">Cross-core join: no such core products


It is inconvenient to specify the exact shard and replica on join queries. But, this is a
good step forward for me. I'll try my more complicated schemas now. Thanks so much to you
and others' replies!

Ray






On Tuesday, December 31, 2013 8:47 AM, Chris Hostetter <hossman_lucene@fucit.org> wrote:
 

>: Earlier I tried join queries using curl 
>: 'http://myLinux:8983/solr/abc.edu_up/select?debug=true&q=*:*&fq={defType=join

>: from=id to=id
 fromIndex=abc.edu}subject:financial'  but didn't get any 
>: response. There was nothing on Solr log either. So, I thought I need to 
>: config join. Is there another way to at least get some response from 
>: join queries?
>
>When posting questions, it's important to not only show the URLs you 
>tried, but also exactly what response you got -- in this case you have 
>debuging turned on (good!) but you don't show us what the debugging 
>information returend.
>
>from whati can tell, you are missunderstanding how to use localparams 
>and the use of "type" vs "defTpe" in local params.  
>
>1) the syntax for local params is "{!p1=v1 p2=v2 ...}" ... note the "!", 
>it's important, otherwise the "{...}" is just treated as input to the 
>default parser.
>
>2) inside local params, you use the "type" param to indicate which parser 
>you want to use (or as a shorthand just specify the parser name 
>immediately after the "!"
>
>3) if you use "defType" as a localparam, it controls which parser is used 
>for parsing hte *nested* query.
>
>    - - -
>
>So in your example, you should probably be using...
>
>/abc.edu_up/select?debug=true&q=*:*&fq={!type=join ...
>
>...or this syntactic sugar...
>
>/abc.edu_up/select?debug=true&q=*:*&fq={!join ...
>
>
>If that still isn't working for you, please show us what output you do 
>get, and some
 examples of the same query w/o the join filter (as well as 
>showing us what the nested join query produces on it's own so we can 
>verify you have docs matching it)
>
>
Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message