Exception writing document xxxxxx to the index; possible analysis error.

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Exception writing document xxxxxx to the index; possible analysis error.

Liu, Daphne
Hello Solr Expert,
   We are using Solr 6.3.0 and lately we are unable to write documents into our index. Please see below error messages. Can anyone help us?
   Thank you.


===================================================================================================================
org.apache.solr.common.SolrException: Exception writing document id 3b8514819e204cc7a110aa5752e29b8e to the index; possible analysis error.
        at org.apache.solr.update.DirectUpdateHandler2.addDoc(DirectUpdateHandler2.java:178)
        at org.apache.solr.update.processor.RunUpdateProcessor.processAdd(RunUpdateProcessorFactory.java:67)
        at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:48)
        at org.apache.solr.update.processor.AddSchemaFieldsUpdateProcessorFactory$AddSchemaFieldsUpdateProcessor.processAdd(AddSchemaFieldsUpdateProcessorFactory.java:335)
        at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:48)
        at org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118)
        at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:48)
        at org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118)
        at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:48)
        at org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118)
        at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:48)
        at org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118)
        at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:48)
        at org.apache.solr.update.processor.FieldNameMutatingUpdateProcessorFactory$1.processAdd(FieldNameMutatingUpdateProcessorFactory.java:74)
        at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:48)
        at org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118)
        at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:48)
        at org.apache.solr.update.processor.DistributedUpdateProcessor.doLocalAdd(DistributedUpdateProcessor.java:957)
        at org.apache.solr.update.processor.DistributedUpdateProcessor.versionAdd(DistributedUpdateProcessor.java:1112)
        at org.apache.solr.update.processor.DistributedUpdateProcessor.processAdd(DistributedUpdateProcessor.java:738)
        at org.apache.solr.update.processor.LogUpdateProcessorFactory$LogUpdateProcessor.processAdd(LogUpdateProcessorFactory.java:103)
        at org.apache.solr.handler.loader.JavabinLoader$1.update(JavabinLoader.java:97)
        at org.apache.solr.client.solrj.request.JavaBinUpdateRequestCodec$1.readOuterMostDocIterator(JavaBinUpdateRequestCodec.java:179)
        at org.apache.solr.client.solrj.request.JavaBinUpdateRequestCodec$1.readIterator(JavaBinUpdateRequestCodec.java:135)
        at org.apache.solr.common.util.JavaBinCodec.readVal(JavaBinCodec.java:275)
        at org.apache.solr.client.solrj.request.JavaBinUpdateRequestCodec$1.readNamedList(JavaBinUpdateRequestCodec.java:121)
        at org.apache.solr.common.util.JavaBinCodec.readVal(JavaBinCodec.java:240)
        at org.apache.solr.common.util.JavaBinCodec.unmarshal(JavaBinCodec.java:158)
        at org.apache.solr.client.solrj.request.JavaBinUpdateRequestCodec.unmarshal(JavaBinUpdateRequestCodec.java:186)
        at org.apache.solr.handler.loader.JavabinLoader.parseAndLoadDocs(JavabinLoader.java:107)
        at org.apache.solr.handler.loader.JavabinLoader.load(JavabinLoader.java:54)
        at org.apache.solr.handler.UpdateRequestHandler$1.load(UpdateRequestHandler.java:97)
        at org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:68)
        at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:153)
        at org.apache.solr.core.SolrCore.execute(SolrCore.java:2213)
        at org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:654)
        at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:460)
        at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:303)
        at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:254)
        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1668)
        at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:581)
        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
        at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
        at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
        at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1160)
        at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:511)
        at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
        at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1092)
        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
        at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:213)
        at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:119)
        at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
        at org.eclipse.jetty.server.Server.handle(Server.java:518)
        at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:308)
        at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:244)
        at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:273)
        at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
        at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93)
        at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceAndRun(ExecuteProduceConsume.java:246)
        at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:156)
        at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:654)
        at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:572)
        at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.lucene.store.AlreadyClosedException: this IndexWriter is closed
        at org.apache.lucene.index.IndexWriter.ensureOpen(IndexWriter.java:740)
        at org.apache.lucene.index.IndexWriter.ensureOpen(IndexWriter.java:754)
        at org.apache.lucene.index.IndexWriter.updateDocument(IndexWriter.java:1558)
        at org.apache.solr.update.DirectUpdateHandler2.doNormalUpdate(DirectUpdateHandler2.java:279)
        at org.apache.solr.update.DirectUpdateHandler2.addDoc0(DirectUpdateHandler2.java:211)
        at org.apache.solr.update.DirectUpdateHandler2.addDoc(DirectUpdateHandler2.java:166)
        ... 62 more
Caused by: java.lang.ArrayIndexOutOfBoundsException
        at org.apache.lucene.store.BufferedIndexInput.readBytes(BufferedIndexInput.java:125)
        at org.apache.lucene.store.BufferedIndexInput.readBytes(BufferedIndexInput.java:116)
        at org.apache.lucene.codecs.lucene54.Lucene54DocValuesProducer$CompressedBinaryDocValues$CompressedBinaryTermsEnum.readTerm(Lucene54DocValuesProducer.java:1349)
        at org.apache.lucene.codecs.lucene54.Lucene54DocValuesProducer$CompressedBinaryDocValues$CompressedBinaryTermsEnum.next(Lucene54DocValuesProducer.java:1365)
        at org.apache.lucene.index.MultiTermsEnum.pushTop(MultiTermsEnum.java:275)
        at org.apache.lucene.index.MultiTermsEnum.next(MultiTermsEnum.java:301)
        at org.apache.lucene.index.MultiDocValues$OrdinalMap.<init>(MultiDocValues.java:527)
        at org.apache.lucene.index.MultiDocValues$OrdinalMap.build(MultiDocValues.java:484)
        at org.apache.lucene.codecs.DocValuesConsumer.mergeSortedField(DocValuesConsumer.java:638)
        at org.apache.lucene.codecs.DocValuesConsumer.merge(DocValuesConsumer.java:204)
        at org.apache.lucene.codecs.perfield.PerFieldDocValuesFormat$FieldsWriter.merge(PerFieldDocValuesFormat.java:153)
        at org.apache.lucene.index.SegmentMerger.mergeDocValues(SegmentMerger.java:167)
        at org.apache.lucene.index.SegmentMerger.merge(SegmentMerger.java:111)
        at org.apache.lucene.index.IndexWriter.mergeMiddle(IndexWriter.java:4312)
        at org.apache.lucene.index.IndexWriter.merge(IndexWriter.java:3889)
        at org.apache.lucene.index.ConcurrentMergeScheduler.doMerge(ConcurrentMergeScheduler.java:588)
        at org.apache.lucene.index.ConcurrentMergeScheduler$MergeThread.run(ConcurrentMergeScheduler.java:626)



Kind regards,

Daphne Liu
BI Architect • Big Data - Matrix SCM

CEVA Logistics / 10751 Deerwood Park Blvd, Suite 200, Jacksonville, FL 32256 USA / www.cevalogistics.com
T 904.9281448 / F 904.928.1525 / [hidden email]

Making business flow


-----Original Message-----
From: Erick Erickson <[hidden email]>
Sent: Wednesday, July 11, 2018 4:51 PM
To: solr-user <[hidden email]>
Subject: Re: solr filter query on text field

bq.  is there any difference if the fq field is a string field vs test

Absolutely. string fields are not analyzed in any way. They're not tokenized. There are case sensitive. Etc. For example takd My dog as input. A string field will have a _single_ token "My dog.". It will not match a search on "my". It will not match a search on "dog". It won't even match "my dog." as a phrase since the case is different. It won't even match "My dog" because there's no period at the end. It will only match "My dog.".

As a text field, there would be two tokens, "My" and "dog", and they'd be massaged however your filters arrange things. With the usual filters in place (lowerCaseFilter in particular) the tokens in the index would be "my" and "dog" so searches on "my" would match, "My"
would match, "dog" OR "my" would match

Best,
Erick

On Wed, Jul 11, 2018 at 12:01 PM, Wei <[hidden email]> wrote:

> btw, is there any difference if the fq field is a string field vs test
> field?
>
> On Wed, Jul 11, 2018 at 11:59 AM, Wei <[hidden email]> wrote:
>
>> Thanks Erick and Andrea!  If my default operator is OR,  fq=
>> my_text_field:(Jurassic park the movie)  is equivalent to
>> my_text_field:(Jurassic OR park OR the OR movie)? That make sense.
>>
>> On Wed, Jul 11, 2018 at 9:06 AM, Andrea Gazzarini
>> <[hidden email]>
>> wrote:
>>
>>> The syntax is valid in all those three examples, the right one
>>> depends on what you need.
>>>
>>> The first query executes a proximity search (you can think to a
>>> phrase search, for simplicity) so it returns no result because
>>> probably you don't have any matching docs with that whole literal.
>>>
>>> The second is querying the my_text_field for all terms which compose
>>> the value between parenthesis. You can think to a query where each
>>> term is an optional clause, something like mytextfield:jurassic OR
>>> mytextfiekd:park...
>>> (it's not exactly an OR but this could give you the idea=
>>>
>>> The third example is not doing what you think. My_text_field is used
>>> only with the first term (Jurassic) while the others are using the
>>> default field. Something like mytextfield:jurassic OR
>>> defaultfield:park OR defaultfield:the.... That's the reason  you
>>> have so many results (I guess the default field is a catch-all
>>> field)
>>>
>>> Sorry for typos I'm using my mobile
>>>
>>> Andrea
>>>
>>> Il mer 11 lug 2018, 17:54 Wei <[hidden email]> ha scritto:
>>>
>>> > Hi,
>>> >
>>> > I am running filter query on a field of text_general type and see
>>> > completely different results for the following queries:
>>> >
>>> >    fq= my_text_field:"Jurassic park the movie"               returns 0
>>> > result
>>> >
>>> >    fq= my_text_field:(Jurassic park the movie)               returns 20
>>> > result
>>> >
>>> >    fq= my_text_field:Jurassic park the movie                  returns
>>> > thousands of results
>>> >
>>> >
>>> > Which one is the correct syntax? I am confused why the first query
>>> doesn't
>>> > have any match at all.  I also thought 2 and 3 are the same, but
>>> > turns
>>> out
>>> > quite different.
>>> >
>>> >
>>> > Thanks,
>>> > Wei
>>> >
>>>
>>
>>

NVOCC Services are provided by CEVA as agents for and on behalf of Pyramid Lines Limited trading as Pyramid Lines.
This e-mail message is intended for the above named recipient(s) only. It may contain confidential information that is privileged. If you are not the intended recipient, you are hereby notified that any dissemination, distribution or copying of this e-mail and any attachment(s) is strictly prohibited. If you have received this e-mail by error, please immediately notify the sender by replying to this e-mail and deleting the message including any attachment(s) from your system. Thank you in advance for your cooperation and assistance. Although the company has taken reasonable precautions to ensure no viruses are present in this email, the company cannot accept responsibility for any loss or damage arising from the use of this email or attachments.
Reply | Threaded
Open this post in threaded view
|

Re: Exception writing document xxxxxx to the index; possible analysis error.

Tomas Fernandez Lobbe-2
I Daphne,
the “possible analysis error” is a misleading error message (to be addressed in SOLR-12477). The important piece is the “java.lang.ArrayIndexOutOfBoundsException”, it looks like your index may be corrupted in some way.

Tomás

> On Jul 11, 2018, at 3:01 PM, Liu, Daphne <[hidden email]> wrote:
>
> Hello Solr Expert,
>   We are using Solr 6.3.0 and lately we are unable to write documents into our index. Please see below error messages. Can anyone help us?
>   Thank you.
>
>
> ===================================================================================================================
> org.apache.solr.common.SolrException: Exception writing document id 3b8514819e204cc7a110aa5752e29b8e to the index; possible analysis error.
>        at org.apache.solr.update.DirectUpdateHandler2.addDoc(DirectUpdateHandler2.java:178)
>        at org.apache.solr.update.processor.RunUpdateProcessor.processAdd(RunUpdateProcessorFactory.java:67)
>        at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:48)
>        at org.apache.solr.update.processor.AddSchemaFieldsUpdateProcessorFactory$AddSchemaFieldsUpdateProcessor.processAdd(AddSchemaFieldsUpdateProcessorFactory.java:335)
>        at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:48)
>        at org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118)
>        at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:48)
>        at org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118)
>        at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:48)
>        at org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118)
>        at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:48)
>        at org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118)
>        at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:48)
>        at org.apache.solr.update.processor.FieldNameMutatingUpdateProcessorFactory$1.processAdd(FieldNameMutatingUpdateProcessorFactory.java:74)
>        at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:48)
>        at org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118)
>        at org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:48)
>        at org.apache.solr.update.processor.DistributedUpdateProcessor.doLocalAdd(DistributedUpdateProcessor.java:957)
>        at org.apache.solr.update.processor.DistributedUpdateProcessor.versionAdd(DistributedUpdateProcessor.java:1112)
>        at org.apache.solr.update.processor.DistributedUpdateProcessor.processAdd(DistributedUpdateProcessor.java:738)
>        at org.apache.solr.update.processor.LogUpdateProcessorFactory$LogUpdateProcessor.processAdd(LogUpdateProcessorFactory.java:103)
>        at org.apache.solr.handler.loader.JavabinLoader$1.update(JavabinLoader.java:97)
>        at org.apache.solr.client.solrj.request.JavaBinUpdateRequestCodec$1.readOuterMostDocIterator(JavaBinUpdateRequestCodec.java:179)
>        at org.apache.solr.client.solrj.request.JavaBinUpdateRequestCodec$1.readIterator(JavaBinUpdateRequestCodec.java:135)
>        at org.apache.solr.common.util.JavaBinCodec.readVal(JavaBinCodec.java:275)
>        at org.apache.solr.client.solrj.request.JavaBinUpdateRequestCodec$1.readNamedList(JavaBinUpdateRequestCodec.java:121)
>        at org.apache.solr.common.util.JavaBinCodec.readVal(JavaBinCodec.java:240)
>        at org.apache.solr.common.util.JavaBinCodec.unmarshal(JavaBinCodec.java:158)
>        at org.apache.solr.client.solrj.request.JavaBinUpdateRequestCodec.unmarshal(JavaBinUpdateRequestCodec.java:186)
>        at org.apache.solr.handler.loader.JavabinLoader.parseAndLoadDocs(JavabinLoader.java:107)
>        at org.apache.solr.handler.loader.JavabinLoader.load(JavabinLoader.java:54)
>        at org.apache.solr.handler.UpdateRequestHandler$1.load(UpdateRequestHandler.java:97)
>        at org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:68)
>        at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:153)
>        at org.apache.solr.core.SolrCore.execute(SolrCore.java:2213)
>        at org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:654)
>        at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:460)
>        at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:303)
>        at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:254)
>        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1668)
>        at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:581)
>        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
>        at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
>        at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
>        at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1160)
>        at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:511)
>        at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
>        at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1092)
>        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
>        at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:213)
>        at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:119)
>        at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
>        at org.eclipse.jetty.server.Server.handle(Server.java:518)
>        at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:308)
>        at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:244)
>        at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:273)
>        at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
>        at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93)
>        at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceAndRun(ExecuteProduceConsume.java:246)
>        at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:156)
>        at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:654)
>        at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:572)
>        at java.lang.Thread.run(Thread.java:745)
> Caused by: org.apache.lucene.store.AlreadyClosedException: this IndexWriter is closed
>        at org.apache.lucene.index.IndexWriter.ensureOpen(IndexWriter.java:740)
>        at org.apache.lucene.index.IndexWriter.ensureOpen(IndexWriter.java:754)
>        at org.apache.lucene.index.IndexWriter.updateDocument(IndexWriter.java:1558)
>        at org.apache.solr.update.DirectUpdateHandler2.doNormalUpdate(DirectUpdateHandler2.java:279)
>        at org.apache.solr.update.DirectUpdateHandler2.addDoc0(DirectUpdateHandler2.java:211)
>        at org.apache.solr.update.DirectUpdateHandler2.addDoc(DirectUpdateHandler2.java:166)
>        ... 62 more
> Caused by: java.lang.ArrayIndexOutOfBoundsException
>        at org.apache.lucene.store.BufferedIndexInput.readBytes(BufferedIndexInput.java:125)
>        at org.apache.lucene.store.BufferedIndexInput.readBytes(BufferedIndexInput.java:116)
>        at org.apache.lucene.codecs.lucene54.Lucene54DocValuesProducer$CompressedBinaryDocValues$CompressedBinaryTermsEnum.readTerm(Lucene54DocValuesProducer.java:1349)
>        at org.apache.lucene.codecs.lucene54.Lucene54DocValuesProducer$CompressedBinaryDocValues$CompressedBinaryTermsEnum.next(Lucene54DocValuesProducer.java:1365)
>        at org.apache.lucene.index.MultiTermsEnum.pushTop(MultiTermsEnum.java:275)
>        at org.apache.lucene.index.MultiTermsEnum.next(MultiTermsEnum.java:301)
>        at org.apache.lucene.index.MultiDocValues$OrdinalMap.<init>(MultiDocValues.java:527)
>        at org.apache.lucene.index.MultiDocValues$OrdinalMap.build(MultiDocValues.java:484)
>        at org.apache.lucene.codecs.DocValuesConsumer.mergeSortedField(DocValuesConsumer.java:638)
>        at org.apache.lucene.codecs.DocValuesConsumer.merge(DocValuesConsumer.java:204)
>        at org.apache.lucene.codecs.perfield.PerFieldDocValuesFormat$FieldsWriter.merge(PerFieldDocValuesFormat.java:153)
>        at org.apache.lucene.index.SegmentMerger.mergeDocValues(SegmentMerger.java:167)
>        at org.apache.lucene.index.SegmentMerger.merge(SegmentMerger.java:111)
>        at org.apache.lucene.index.IndexWriter.mergeMiddle(IndexWriter.java:4312)
>        at org.apache.lucene.index.IndexWriter.merge(IndexWriter.java:3889)
>        at org.apache.lucene.index.ConcurrentMergeScheduler.doMerge(ConcurrentMergeScheduler.java:588)
>        at org.apache.lucene.index.ConcurrentMergeScheduler$MergeThread.run(ConcurrentMergeScheduler.java:626)
>
>
>
> Kind regards,
>
> Daphne Liu
> BI Architect • Big Data - Matrix SCM
>
> CEVA Logistics / 10751 Deerwood Park Blvd, Suite 200, Jacksonville, FL 32256 USA / www.cevalogistics.com
> T 904.9281448 / F 904.928.1525 / [hidden email]
>
> Making business flow
>
>
> -----Original Message-----
> From: Erick Erickson <[hidden email]>
> Sent: Wednesday, July 11, 2018 4:51 PM
> To: solr-user <[hidden email]>
> Subject: Re: solr filter query on text field
>
> bq.  is there any difference if the fq field is a string field vs test
>
> Absolutely. string fields are not analyzed in any way. They're not tokenized. There are case sensitive. Etc. For example takd My dog as input. A string field will have a _single_ token "My dog.". It will not match a search on "my". It will not match a search on "dog". It won't even match "my dog." as a phrase since the case is different. It won't even match "My dog" because there's no period at the end. It will only match "My dog.".
>
> As a text field, there would be two tokens, "My" and "dog", and they'd be massaged however your filters arrange things. With the usual filters in place (lowerCaseFilter in particular) the tokens in the index would be "my" and "dog" so searches on "my" would match, "My"
> would match, "dog" OR "my" would match
>
> Best,
> Erick
>
> On Wed, Jul 11, 2018 at 12:01 PM, Wei <[hidden email]> wrote:
>> btw, is there any difference if the fq field is a string field vs test
>> field?
>>
>> On Wed, Jul 11, 2018 at 11:59 AM, Wei <[hidden email]> wrote:
>>
>>> Thanks Erick and Andrea!  If my default operator is OR,  fq=
>>> my_text_field:(Jurassic park the movie)  is equivalent to
>>> my_text_field:(Jurassic OR park OR the OR movie)? That make sense.
>>>
>>> On Wed, Jul 11, 2018 at 9:06 AM, Andrea Gazzarini
>>> <[hidden email]>
>>> wrote:
>>>
>>>> The syntax is valid in all those three examples, the right one
>>>> depends on what you need.
>>>>
>>>> The first query executes a proximity search (you can think to a
>>>> phrase search, for simplicity) so it returns no result because
>>>> probably you don't have any matching docs with that whole literal.
>>>>
>>>> The second is querying the my_text_field for all terms which compose
>>>> the value between parenthesis. You can think to a query where each
>>>> term is an optional clause, something like mytextfield:jurassic OR
>>>> mytextfiekd:park...
>>>> (it's not exactly an OR but this could give you the idea=
>>>>
>>>> The third example is not doing what you think. My_text_field is used
>>>> only with the first term (Jurassic) while the others are using the
>>>> default field. Something like mytextfield:jurassic OR
>>>> defaultfield:park OR defaultfield:the.... That's the reason  you
>>>> have so many results (I guess the default field is a catch-all
>>>> field)
>>>>
>>>> Sorry for typos I'm using my mobile
>>>>
>>>> Andrea
>>>>
>>>> Il mer 11 lug 2018, 17:54 Wei <[hidden email]> ha scritto:
>>>>
>>>>> Hi,
>>>>>
>>>>> I am running filter query on a field of text_general type and see
>>>>> completely different results for the following queries:
>>>>>
>>>>>   fq= my_text_field:"Jurassic park the movie"               returns 0
>>>>> result
>>>>>
>>>>>   fq= my_text_field:(Jurassic park the movie)               returns 20
>>>>> result
>>>>>
>>>>>   fq= my_text_field:Jurassic park the movie                  returns
>>>>> thousands of results
>>>>>
>>>>>
>>>>> Which one is the correct syntax? I am confused why the first query
>>>> doesn't
>>>>> have any match at all.  I also thought 2 and 3 are the same, but
>>>>> turns
>>>> out
>>>>> quite different.
>>>>>
>>>>>
>>>>> Thanks,
>>>>> Wei
>>>>>
>>>>
>>>
>>>
>
> NVOCC Services are provided by CEVA as agents for and on behalf of Pyramid Lines Limited trading as Pyramid Lines.
> This e-mail message is intended for the above named recipient(s) only. It may contain confidential information that is privileged. If you are not the intended recipient, you are hereby notified that any dissemination, distribution or copying of this e-mail and any attachment(s) is strictly prohibited. If you have received this e-mail by error, please immediately notify the sender by replying to this e-mail and deleting the message including any attachment(s) from your system. Thank you in advance for your cooperation and assistance. Although the company has taken reasonable precautions to ensure no viruses are present in this email, the company cannot accept responsibility for any loss or damage arising from the use of this email or attachments.