The raw java API is not supported. You'll need to use Streaming Expressions which has a lot of documentation.
Joel Bernstein http://joelsolr.blogspot.com/ On Wed, Sep 29, 2021 at 3:55 PM Joel Bernstein <[email protected]> wrote: > Not sure if you saw my response. It looks like your request didn't have a > collection: > > search(<collection>, > qt="/export",q="*:*",fl="display_material_number,display_pno,key_brand",sort="display_pno > asc",fq="searchmv_sales_org:(2106 OR 7950 OR 0)", > fq="-key_product_status:(INTERNAL OR WITHDRAWN)", > fq="-facet_country_exclusions:US") > > Joel Bernstein > http://joelsolr.blogspot.com/ > > > On Wed, Sep 29, 2021 at 11:34 AM Webster Homer < > [email protected]> wrote: > >> Is the streaming API still supported? >> Or does it just not support sharded solr cloud collections? >> >> I tried following both of these posts: >> If I follow this post >> http://joelsolr.blogspot.com/2015/04/the-streaming-api-solrjio-basics.html >> I get a null pointer doing exactly what was done here >> >> >> If I follow this post >> https://lucidworks.com/post/streaming-expressions-in-solrj/ Nothing >> happens >> >> Streaming could be useful if it worked and was properly documented. >> >> >> -----Original Message----- >> From: Webster Homer <[email protected]> >> Sent: Tuesday, September 28, 2021 4:55 PM >> To: [email protected] >> Subject: Null pointer exception in simple streaming call >> >> [WARNING - EXTERNAL EMAIL] Do not open links or attachments unless you >> recognize the sender of this email. If you are unsure please click the >> button "Report suspicious email" >> >> >> I am trying to use the streaming API to output a file from one of our >> solrcloud collections. It seems like this should be simple but it keeps >> throwing an exception. >> I tried to use the Solrconsole UI and got farther than with Java or CURL. >> In the console if I give it a query with a limited result set it worked >> alright, but times out with a larger set. >> >> I am running Solr 7.7.3 is solrcloud mode. The collection has 2 shards >> with 2 replicas per shard. Normally we just use the normal solr search, but >> I needed to dump out all the rows with some filtering applied This is my >> CURL command >> >> curl --data-urlencode >> 'expr=search(qt="/export",q="*:*",fl="display_material_number,display_pno,key_brand",sort="display_pno >> asc",fq="searchmv_sales_org:(2106 OR 7950 OR 0)", >> fq="-key_product_status:(INTERNAL OR WITHDRAWN)", >> fq="-facet_country_exclusions:US") >> ' http://localhost:8983/solr/sial-catalog-material/stream >> >> >> This is the response: >> ./stream_materials.sh >> { >> "result-set":{ >> "docs":[{ >> "EXCEPTION":null, >> "EOF":true}]}} >> >> When I created a Java program it gave me this stack trace: >> Exception in thread "main" java.io.IOException: >> java.lang.NullPointerException >> at >> org.apache.solr.client.solrj.io.stream.CloudSolrStream.constructStreams(CloudSolrStream.java:389) >> at >> org.apache.solr.client.solrj.io.stream.CloudSolrStream.open(CloudSolrStream.java:278) >> at >> com.sial.solrcloud.streams.SialStreamingMaterials.main(SialStreamingMaterials.java:46) >> Caused by: java.lang.NullPointerException >> at >> org.apache.solr.client.solrj.io.stream.TupleStream.getShards(TupleStream.java:133) >> at >> org.apache.solr.client.solrj.io.stream.CloudSolrStream.constructStreams(CloudSolrStream.java:374) >> ... 2 more >> >> TupleStream.java line number 133 is: >> CloudSolrClient cloudSolrClient = >> streamContext.getSolrClientCache().getCloudSolrClient(zkHost); >> >> In the Solr Console if I change the q parameter to be >> q="search_material:T1503*" I get some results so I think the expression is >> close to what I want. I just want all the rows that satisfy the filter >> queries. >> >> I don't even know where to look. Any help would be welcome. >> >> >> >> >> >> This message and any attachment are confidential and may be privileged or >> otherwise protected from disclosure. If you are not the intended recipient, >> you must not copy this message or attachment or disclose the contents to >> any other person. If you have received this transmission in error, please >> notify the sender immediately and delete the message and any attachment >> from your system. Merck KGaA, Darmstadt, Germany and any of its >> subsidiaries do not accept liability for any omissions or errors in this >> message which may arise as a result of E-Mail-transmission or for damages >> resulting from any unauthorized changes of the content of this message and >> any attachment thereto. Merck KGaA, Darmstadt, Germany and any of its >> subsidiaries do not guarantee that this message is free of viruses and does >> not accept liability for any damages caused by any virus transmitted >> therewith. >> >> >> >> Click merckgroup.com/disclaimer< >> https://www.merckgroup.com/en/legal-disclaimer/mail-disclaimer.html> to >> access the German, French, Spanish, Portuguese, Turkish, Polish and Slovak >> versions of this disclaimer. >> >> >> >> Please find our Privacy Statement information by clicking here >> merckgroup.com/en/privacy-statement.html< >> https://www.merckgroup.com/en/privacy-statement.html> >> >> >> This message and any attachment are confidential and may be privileged or >> otherwise protected from disclosure. If you are not the intended recipient, >> you must not copy this message or attachment or disclose the contents to >> any other person. If you have received this transmission in error, please >> notify the sender immediately and delete the message and any attachment >> from your system. Merck KGaA, Darmstadt, Germany and any of its >> subsidiaries do not accept liability for any omissions or errors in this >> message which may arise as a result of E-Mail-transmission or for damages >> resulting from any unauthorized changes of the content of this message and >> any attachment thereto. Merck KGaA, Darmstadt, Germany and any of its >> subsidiaries do not guarantee that this message is free of viruses and does >> not accept liability for any damages caused by any virus transmitted >> therewith. >> >> >> >> Click merckgroup.com/disclaimer< >> https://www.merckgroup.com/en/legal-disclaimer/mail-disclaimer.html> to >> access the German, French, Spanish, Portuguese, Turkish, Polish and Slovak >> versions of this disclaimer. >> >> >> >> Please find our Privacy Statement information by clicking here >> merckgroup.com/en/privacy-statement.html< >> https://www.merckgroup.com/en/privacy-statement.html> >> >
