Well, it makes sense however for most use cases.  Lets say you have a
normal user enter a query
WATER:WHEN IS IT NOT A LIQUID
if it was interpreted strictly it would throw an error unless WATER is a
field, and "NOT" needs to be turned into "not" as well.

On Wed, Oct 18, 2017 at 3:46 PM, Beach, Daniel <daniel.be...@spglobal.com>
wrote:

> Yes, that appears to be true unless I'm missing something obvious.
>
> It seems like in this case Solr should either 1) search against the fields
> that it /does/ know about in a given collection normally, or 2) return an
> error. That would be more intuitive than returning results but with
> different search logic.
>
> Currently we add placeholder fields to other collections in an alias to
> get around this if required, but it's messy.
>
> -----Original Message-----
> From: David Hastings [mailto:hastings.recurs...@gmail.com]
> Sent: Wednesday, October 18, 2017 3:20 PM
> To: solr-user@lucene.apache.org
> Subject: Re: Querying fields that don't exist in every collection
>
> I may be wrong here, but what i think is happening is the edismax parser
> sees a field that doesn't exist, and therefore "believes" all logic you
> entered into the query is a complete mistake and negates it as such.  so
> NOT becomes the word not and * becomes whitespace.
>
> On Wed, Oct 18, 2017 at 3:15 PM, Beach, Daniel <daniel.be...@spglobal.com>
> wrote:
>
> > Hello all,
> >
> > I'm running into an issue where adding a field to the qf changes the
> > parsed query if that field doesn't exist in the Solr index. Our use
> > case for doing this is that we have multiple collections and many of
> > our queries leverage aliases to search across several of them
> > simultaneously. While we have a common group of fields that is shared
> > across schemas, it is often the case that we need to use
> > collection-specific fields to boost one content type over another.
> >
> > Here is the query debug output from a query that only searches on
> > existing fields. This is the intended outcome.
> >
> >     q=companies%20NOT%20brands*&qf=Text&wt=json&debug=query&
> > defType=edismax
> >
> >     "rawquerystring":"companies NOT brands*",
> >     "querystring":"companies NOT brands*",
> >     "parsedquery":"(+(DisjunctionMaxQuery((Text:company))
> > -DisjunctionMaxQuery((Text:brands*))))/no_coord",
> >     "parsedquery_toString":"+((Text:company) -(Text:brands*))",
> >     "QParser":"ExtendedDismaxQParser",
> >
> >
> > When a "BOGUS" field name is added to the second query suddenly the
> > query operators aren't interpreted correctly, and wildcards get dropped.
> >
> >     q=companies%20NOT%20brands*&qf=Text%20BOGUS&wt=json&debug=
> > query&defType=edismax
> >
> >     "rawquerystring":"companies NOT brands*",
> >     "querystring":"companies NOT brands*",
> >     "parsedquery":"(+(DisjunctionMaxQuery((Text:company))
> > DisjunctionMaxQuery((Text:not)) DisjunctionMaxQuery((Text:
> > brand))))/no_coord",
> >     "parsedquery_toString":"+((Text:company) (Text:not) (Text:brand))",
> >     "QParser":"ExtendedDismaxQParser"
> >
> >
> > These results are from Solr 6.5.0 and 5.5, querying against a single
> > collection endpoint. Is this Solr's expected functionality? Hopefully
> > I'm just blanking on something simple here.
> >
> > Thanks,
> > Daniel Beach
> >
> > ________________________________
> >
> > The information contained in this message is intended only for the
> > recipient, and may be a confidential attorney-client communication or
> > may otherwise be privileged and confidential and protected from
> > disclosure. If the reader of this message is not the intended
> > recipient, or an employee or agent responsible for delivering this
> > message to the intended recipient, please be aware that any
> > dissemination or copying of this communication is strictly prohibited.
> > If you have received this communication in error, please immediately
> > notify us by replying to the message and deleting it from your
> > computer. S&P Global Inc. reserves the right, subject to applicable
> > local law, to monitor, review and process the content of any
> > electronic message or information sent to or from S&P Global Inc.
> > e-mail addresses without informing the sender or recipient of the
> > message. By sending electronic message or information to S&P Global
> > Inc. e-mail addresses you, as the sender, are consenting to S&P Global
> Inc. processing any of your personal data therein.
> >
>
> ________________________________
>
> The information contained in this message is intended only for the
> recipient, and may be a confidential attorney-client communication or may
> otherwise be privileged and confidential and protected from disclosure. If
> the reader of this message is not the intended recipient, or an employee or
> agent responsible for delivering this message to the intended recipient,
> please be aware that any dissemination or copying of this communication is
> strictly prohibited. If you have received this communication in error,
> please immediately notify us by replying to the message and deleting it
> from your computer. S&P Global Inc. reserves the right, subject to
> applicable local law, to monitor, review and process the content of any
> electronic message or information sent to or from S&P Global Inc. e-mail
> addresses without informing the sender or recipient of the message. By
> sending electronic message or information to S&P Global Inc. e-mail
> addresses you, as the sender, are consenting to S&P Global Inc. processing
> any of your personal data therein.
>

Reply via email to