<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Solr seach error - sorting by custom property in Alfresco Forum</title>
    <link>https://connect.hyland.com/t5/alfresco-forum/solr-seach-error-sorting-by-custom-property/m-p/132538#M35726</link>
    <description>&lt;P&gt;I noticed there is an error trying to execute search REST API with the &lt;U&gt;sort&lt;/U&gt; param containing a custom property (only if at least one result does not have this custom property).&lt;/P&gt;&lt;P&gt;Search REST API with the&amp;nbsp;&lt;EM&gt;&lt;STRONG&gt;sort&lt;/STRONG&gt;&lt;/EM&gt; argument&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;http://localhost:8180/share/proxy/alfresco/slingshot/search/?filters=&amp;amp;encodedFilters=&amp;amp;term=pdf&amp;amp;sort=custom%3Atest%7Ctrue&amp;amp;site=&amp;amp;rootNode=alfresco%3A%2F%2Fcompany%2Fhome&amp;amp;repo=true&lt;/PRE&gt;&lt;P&gt;returns 0 results ("totalRecords": &lt;STRONG&gt;3&lt;/STRONG&gt;,"totalRecordsUpper": -1)&lt;/P&gt;&lt;P&gt;Without the sort param or with the OOTB sort param value, the request is correct (3 results).&amp;nbsp; If every document has the custom property there is also no error.&lt;/P&gt;&lt;P&gt;I'm using Alfresco Community 7.1.1.2.&lt;/P&gt;&lt;P&gt;In the logs, I can see&lt;/P&gt;&lt;PRE&gt;docker-my-test-ass-1       | 2022-02-28 13:06:34.669 ERROR (qtp21257599-22) [   x:alfresco] o.a.s.s.HttpSolrCall null:java.lang.ArrayIndexOutOfBoundsException: Index 2 out of bounds for length 2
docker-my-test-ass-1       | 	at org.alfresco.solr.AlfrescoCollatableTextFieldType$TextSortFieldComparator.findBestValue(AlfrescoCollatableTextFieldType.java:182)
docker-my-test-ass-1       | 	at org.alfresco.solr.AlfrescoCollatableTextFieldType$TextSortFieldComparator.copy(AlfrescoCollatableTextFieldType.java:157)
docker-my-test-ass-1       | 	at org.apache.lucene.search.TopFieldCollector$SimpleFieldCollector$1.collect(TopFieldCollector.java:141)
docker-my-test-ass-1       | 	at org.apache.lucene.search.MultiCollector$MultiLeafCollector.collect(MultiCollector.java:174)
docker-my-test-ass-1       | 	at org.apache.solr.search.DelegatingCollector.collect(DelegatingCollector.java:72)
docker-my-test-ass-1       | 	at org.apache.lucene.search.Weight$DefaultBulkScorer.scoreAll(Weight.java:246)
docker-my-test-ass-1       | 	at org.apache.lucene.search.Weight$DefaultBulkScorer.score(Weight.java:197)
docker-my-test-ass-1       | 	at org.apache.lucene.search.BulkScorer.score(BulkScorer.java:39)
docker-my-test-ass-1       | 	at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:668)
docker-my-test-ass-1       | 	at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:472)
docker-my-test-ass-1       | 	at org.apache.solr.search.SolrIndexSearcher.buildAndRunCollectorChain(SolrIndexSearcher.java:217)
docker-my-test-ass-1       | 	at org.apache.solr.search.SolrIndexSearcher.getDocListAndSetNC(SolrIndexSearcher.java:1678)
docker-my-test-ass-1       | 	at org.apache.solr.search.SolrIndexSearcher.getDocListC(SolrIndexSearcher.java:1395)
docker-my-test-ass-1       | 	at org.apache.solr.search.SolrIndexSearcher.search(SolrIndexSearcher.java:566)
docker-my-test-ass-1       | 	at org.apache.solr.handler.component.QueryComponent.process(QueryComponent.java:545)
docker-my-test-ass-1       | 	at org.apache.solr.handler.component.AlfrescoSearchHandler.handleRequestBody(AlfrescoSearchHandler.java:376)
docker-my-test-ass-1       | 	at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:173)
docker-my-test-ass-1       | 	at org.apache.solr.core.SolrCore.execute(SolrCore.java:2477)
docker-my-test-ass-1       | 	at org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:723)
docker-my-test-ass-1       | 	at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:529)
docker-my-test-ass-1       | 	at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:361)
docker-my-test-ass-1       | 	at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:305)
docker-my-test-ass-1       | 	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1759)
docker-my-test-ass-1       | 	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:583)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
docker-my-test-ass-1       | 	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1180)
docker-my-test-ass-1       | 	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:513)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1112)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:213)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:119)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
docker-my-test-ass-1       | 	at org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:335)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.Server.handle(Server.java:539)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:333)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)
docker-my-test-ass-1       | 	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:283)
docker-my-test-ass-1       | 	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:108)
docker-my-test-ass-1       | 	at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93)
docker-my-test-ass-1       | 	at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303)
docker-my-test-ass-1       | 	at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148)
docker-my-test-ass-1       | 	at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136)
docker-my-test-ass-1       | 	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671)
docker-my-test-ass-1       | 	at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589)
docker-my-test-ass-1       | 	at java.base/java.lang.Thread.run(Thread.java:829)
docker-my-test-ass-1       |&lt;/PRE&gt;&lt;P&gt;My model:&lt;/P&gt;&lt;PRE&gt;                &amp;lt;property name="custom:test"&amp;gt;
                    &amp;lt;type&amp;gt;d:text&amp;lt;/type&amp;gt;
                    &amp;lt;mandatory&amp;gt;false&amp;lt;/mandatory&amp;gt;
                    &amp;lt;index enabled="true"&amp;gt;
	                  &amp;lt;atomic&amp;gt;true&amp;lt;/atomic&amp;gt;
	                  &amp;lt;stored&amp;gt;false&amp;lt;/stored&amp;gt; 
	                  &amp;lt;tokenised&amp;gt;false&amp;lt;/tokenised&amp;gt;
	                  &amp;lt;facetable&amp;gt;true&amp;lt;/facetable&amp;gt;
               		&amp;lt;/index&amp;gt;
                &amp;lt;/property&amp;gt;&lt;/PRE&gt;</description>
    <pubDate>Mon, 28 Feb 2022 13:28:54 GMT</pubDate>
    <dc:creator>upforsin</dc:creator>
    <dc:date>2022-02-28T13:28:54Z</dc:date>
    <item>
      <title>Solr seach error - sorting by custom property</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/solr-seach-error-sorting-by-custom-property/m-p/132538#M35726</link>
      <description>&lt;P&gt;I noticed there is an error trying to execute search REST API with the &lt;U&gt;sort&lt;/U&gt; param containing a custom property (only if at least one result does not have this custom property).&lt;/P&gt;&lt;P&gt;Search REST API with the&amp;nbsp;&lt;EM&gt;&lt;STRONG&gt;sort&lt;/STRONG&gt;&lt;/EM&gt; argument&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;http://localhost:8180/share/proxy/alfresco/slingshot/search/?filters=&amp;amp;encodedFilters=&amp;amp;term=pdf&amp;amp;sort=custom%3Atest%7Ctrue&amp;amp;site=&amp;amp;rootNode=alfresco%3A%2F%2Fcompany%2Fhome&amp;amp;repo=true&lt;/PRE&gt;&lt;P&gt;returns 0 results ("totalRecords": &lt;STRONG&gt;3&lt;/STRONG&gt;,"totalRecordsUpper": -1)&lt;/P&gt;&lt;P&gt;Without the sort param or with the OOTB sort param value, the request is correct (3 results).&amp;nbsp; If every document has the custom property there is also no error.&lt;/P&gt;&lt;P&gt;I'm using Alfresco Community 7.1.1.2.&lt;/P&gt;&lt;P&gt;In the logs, I can see&lt;/P&gt;&lt;PRE&gt;docker-my-test-ass-1       | 2022-02-28 13:06:34.669 ERROR (qtp21257599-22) [   x:alfresco] o.a.s.s.HttpSolrCall null:java.lang.ArrayIndexOutOfBoundsException: Index 2 out of bounds for length 2
docker-my-test-ass-1       | 	at org.alfresco.solr.AlfrescoCollatableTextFieldType$TextSortFieldComparator.findBestValue(AlfrescoCollatableTextFieldType.java:182)
docker-my-test-ass-1       | 	at org.alfresco.solr.AlfrescoCollatableTextFieldType$TextSortFieldComparator.copy(AlfrescoCollatableTextFieldType.java:157)
docker-my-test-ass-1       | 	at org.apache.lucene.search.TopFieldCollector$SimpleFieldCollector$1.collect(TopFieldCollector.java:141)
docker-my-test-ass-1       | 	at org.apache.lucene.search.MultiCollector$MultiLeafCollector.collect(MultiCollector.java:174)
docker-my-test-ass-1       | 	at org.apache.solr.search.DelegatingCollector.collect(DelegatingCollector.java:72)
docker-my-test-ass-1       | 	at org.apache.lucene.search.Weight$DefaultBulkScorer.scoreAll(Weight.java:246)
docker-my-test-ass-1       | 	at org.apache.lucene.search.Weight$DefaultBulkScorer.score(Weight.java:197)
docker-my-test-ass-1       | 	at org.apache.lucene.search.BulkScorer.score(BulkScorer.java:39)
docker-my-test-ass-1       | 	at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:668)
docker-my-test-ass-1       | 	at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:472)
docker-my-test-ass-1       | 	at org.apache.solr.search.SolrIndexSearcher.buildAndRunCollectorChain(SolrIndexSearcher.java:217)
docker-my-test-ass-1       | 	at org.apache.solr.search.SolrIndexSearcher.getDocListAndSetNC(SolrIndexSearcher.java:1678)
docker-my-test-ass-1       | 	at org.apache.solr.search.SolrIndexSearcher.getDocListC(SolrIndexSearcher.java:1395)
docker-my-test-ass-1       | 	at org.apache.solr.search.SolrIndexSearcher.search(SolrIndexSearcher.java:566)
docker-my-test-ass-1       | 	at org.apache.solr.handler.component.QueryComponent.process(QueryComponent.java:545)
docker-my-test-ass-1       | 	at org.apache.solr.handler.component.AlfrescoSearchHandler.handleRequestBody(AlfrescoSearchHandler.java:376)
docker-my-test-ass-1       | 	at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:173)
docker-my-test-ass-1       | 	at org.apache.solr.core.SolrCore.execute(SolrCore.java:2477)
docker-my-test-ass-1       | 	at org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:723)
docker-my-test-ass-1       | 	at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:529)
docker-my-test-ass-1       | 	at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:361)
docker-my-test-ass-1       | 	at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:305)
docker-my-test-ass-1       | 	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1759)
docker-my-test-ass-1       | 	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:583)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
docker-my-test-ass-1       | 	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1180)
docker-my-test-ass-1       | 	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:513)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1112)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:213)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:119)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
docker-my-test-ass-1       | 	at org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:335)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.Server.handle(Server.java:539)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:333)
docker-my-test-ass-1       | 	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)
docker-my-test-ass-1       | 	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:283)
docker-my-test-ass-1       | 	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:108)
docker-my-test-ass-1       | 	at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93)
docker-my-test-ass-1       | 	at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303)
docker-my-test-ass-1       | 	at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148)
docker-my-test-ass-1       | 	at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136)
docker-my-test-ass-1       | 	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671)
docker-my-test-ass-1       | 	at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589)
docker-my-test-ass-1       | 	at java.base/java.lang.Thread.run(Thread.java:829)
docker-my-test-ass-1       |&lt;/PRE&gt;&lt;P&gt;My model:&lt;/P&gt;&lt;PRE&gt;                &amp;lt;property name="custom:test"&amp;gt;
                    &amp;lt;type&amp;gt;d:text&amp;lt;/type&amp;gt;
                    &amp;lt;mandatory&amp;gt;false&amp;lt;/mandatory&amp;gt;
                    &amp;lt;index enabled="true"&amp;gt;
	                  &amp;lt;atomic&amp;gt;true&amp;lt;/atomic&amp;gt;
	                  &amp;lt;stored&amp;gt;false&amp;lt;/stored&amp;gt; 
	                  &amp;lt;tokenised&amp;gt;false&amp;lt;/tokenised&amp;gt;
	                  &amp;lt;facetable&amp;gt;true&amp;lt;/facetable&amp;gt;
               		&amp;lt;/index&amp;gt;
                &amp;lt;/property&amp;gt;&lt;/PRE&gt;</description>
      <pubDate>Mon, 28 Feb 2022 13:28:54 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/solr-seach-error-sorting-by-custom-property/m-p/132538#M35726</guid>
      <dc:creator>upforsin</dc:creator>
      <dc:date>2022-02-28T13:28:54Z</dc:date>
    </item>
    <item>
      <title>Re: Solr seach error - sorting by custom property</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/solr-seach-error-sorting-by-custom-property/m-p/132539#M35727</link>
      <description>&lt;P&gt;Did you also validated the Search REST API, whether its failing for the same case:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://docs.alfresco.com/content-services/community/develop/rest-api-guide/searching/#searching-by-content-type-and-controlling-paging-and-sorting" target="_blank" rel="nofollow noopener noreferrer"&gt;https://docs.alfresco.com/content-services/community/develop/rest-api-guide/searching/#searching-by-content-type-and-controlling-paging-and-sorting&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 04 Mar 2022 22:54:21 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/solr-seach-error-sorting-by-custom-property/m-p/132539#M35727</guid>
      <dc:creator>abhinavmishra14</dc:creator>
      <dc:date>2022-03-04T22:54:21Z</dc:date>
    </item>
    <item>
      <title>Re: Solr seach error - sorting by custom property</title>
      <link>https://connect.hyland.com/t5/alfresco-forum/solr-seach-error-sorting-by-custom-property/m-p/132540#M35728</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;A href="https://migration33.stage.lithium.com/t5/user/viewprofilepage/user-id/74498"&gt;@abhinavmishra14&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;to be honest I do not think that URL in the docs is relevant. Wihout the sort argument it works. This URL is not created by myself, it is copied from the Browser Dev Tools while being on Alfresco Share Advanced Search after clicking "sort by" button.&lt;/P&gt;&lt;P&gt;It seems that in 7.x there are some serious bugs with the SOLR. Another one reported&amp;nbsp;&lt;A href="https://migration33.stage.lithium.com/t5/user/viewprofilepage/user-id/5487"&gt;@angelborroy&lt;/A&gt;&amp;nbsp;(&lt;A href="https://alfresco.atlassian.net/browse/MNT-22926" target="_self" rel="nofollow noopener noreferrer"&gt;MNT-22926&lt;/A&gt;)&lt;/P&gt;&lt;P&gt;And here is &lt;A href="https://hub.alfresco.com/t5/alfresco-content-services-forum/solr-error-jsonobject-quot-min-quot-is-not-a-long/m-p/311575" target="_self" rel="nofollow noopener noreferrer"&gt;another one&lt;/A&gt;:&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 23 Mar 2022 11:14:58 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/alfresco-forum/solr-seach-error-sorting-by-custom-property/m-p/132540#M35728</guid>
      <dc:creator>upforsin</dc:creator>
      <dc:date>2022-03-23T11:14:58Z</dc:date>
    </item>
  </channel>
</rss>

