You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by Jaco de Vroed <jd...@gmail.com> on 2016/11/16 16:39:19 UTC

Error "unexpected docvalues type NUMERIC for field" using rord() function query on single valued int field

Hello Solr users,

I’m running into an error situation using Solr 5.3.3. The case is as follows. In my schema, I have a field with a definition like this:

	<fieldType name="int" class="solr.TrieIntField" precisionStep="0" positionIncrementGap="0”/>
	….
	<field name="PublicationDate" type="int" indexed="true" stored="true" docValues="true" />

That field is used in function queries for boosting purposes, using the rord() function. We’re coming from Solr 4, not using docValues for that field, and now moving to Solr 5, using docValues. Now, this is causing a problem. When doing this:

	http://localhost:8983/solr/core1/select?q=*:*&fl=ID,recip(rord(PublicationDate),0.15,300,10) <http://localhost:8983/solr/core1/select?q=*:*&fl=ID,recip(rord(PublicationDate),0.15,300,10)>

The following error is given: "unexpected docvalues type NUMERIC for field 'PublicationDate' (expected one of [SORTED, SORTED_SET]). Use UninvertingReader or index with docvalues” (full stack trace below).

This does not happen when the field is changed to be multiValued, but I don’t want to change that at this point (and I noticed that changing from single valued to multivalued, then attempting to post the document again also results in an error related to docvalues type, but that could be the topic of another mail I guess). This is now blocking our long desired upgrade to Solr 5. We initially tried upgrading without docValues, but performance was completely killed because of our function query based ranking stuff, so we decide to use docValues.

To me, this seems a bug. I’ve tried finding something in Solr’s JIRA, the exact same error is in https://issues.apache.org/jira/browse/SOLR-7495 <https://issues.apache.org/jira/browse/SOLR-7495>, but that is a different case.

I can create a JIRA issue for this of course, but first wanted to throw this at the mailing list to see if there’s any insights that can be shared.

Thanks a lot in advance, bye, 

Jaco..

unexpected docvalues type NUMERIC for field 'PublicationDate' (expected one of [SORTED, SORTED_SET]). Use UninvertingReader or index with docvalues.
java.lang.IllegalStateException: unexpected docvalues type NUMERIC for field 'PublicationDate' (expected one of [SORTED, SORTED_SET]). Use UninvertingReader or index with docvalues.
	at org.apache.lucene.index.DocValues.checkField(DocValues.java:208)
	at org.apache.lucene.index.DocValues.getSortedSet(DocValues.java:306)
	at org.apache.solr.search.function.ReverseOrdFieldSource.getValues(ReverseOrdFieldSource.java:98)
	at org.apache.lucene.queries.function.valuesource.ReciprocalFloatFunction.getValues(ReciprocalFloatFunction.java:64)
	at org.apache.solr.response.transform.ValueSourceAugmenter.transform(ValueSourceAugmenter.java:95)
	at org.apache.solr.response.DocsStreamer.next(DocsStreamer.java:160)
	at org.apache.solr.response.TextResponseWriter.writeDocuments(TextResponseWriter.java:246)
	at org.apache.solr.response.TextResponseWriter.writeVal(TextResponseWriter.java:151)
	at org.apache.solr.response.XMLWriter.writeResponse(XMLWriter.java:113)
	at org.apache.solr.response.XMLResponseWriter.write(XMLResponseWriter.java:39)
	at org.apache.solr.response.QueryResponseWriterUtil.writeQueryResponse(QueryResponseWriterUtil.java:52)
	at org.apache.solr.servlet.HttpSolrCall.writeResponse(HttpSolrCall.java:728)
	at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:469)
	at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:257)
	at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:208)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
	at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
	at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
	at org.eclipse.jetty.server.Server.handle(Server.java:499)
	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
	at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
	at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
	at java.lang.Thread.run(Thread.java:745)



Re: Error "unexpected docvalues type NUMERIC for field" using rord() function query on single valued int field

Posted by Jaco de Vroed <jd...@gmail.com>.
Hello,

We've figured out a workaround for this, using another field that's
multivalued and populated with <copyField>, and using that field in the
rord() function query.

Nevertheless, this feels like a bug to me.

Bye,

Jaco.


On 23 November 2016 at 09:04, Jaco de Vroed <jd...@gmail.com> wrote:

> Hi,
>
> No, I reproduced the original issue, with the rord() function, on a brand
> new index with docValues=true, with just one doc indexed in it.
>
> Any clues?
>
> Thanks,
>
> Jaco.
>
> On 21 November 2016 at 15:06, Pushkar Raste <pu...@gmail.com>
> wrote:
>
>> Did you turn on/off docValues on a already existing field?
>>
>> On Nov 16, 2016 11:51 AM, "Jaco de Vroed" <jd...@gmail.com> wrote:
>>
>> > Hi,
>> >
>> > I made a typo. The Solr version number in which this error occurs is
>> 5.5.3.
>> > I also checked 6.3.0, same problem.
>> >
>> > Thanks, bye,
>> >
>> > Jaco.
>> >
>> > On 16 November 2016 at 17:39, Jaco de Vroed <jd...@gmail.com> wrote:
>> >
>> > > Hello Solr users,
>> > >
>> > > I’m running into an error situation using Solr 5.3.3. The case is as
>> > > follows. In my schema, I have a field with a definition like this:
>> > >
>> > > <fieldType name="int" class="solr.TrieIntField" precisionStep="0"
>> > > positionIncrementGap="0”/>
>> > > ….
>> > > <field name="PublicationDate" type="int" indexed="true" stored="true"
>> > > docValues="true" />
>> > >
>> > > That field is used in function queries for boosting purposes, using
>> the
>> > > rord() function. We’re coming from Solr 4, not using docValues for
>> that
>> > > field, and now moving to Solr 5, using docValues. Now, this is
>> causing a
>> > > problem. When doing this:
>> > >
>> > > http://localhost:8983/solr/core1/select?q=*:*&fl=ID,
>> > > recip(rord(PublicationDate),0.15,300,10)
>> > >
>> > > The following error is given: "*unexpected docvalues type NUMERIC for
>> > > field 'PublicationDate' (expected one of [SORTED, SORTED_SET]). Use
>> > > UninvertingReader or index with docvalues*” (full stack trace below).
>> > >
>> > > This does not happen when the field is changed to be multiValued, but
>> I
>> > > don’t want to change that at this point (and I noticed that changing
>> from
>> > > single valued to multivalued, then attempting to post the document
>> again
>> > > also results in an error related to docvalues type, but that could be
>> the
>> > > topic of another mail I guess). This is now blocking our long desired
>> > > upgrade to Solr 5. We initially tried upgrading without docValues, but
>> > > performance was completely killed because of our function query based
>> > > ranking stuff, so we decide to use docValues.
>> > >
>> > > To me, this seems a bug. I’ve tried finding something in Solr’s JIRA,
>> the
>> > > exact same error is in https://issues.apache.org/jira
>> /browse/SOLR-7495,
>> > > but that is a different case.
>> > >
>> > > I can create a JIRA issue for this of course, but first wanted to
>> throw
>> > > this at the mailing list to see if there’s any insights that can be
>> > shared.
>> > >
>> > > Thanks a lot in advance, bye,
>> > >
>> > > Jaco..
>> > >
>> > > unexpected docvalues type NUMERIC for field 'PublicationDate'
>> (expected
>> > > one of [SORTED, SORTED_SET]). Use UninvertingReader or index with
>> > docvalues.
>> > > java.lang.IllegalStateException: unexpected docvalues type NUMERIC
>> for
>> > > field 'PublicationDate' (expected one of [SORTED, SORTED_SET]). Use
>> > > UninvertingReader or index with docvalues.
>> > > at org.apache.lucene.index.DocValues.checkField(DocValues.java:208)
>> > > at org.apache.lucene.index.DocValues.getSortedSet(DocValues.java:306)
>> > > at org.apache.solr.search.function.ReverseOrdFieldSource.getValues(
>> > > ReverseOrdFieldSource.java:98)
>> > > at org.apache.lucene.queries.function.valuesource.
>> > ReciprocalFloatFunction.
>> > > getValues(ReciprocalFloatFunction.java:64)
>> > > at org.apache.solr.response.transform.ValueSourceAugmenter.transform(
>> > > ValueSourceAugmenter.java:95)
>> > > at org.apache.solr.response.DocsStreamer.next(DocsStreamer.java:160)
>> > > at org.apache.solr.response.TextResponseWriter.writeDocuments(
>> > > TextResponseWriter.java:246)
>> > > at org.apache.solr.response.TextResponseWriter.writeVal(
>> > > TextResponseWriter.java:151)
>> > > at org.apache.solr.response.XMLWriter.writeResponse(XMLWriter.
>> java:113)
>> > > at org.apache.solr.response.XMLResponseWriter.write(
>> > > XMLResponseWriter.java:39)
>> > > at org.apache.solr.response.QueryResponseWriterUtil.writeQueryR
>> esponse(
>> > > QueryResponseWriterUtil.java:52)
>> > > at org.apache.solr.servlet.HttpSolrCall.writeResponse(
>> > > HttpSolrCall.java:728)
>> > > at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:469)
>> > > at org.apache.solr.servlet.SolrDispatchFilter.doFilter(
>> > > SolrDispatchFilter.java:257)
>> > > at org.apache.solr.servlet.SolrDispatchFilter.doFilter(
>> > > SolrDispatchFilter.java:208)
>> > > at org.eclipse.jetty.servlet.ServletHandler$CachedChain.
>> > > doFilter(ServletHandler.java:1652)
>> > > at org.eclipse.jetty.servlet.ServletHandler.doHandle(
>> > > ServletHandler.java:585)
>> > > at org.eclipse.jetty.server.handler.ScopedHandler.handle(
>> > > ScopedHandler.java:143)
>> > > at org.eclipse.jetty.security.SecurityHandler.handle(
>> > > SecurityHandler.java:577)
>> > > at org.eclipse.jetty.server.session.SessionHandler.
>> > > doHandle(SessionHandler.java:223)
>> > > at org.eclipse.jetty.server.handler.ContextHandler.
>> > > doHandle(ContextHandler.java:1127)
>> > > at org.eclipse.jetty.servlet.ServletHandler.doScope(
>> > > ServletHandler.java:515)
>> > > at org.eclipse.jetty.server.session.SessionHandler.
>> > > doScope(SessionHandler.java:185)
>> > > at org.eclipse.jetty.server.handler.ContextHandler.
>> > > doScope(ContextHandler.java:1061)
>> > > at org.eclipse.jetty.server.handler.ScopedHandler.handle(
>> > > ScopedHandler.java:141)
>> > > at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(
>> > > ContextHandlerCollection.java:215)
>> > > at org.eclipse.jetty.server.handler.HandlerCollection.
>> > > handle(HandlerCollection.java:110)
>> > > at org.eclipse.jetty.server.handler.HandlerWrapper.handle(
>> > > HandlerWrapper.java:97)
>> > > at org.eclipse.jetty.server.Server.handle(Server.java:499)
>> > > at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
>> > > at org.eclipse.jetty.server.HttpConnection.onFillable(
>> > > HttpConnection.java:257)
>> > > at org.eclipse.jetty.io.AbstractConnection$2.run(
>> > > AbstractConnection.java:540)
>> > > at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(
>> > > QueuedThreadPool.java:635)
>> > > at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(
>> > > QueuedThreadPool.java:555)
>> > > at java.lang.Thread.run(Thread.java:745)
>> > >
>> > >
>> > >
>> >
>>
>
>

Re: Error "unexpected docvalues type NUMERIC for field" using rord() function query on single valued int field

Posted by Jaco de Vroed <jd...@gmail.com>.
Hi,

No, I reproduced the original issue, with the rord() function, on a brand
new index with docValues=true, with just one doc indexed in it.

Any clues?

Thanks,

Jaco.

On 21 November 2016 at 15:06, Pushkar Raste <pu...@gmail.com> wrote:

> Did you turn on/off docValues on a already existing field?
>
> On Nov 16, 2016 11:51 AM, "Jaco de Vroed" <jd...@gmail.com> wrote:
>
> > Hi,
> >
> > I made a typo. The Solr version number in which this error occurs is
> 5.5.3.
> > I also checked 6.3.0, same problem.
> >
> > Thanks, bye,
> >
> > Jaco.
> >
> > On 16 November 2016 at 17:39, Jaco de Vroed <jd...@gmail.com> wrote:
> >
> > > Hello Solr users,
> > >
> > > I’m running into an error situation using Solr 5.3.3. The case is as
> > > follows. In my schema, I have a field with a definition like this:
> > >
> > > <fieldType name="int" class="solr.TrieIntField" precisionStep="0"
> > > positionIncrementGap="0”/>
> > > ….
> > > <field name="PublicationDate" type="int" indexed="true" stored="true"
> > > docValues="true" />
> > >
> > > That field is used in function queries for boosting purposes, using the
> > > rord() function. We’re coming from Solr 4, not using docValues for that
> > > field, and now moving to Solr 5, using docValues. Now, this is causing
> a
> > > problem. When doing this:
> > >
> > > http://localhost:8983/solr/core1/select?q=*:*&fl=ID,
> > > recip(rord(PublicationDate),0.15,300,10)
> > >
> > > The following error is given: "*unexpected docvalues type NUMERIC for
> > > field 'PublicationDate' (expected one of [SORTED, SORTED_SET]). Use
> > > UninvertingReader or index with docvalues*” (full stack trace below).
> > >
> > > This does not happen when the field is changed to be multiValued, but I
> > > don’t want to change that at this point (and I noticed that changing
> from
> > > single valued to multivalued, then attempting to post the document
> again
> > > also results in an error related to docvalues type, but that could be
> the
> > > topic of another mail I guess). This is now blocking our long desired
> > > upgrade to Solr 5. We initially tried upgrading without docValues, but
> > > performance was completely killed because of our function query based
> > > ranking stuff, so we decide to use docValues.
> > >
> > > To me, this seems a bug. I’ve tried finding something in Solr’s JIRA,
> the
> > > exact same error is in https://issues.apache.org/jira/browse/SOLR-7495
> ,
> > > but that is a different case.
> > >
> > > I can create a JIRA issue for this of course, but first wanted to throw
> > > this at the mailing list to see if there’s any insights that can be
> > shared.
> > >
> > > Thanks a lot in advance, bye,
> > >
> > > Jaco..
> > >
> > > unexpected docvalues type NUMERIC for field 'PublicationDate' (expected
> > > one of [SORTED, SORTED_SET]). Use UninvertingReader or index with
> > docvalues.
> > > java.lang.IllegalStateException: unexpected docvalues type NUMERIC for
> > > field 'PublicationDate' (expected one of [SORTED, SORTED_SET]). Use
> > > UninvertingReader or index with docvalues.
> > > at org.apache.lucene.index.DocValues.checkField(DocValues.java:208)
> > > at org.apache.lucene.index.DocValues.getSortedSet(DocValues.java:306)
> > > at org.apache.solr.search.function.ReverseOrdFieldSource.getValues(
> > > ReverseOrdFieldSource.java:98)
> > > at org.apache.lucene.queries.function.valuesource.
> > ReciprocalFloatFunction.
> > > getValues(ReciprocalFloatFunction.java:64)
> > > at org.apache.solr.response.transform.ValueSourceAugmenter.transform(
> > > ValueSourceAugmenter.java:95)
> > > at org.apache.solr.response.DocsStreamer.next(DocsStreamer.java:160)
> > > at org.apache.solr.response.TextResponseWriter.writeDocuments(
> > > TextResponseWriter.java:246)
> > > at org.apache.solr.response.TextResponseWriter.writeVal(
> > > TextResponseWriter.java:151)
> > > at org.apache.solr.response.XMLWriter.writeResponse(
> XMLWriter.java:113)
> > > at org.apache.solr.response.XMLResponseWriter.write(
> > > XMLResponseWriter.java:39)
> > > at org.apache.solr.response.QueryResponseWriterUtil.
> writeQueryResponse(
> > > QueryResponseWriterUtil.java:52)
> > > at org.apache.solr.servlet.HttpSolrCall.writeResponse(
> > > HttpSolrCall.java:728)
> > > at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:469)
> > > at org.apache.solr.servlet.SolrDispatchFilter.doFilter(
> > > SolrDispatchFilter.java:257)
> > > at org.apache.solr.servlet.SolrDispatchFilter.doFilter(
> > > SolrDispatchFilter.java:208)
> > > at org.eclipse.jetty.servlet.ServletHandler$CachedChain.
> > > doFilter(ServletHandler.java:1652)
> > > at org.eclipse.jetty.servlet.ServletHandler.doHandle(
> > > ServletHandler.java:585)
> > > at org.eclipse.jetty.server.handler.ScopedHandler.handle(
> > > ScopedHandler.java:143)
> > > at org.eclipse.jetty.security.SecurityHandler.handle(
> > > SecurityHandler.java:577)
> > > at org.eclipse.jetty.server.session.SessionHandler.
> > > doHandle(SessionHandler.java:223)
> > > at org.eclipse.jetty.server.handler.ContextHandler.
> > > doHandle(ContextHandler.java:1127)
> > > at org.eclipse.jetty.servlet.ServletHandler.doScope(
> > > ServletHandler.java:515)
> > > at org.eclipse.jetty.server.session.SessionHandler.
> > > doScope(SessionHandler.java:185)
> > > at org.eclipse.jetty.server.handler.ContextHandler.
> > > doScope(ContextHandler.java:1061)
> > > at org.eclipse.jetty.server.handler.ScopedHandler.handle(
> > > ScopedHandler.java:141)
> > > at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(
> > > ContextHandlerCollection.java:215)
> > > at org.eclipse.jetty.server.handler.HandlerCollection.
> > > handle(HandlerCollection.java:110)
> > > at org.eclipse.jetty.server.handler.HandlerWrapper.handle(
> > > HandlerWrapper.java:97)
> > > at org.eclipse.jetty.server.Server.handle(Server.java:499)
> > > at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
> > > at org.eclipse.jetty.server.HttpConnection.onFillable(
> > > HttpConnection.java:257)
> > > at org.eclipse.jetty.io.AbstractConnection$2.run(
> > > AbstractConnection.java:540)
> > > at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(
> > > QueuedThreadPool.java:635)
> > > at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(
> > > QueuedThreadPool.java:555)
> > > at java.lang.Thread.run(Thread.java:745)
> > >
> > >
> > >
> >
>

Re: Error "unexpected docvalues type NUMERIC for field" using rord() function query on single valued int field

Posted by Pushkar Raste <pu...@gmail.com>.
Did you turn on/off docValues on a already existing field?

On Nov 16, 2016 11:51 AM, "Jaco de Vroed" <jd...@gmail.com> wrote:

> Hi,
>
> I made a typo. The Solr version number in which this error occurs is 5.5.3.
> I also checked 6.3.0, same problem.
>
> Thanks, bye,
>
> Jaco.
>
> On 16 November 2016 at 17:39, Jaco de Vroed <jd...@gmail.com> wrote:
>
> > Hello Solr users,
> >
> > I’m running into an error situation using Solr 5.3.3. The case is as
> > follows. In my schema, I have a field with a definition like this:
> >
> > <fieldType name="int" class="solr.TrieIntField" precisionStep="0"
> > positionIncrementGap="0”/>
> > ….
> > <field name="PublicationDate" type="int" indexed="true" stored="true"
> > docValues="true" />
> >
> > That field is used in function queries for boosting purposes, using the
> > rord() function. We’re coming from Solr 4, not using docValues for that
> > field, and now moving to Solr 5, using docValues. Now, this is causing a
> > problem. When doing this:
> >
> > http://localhost:8983/solr/core1/select?q=*:*&fl=ID,
> > recip(rord(PublicationDate),0.15,300,10)
> >
> > The following error is given: "*unexpected docvalues type NUMERIC for
> > field 'PublicationDate' (expected one of [SORTED, SORTED_SET]). Use
> > UninvertingReader or index with docvalues*” (full stack trace below).
> >
> > This does not happen when the field is changed to be multiValued, but I
> > don’t want to change that at this point (and I noticed that changing from
> > single valued to multivalued, then attempting to post the document again
> > also results in an error related to docvalues type, but that could be the
> > topic of another mail I guess). This is now blocking our long desired
> > upgrade to Solr 5. We initially tried upgrading without docValues, but
> > performance was completely killed because of our function query based
> > ranking stuff, so we decide to use docValues.
> >
> > To me, this seems a bug. I’ve tried finding something in Solr’s JIRA, the
> > exact same error is in https://issues.apache.org/jira/browse/SOLR-7495,
> > but that is a different case.
> >
> > I can create a JIRA issue for this of course, but first wanted to throw
> > this at the mailing list to see if there’s any insights that can be
> shared.
> >
> > Thanks a lot in advance, bye,
> >
> > Jaco..
> >
> > unexpected docvalues type NUMERIC for field 'PublicationDate' (expected
> > one of [SORTED, SORTED_SET]). Use UninvertingReader or index with
> docvalues.
> > java.lang.IllegalStateException: unexpected docvalues type NUMERIC for
> > field 'PublicationDate' (expected one of [SORTED, SORTED_SET]). Use
> > UninvertingReader or index with docvalues.
> > at org.apache.lucene.index.DocValues.checkField(DocValues.java:208)
> > at org.apache.lucene.index.DocValues.getSortedSet(DocValues.java:306)
> > at org.apache.solr.search.function.ReverseOrdFieldSource.getValues(
> > ReverseOrdFieldSource.java:98)
> > at org.apache.lucene.queries.function.valuesource.
> ReciprocalFloatFunction.
> > getValues(ReciprocalFloatFunction.java:64)
> > at org.apache.solr.response.transform.ValueSourceAugmenter.transform(
> > ValueSourceAugmenter.java:95)
> > at org.apache.solr.response.DocsStreamer.next(DocsStreamer.java:160)
> > at org.apache.solr.response.TextResponseWriter.writeDocuments(
> > TextResponseWriter.java:246)
> > at org.apache.solr.response.TextResponseWriter.writeVal(
> > TextResponseWriter.java:151)
> > at org.apache.solr.response.XMLWriter.writeResponse(XMLWriter.java:113)
> > at org.apache.solr.response.XMLResponseWriter.write(
> > XMLResponseWriter.java:39)
> > at org.apache.solr.response.QueryResponseWriterUtil.writeQueryResponse(
> > QueryResponseWriterUtil.java:52)
> > at org.apache.solr.servlet.HttpSolrCall.writeResponse(
> > HttpSolrCall.java:728)
> > at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:469)
> > at org.apache.solr.servlet.SolrDispatchFilter.doFilter(
> > SolrDispatchFilter.java:257)
> > at org.apache.solr.servlet.SolrDispatchFilter.doFilter(
> > SolrDispatchFilter.java:208)
> > at org.eclipse.jetty.servlet.ServletHandler$CachedChain.
> > doFilter(ServletHandler.java:1652)
> > at org.eclipse.jetty.servlet.ServletHandler.doHandle(
> > ServletHandler.java:585)
> > at org.eclipse.jetty.server.handler.ScopedHandler.handle(
> > ScopedHandler.java:143)
> > at org.eclipse.jetty.security.SecurityHandler.handle(
> > SecurityHandler.java:577)
> > at org.eclipse.jetty.server.session.SessionHandler.
> > doHandle(SessionHandler.java:223)
> > at org.eclipse.jetty.server.handler.ContextHandler.
> > doHandle(ContextHandler.java:1127)
> > at org.eclipse.jetty.servlet.ServletHandler.doScope(
> > ServletHandler.java:515)
> > at org.eclipse.jetty.server.session.SessionHandler.
> > doScope(SessionHandler.java:185)
> > at org.eclipse.jetty.server.handler.ContextHandler.
> > doScope(ContextHandler.java:1061)
> > at org.eclipse.jetty.server.handler.ScopedHandler.handle(
> > ScopedHandler.java:141)
> > at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(
> > ContextHandlerCollection.java:215)
> > at org.eclipse.jetty.server.handler.HandlerCollection.
> > handle(HandlerCollection.java:110)
> > at org.eclipse.jetty.server.handler.HandlerWrapper.handle(
> > HandlerWrapper.java:97)
> > at org.eclipse.jetty.server.Server.handle(Server.java:499)
> > at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
> > at org.eclipse.jetty.server.HttpConnection.onFillable(
> > HttpConnection.java:257)
> > at org.eclipse.jetty.io.AbstractConnection$2.run(
> > AbstractConnection.java:540)
> > at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(
> > QueuedThreadPool.java:635)
> > at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(
> > QueuedThreadPool.java:555)
> > at java.lang.Thread.run(Thread.java:745)
> >
> >
> >
>

Re: Error "unexpected docvalues type NUMERIC for field" using rord() function query on single valued int field

Posted by Jaco de Vroed <jd...@gmail.com>.
Hi,

I made a typo. The Solr version number in which this error occurs is 5.5.3.
I also checked 6.3.0, same problem.

Thanks, bye,

Jaco.

On 16 November 2016 at 17:39, Jaco de Vroed <jd...@gmail.com> wrote:

> Hello Solr users,
>
> I’m running into an error situation using Solr 5.3.3. The case is as
> follows. In my schema, I have a field with a definition like this:
>
> <fieldType name="int" class="solr.TrieIntField" precisionStep="0"
> positionIncrementGap="0”/>
> ….
> <field name="PublicationDate" type="int" indexed="true" stored="true"
> docValues="true" />
>
> That field is used in function queries for boosting purposes, using the
> rord() function. We’re coming from Solr 4, not using docValues for that
> field, and now moving to Solr 5, using docValues. Now, this is causing a
> problem. When doing this:
>
> http://localhost:8983/solr/core1/select?q=*:*&fl=ID,
> recip(rord(PublicationDate),0.15,300,10)
>
> The following error is given: "*unexpected docvalues type NUMERIC for
> field 'PublicationDate' (expected one of [SORTED, SORTED_SET]). Use
> UninvertingReader or index with docvalues*” (full stack trace below).
>
> This does not happen when the field is changed to be multiValued, but I
> don’t want to change that at this point (and I noticed that changing from
> single valued to multivalued, then attempting to post the document again
> also results in an error related to docvalues type, but that could be the
> topic of another mail I guess). This is now blocking our long desired
> upgrade to Solr 5. We initially tried upgrading without docValues, but
> performance was completely killed because of our function query based
> ranking stuff, so we decide to use docValues.
>
> To me, this seems a bug. I’ve tried finding something in Solr’s JIRA, the
> exact same error is in https://issues.apache.org/jira/browse/SOLR-7495,
> but that is a different case.
>
> I can create a JIRA issue for this of course, but first wanted to throw
> this at the mailing list to see if there’s any insights that can be shared.
>
> Thanks a lot in advance, bye,
>
> Jaco..
>
> unexpected docvalues type NUMERIC for field 'PublicationDate' (expected
> one of [SORTED, SORTED_SET]). Use UninvertingReader or index with docvalues.
> java.lang.IllegalStateException: unexpected docvalues type NUMERIC for
> field 'PublicationDate' (expected one of [SORTED, SORTED_SET]). Use
> UninvertingReader or index with docvalues.
> at org.apache.lucene.index.DocValues.checkField(DocValues.java:208)
> at org.apache.lucene.index.DocValues.getSortedSet(DocValues.java:306)
> at org.apache.solr.search.function.ReverseOrdFieldSource.getValues(
> ReverseOrdFieldSource.java:98)
> at org.apache.lucene.queries.function.valuesource.ReciprocalFloatFunction.
> getValues(ReciprocalFloatFunction.java:64)
> at org.apache.solr.response.transform.ValueSourceAugmenter.transform(
> ValueSourceAugmenter.java:95)
> at org.apache.solr.response.DocsStreamer.next(DocsStreamer.java:160)
> at org.apache.solr.response.TextResponseWriter.writeDocuments(
> TextResponseWriter.java:246)
> at org.apache.solr.response.TextResponseWriter.writeVal(
> TextResponseWriter.java:151)
> at org.apache.solr.response.XMLWriter.writeResponse(XMLWriter.java:113)
> at org.apache.solr.response.XMLResponseWriter.write(
> XMLResponseWriter.java:39)
> at org.apache.solr.response.QueryResponseWriterUtil.writeQueryResponse(
> QueryResponseWriterUtil.java:52)
> at org.apache.solr.servlet.HttpSolrCall.writeResponse(
> HttpSolrCall.java:728)
> at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:469)
> at org.apache.solr.servlet.SolrDispatchFilter.doFilter(
> SolrDispatchFilter.java:257)
> at org.apache.solr.servlet.SolrDispatchFilter.doFilter(
> SolrDispatchFilter.java:208)
> at org.eclipse.jetty.servlet.ServletHandler$CachedChain.
> doFilter(ServletHandler.java:1652)
> at org.eclipse.jetty.servlet.ServletHandler.doHandle(
> ServletHandler.java:585)
> at org.eclipse.jetty.server.handler.ScopedHandler.handle(
> ScopedHandler.java:143)
> at org.eclipse.jetty.security.SecurityHandler.handle(
> SecurityHandler.java:577)
> at org.eclipse.jetty.server.session.SessionHandler.
> doHandle(SessionHandler.java:223)
> at org.eclipse.jetty.server.handler.ContextHandler.
> doHandle(ContextHandler.java:1127)
> at org.eclipse.jetty.servlet.ServletHandler.doScope(
> ServletHandler.java:515)
> at org.eclipse.jetty.server.session.SessionHandler.
> doScope(SessionHandler.java:185)
> at org.eclipse.jetty.server.handler.ContextHandler.
> doScope(ContextHandler.java:1061)
> at org.eclipse.jetty.server.handler.ScopedHandler.handle(
> ScopedHandler.java:141)
> at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(
> ContextHandlerCollection.java:215)
> at org.eclipse.jetty.server.handler.HandlerCollection.
> handle(HandlerCollection.java:110)
> at org.eclipse.jetty.server.handler.HandlerWrapper.handle(
> HandlerWrapper.java:97)
> at org.eclipse.jetty.server.Server.handle(Server.java:499)
> at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
> at org.eclipse.jetty.server.HttpConnection.onFillable(
> HttpConnection.java:257)
> at org.eclipse.jetty.io.AbstractConnection$2.run(
> AbstractConnection.java:540)
> at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(
> QueuedThreadPool.java:635)
> at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(
> QueuedThreadPool.java:555)
> at java.lang.Thread.run(Thread.java:745)
>
>
>