[ 
https://issues.apache.org/jira/browse/SOLR-11598?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16590974#comment-16590974
 ] 

Steve Rowe commented on SOLR-11598:
-----------------------------------

Reproducing failure from 
[https://jenkins.thetaphi.de/job/Lucene-Solr-master-Linux/22732/]:

{noformat}
Checking out Revision 4368ad72d2ccbb40583fa7d2e55464c47e341f8b 
(refs/remotes/origin/master)
[...]
   [junit4]   2> NOTE: reproduce with: ant test  -Dtestcase=TestExportWriter 
-Dtests.method=testMultipleSorts -Dtests.seed=FBDB2884CBB0889D 
-Dtests.multiplier=3 -Dtests.slow=true -Dtests.locale=fi 
-Dtests.timezone=Antarctica/Troll -Dtests.asserts=true 
-Dtests.file.encoding=UTF-8
   [junit4] FAILURE 9.95s J2 | TestExportWriter.testMultipleSorts <<<
   [junit4]    > Throwable #1: java.lang.AssertionError
   [junit4]    >        at 
__randomizedtesting.SeedInfo.seed([FBDB2884CBB0889D:D2E9E06DE2A595BB]:0)
   [junit4]    >        at 
org.apache.solr.handler.export.TestExportWriter.validateSort(TestExportWriter.java:697)
   [junit4]    >        at 
org.apache.solr.handler.export.TestExportWriter.testMultipleSorts(TestExportWriter.java:637)
   [junit4]    >        at java.lang.Thread.run(Thread.java:748)
[...]
   [junit4]   2> NOTE: test params are: codec=Asserting(Lucene80): 
{id=PostingsFormat(name=LuceneVarGapDocFreqInterval), field1_s_dv=FSTOrd50}, 
docValues:{number_i_p=DocValuesFormat(name=Asserting), 
field1_i_p=DocValuesFormat(name=Asserting), 
number_ls_ni_p=DocValuesFormat(name=Asserting), 
number_ls_t=DocValuesFormat(name=Asserting), 
number_ds_p=DocValuesFormat(name=Asserting), 
number_ds_t=DocValuesFormat(name=Asserting), 
booleandv=DocValuesFormat(name=Asserting), 
number_i_t=DocValuesFormat(name=Asserting), 
field2_i_p=DocValuesFormat(name=Lucene70), 
number_is_ni_p=DocValuesFormat(name=Lucene70), 
number_is_ni_t=DocValuesFormat(name=Lucene70), 
longdv=DocValuesFormat(name=Lucene70), 
number_ls_p=DocValuesFormat(name=Asserting), id=DocValuesFormat(name=Lucene70), 
field1_s_dv=DocValuesFormat(name=Lucene70), 
number_dts_p=DocValuesFormat(name=Asserting), 
stringdv=DocValuesFormat(name=Lucene70), 
longdv_m=DocValuesFormat(name=Asserting), 
number_ls_ni_t=DocValuesFormat(name=Asserting), 
number_is_t=DocValuesFormat(name=Direct), 
number_dts_t=DocValuesFormat(name=Asserting), 
doubledv_m=DocValuesFormat(name=Direct), 
number_is_p=DocValuesFormat(name=Direct), 
doubledv=DocValuesFormat(name=Lucene70), 
field4_i_p=DocValuesFormat(name=Direct), 
number_dts_ni_t=DocValuesFormat(name=Asserting), 
field3_i_p=DocValuesFormat(name=Lucene70), intdv=DocValuesFormat(name=Direct), 
floatdv=DocValuesFormat(name=Lucene70), 
number_fs_p=DocValuesFormat(name=Lucene70), 
number_f_t=DocValuesFormat(name=Direct), 
field6_i_p=DocValuesFormat(name=Lucene70), 
number_l_p=DocValuesFormat(name=Lucene70), 
number_dt_p=DocValuesFormat(name=Lucene70), 
number_f_p=DocValuesFormat(name=Direct), 
number_d_t=DocValuesFormat(name=Lucene70), 
number_dt_t=DocValuesFormat(name=Lucene70), 
int_is_t=DocValuesFormat(name=Lucene70), 
number_dts_ni_p=DocValuesFormat(name=Asserting), 
number_fs_t=DocValuesFormat(name=Lucene70), 
datedv_m=DocValuesFormat(name=Asserting), 
int_is_p=DocValuesFormat(name=Lucene70), 
number_l_t=DocValuesFormat(name=Lucene70), 
number_ds_ni_t=DocValuesFormat(name=Lucene70), 
stringdv_m=DocValuesFormat(name=Direct), 
intdv_m=DocValuesFormat(name=Lucene70), 
number_ds_ni_p=DocValuesFormat(name=Lucene70), 
number_d_ni_p=DocValuesFormat(name=Direct), 
field5_i_p=DocValuesFormat(name=Asserting), 
number_fs_ni_p=DocValuesFormat(name=Lucene70), 
number_d_ni_t=DocValuesFormat(name=Direct), 
number_fs_ni_t=DocValuesFormat(name=Lucene70), 
field8_i_p=DocValuesFormat(name=Direct), 
datedv=DocValuesFormat(name=Asserting), 
number_f_ni_t=DocValuesFormat(name=Lucene70), 
floatdv_m=DocValuesFormat(name=Asserting), 
number_l_ni_t=DocValuesFormat(name=Direct), 
number_i_ni_p=DocValuesFormat(name=Lucene70), 
number_dt_ni_p=DocValuesFormat(name=Direct), 
number_f_ni_p=DocValuesFormat(name=Lucene70), 
number_i_ni_t=DocValuesFormat(name=Lucene70), 
number_dt_ni_t=DocValuesFormat(name=Direct), 
number_d_p=DocValuesFormat(name=Lucene70), 
field3_l_p=DocValuesFormat(name=Lucene70), 
field7_i_p=DocValuesFormat(name=Lucene70), 
number_l_ni_p=DocValuesFormat(name=Direct)}, maxPointsInLeafNode=740, 
maxMBSortInHeap=7.377656711554688, 
sim=Asserting(org.apache.lucene.search.similarities.AssertingSimilarity@2e7b4e25),
 locale=fi, timezone=Antarctica/Troll
   [junit4]   2> NOTE: Linux 4.15.0-32-generic amd64/Oracle Corporation 
1.8.0_172 (64-bit)/cpus=8,threads=1,free=248750568,total=518979584
{noformat}

> ExportWriter should support sorting on more than 4 sort fields
> --------------------------------------------------------------
>
>                 Key: SOLR-11598
>                 URL: https://issues.apache.org/jira/browse/SOLR-11598
>             Project: Solr
>          Issue Type: Improvement
>      Security Level: Public(Default Security Level. Issues are Public) 
>          Components: streaming expressions
>            Reporter: Aroop
>            Assignee: Varun Thacker
>            Priority: Major
>              Labels: patch
>             Fix For: master (8.0), 7.5
>
>         Attachments: SOLR-11598-6_6-streamtests, SOLR-11598-6_6.patch, 
> SOLR-11598-master.patch, SOLR-11598.patch, SOLR-11598.patch, 
> SOLR-11598.patch, SOLR-11598.patch, SOLR-11598.patch, SOLR-11598.patch, 
> SOLR-11598.patch, SOLR-11598.patch, SOLR-11598.patch, SOLR-11598.patch, 
> SOLR-11598.patch, streaming-export reports.xlsx
>
>
> I am a user of Streaming and I am currently trying to use rollups on an 10 
> dimensional document.
> I am unable to get correct results on this query as I am bounded by the 
> limitation of the export handler which supports only 4 sort fields.
> I do not see why this needs to be the case, as it could very well be 10 or 20.
> My current needs would be satisfied with 10, but one would want to ask why 
> can't it be any decent integer n, beyond which we know performance degrades, 
> but even then it should be caveat emptor.
> [~varunthacker] 
> Code Link:
> https://github.com/apache/lucene-solr/blob/19db1df81a18e6eb2cce5be973bf2305d606a9f8/solr/core/src/java/org/apache/solr/handler/ExportWriter.java#L455
> Error
> null:java.io.IOException: A max of 4 sorts can be specified
>       at 
> org.apache.solr.handler.ExportWriter.getSortDoc(ExportWriter.java:452)
>       at org.apache.solr.handler.ExportWriter.writeDocs(ExportWriter.java:228)
>       at 
> org.apache.solr.handler.ExportWriter.lambda$null$1(ExportWriter.java:219)
>       at 
> org.apache.solr.common.util.JavaBinCodec.writeIterator(JavaBinCodec.java:664)
>       at 
> org.apache.solr.common.util.JavaBinCodec.writeKnownType(JavaBinCodec.java:333)
>       at 
> org.apache.solr.common.util.JavaBinCodec.writeVal(JavaBinCodec.java:223)
>       at org.apache.solr.common.util.JavaBinCodec$1.put(JavaBinCodec.java:394)
>       at 
> org.apache.solr.handler.ExportWriter.lambda$null$2(ExportWriter.java:219)
>       at 
> org.apache.solr.common.util.JavaBinCodec.writeMap(JavaBinCodec.java:437)
>       at 
> org.apache.solr.common.util.JavaBinCodec.writeKnownType(JavaBinCodec.java:354)
>       at 
> org.apache.solr.common.util.JavaBinCodec.writeVal(JavaBinCodec.java:223)
>       at org.apache.solr.common.util.JavaBinCodec$1.put(JavaBinCodec.java:394)
>       at 
> org.apache.solr.handler.ExportWriter.lambda$write$3(ExportWriter.java:217)
>       at 
> org.apache.solr.common.util.JavaBinCodec.writeMap(JavaBinCodec.java:437)
>       at org.apache.solr.handler.ExportWriter.write(ExportWriter.java:215)
>       at org.apache.solr.core.SolrCore$3.write(SolrCore.java:2601)
>       at 
> org.apache.solr.response.QueryResponseWriterUtil.writeQueryResponse(QueryResponseWriterUtil.java:49)
>       at 
> org.apache.solr.servlet.HttpSolrCall.writeResponse(HttpSolrCall.java:809)
>       at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:538)
>       at 
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:361)
>       at 
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:305)
>       at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1691)
>       at 
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:582)
>       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:1180)
>       at 
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:512)
>       at 
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
>       at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1112)
>       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.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:335)
>       at 
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
>       at org.eclipse.jetty.server.Server.handle(Server.java:534)
>       at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:320)
>       at 
> org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)
>       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.executeProduceConsume(ExecuteProduceConsume.java:303)
>       at 
> org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148)
>       at 
> org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136)
>       at 
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671)
>       at 
> org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589)
>       at java.lang.Thread.run(Thread.java:745)



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to