I agree this looks like a bug, would you please go ahead and file a jira?

It seems like maybe it's an off-by-one error (which is just ... ugh.)

$ curl -sS http://localhost:8983/solr/techproducts/select -d 'debug=query' 
-d 'defType=edismax' -d 'pf=text name' -d 'q=content:(XXX AND YYY AND ZZZ) 
AND (AAA AND BBB)' | grep '"parsedquery'
    "parsedquery":"+(+(+content:xxx +content:yyy +content:zzz) 
+(+DisjunctionMaxQuery((text:aaa)) +DisjunctionMaxQuery((text:bbb)))) 
DisjunctionMaxQuery((name:\"yyy zzz aaa bbb\" | text:\"yyy zzz aaa 
bbb\"))",
    "parsedquery_toString":"+(+(+content:xxx +content:yyy +content:zzz) 
+(+(text:aaa) +(text:bbb))) (name:\"yyy zzz aaa bbb\" | text:\"yyy zzz aaa 
bbb\")",




: Date: Thu, 4 May 2023 17:04:50 +0200
: From: Mónica Marrero <monica.marr...@europeana.eu>
: Reply-To: users@solr.apache.org
: To: users@solr.apache.org
: Subject: Edismax parsing when using pf parameter
: 
: Hi,
: 
: I have found what I think is an inconsistent behaviour of the query parser
: when using the pf parameter.
: 
: I am testing with the techproducts collection in Solr v9.2.1,
: defType=edismax, pf=text name
: 
: a) Query= name:george AND (game AND thrones)
: Result= "parsedquery_toString":"+(+name:george +(+(text:game)
: +(text:thrones))) (text:\"game thrones\" | name:\"game thrones\")"
: 
: b) Query= name:(george AND martin) AND (game AND thrones)
: Result= "parsedquery_toString":"+(+(+name:george +name:martin)
: +(+(text:game) +(text:thrones))) (text:\"*martin* game thrones\" | name:\"
: *martin* game thrones\")"
: 
: I understand why in query a) pf is only applied to keywords *game *and 
*thrones
: (*keywords in the query with no explicit field assigned), but following the
: same reasoning, I would expect the same behaviour for query b) and that is
: not the case (and it works as I expected for the parameter qf). Any idea
: why this happens?
: 
: Best,
: 
: Mónica
: 
: -- 
: Disclaimer: This email and any files transmitted with it are confidential 
: and intended solely for the use of the individual or entity to whom they 
: are
: addressed. If you have received this email in error please notify the 
: system manager. If you are not the named addressee you should not 
: disseminate,
: distribute or copy this email. Please notify the sender 
: immediately by email if you have received this email by mistake and delete 
: this email from your
: system.
: 

-Hoss
http://www.lucidworks.com/

Reply via email to