did you apply the whole patch?

It also added a null check at line 59 of ClientUtils.java.


//--------------------------------------------------------------------------
Index: client/java/solrj/src/org/apache/solr/client/solrj/util/ClientUtils.java
===================================================================
--- client/java/solrj/src/org/apache/solr/client/solrj/util/ClientUtils.java (revision 574315) +++ client/java/solrj/src/org/apache/solr/client/solrj/util/ClientUtils.java (working copy)
@@ -56,9 +56,12 @@
    */
public static Collection<ContentStream> toContentStreams( final String str, final String contentType )
   {
+    if( str == null )
+      return null;
+
+    ArrayList<ContentStream> streams = new ArrayList<ContentStream>( 1 );
     ContentStreamBase ccc = new ContentStreamBase.StringStream( str );
     ccc.setContentType( contentType );
-    ArrayList<ContentStream> streams = new ArrayList<ContentStream>();
     streams.add( ccc );
     return streams;
   }


Bill Au (JIRA) wrote:
[ https://issues.apache.org/jira/browse/SOLR-352?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12526213 ]
Bill Au commented on SOLR-352:
------------------------------

Ryan, I am gettign a NullPointerException when I tried you patch:

java.lang.NullPointerException
        at 
org.apache.solr.common.util.ContentStreamBase$StringStream.<init>(ContentStreamBase.java:137)
        at 
org.apache.solr.client.solrj.util.ClientUtils.toContentStreams(ClientUtils.java:59)
        at 
org.apache.solr.client.solrj.request.UpdateRequest.getContentStreams(UpdateRequest.java:134)
        at 
org.apache.solr.client.solrj.impl.CommonsHttpSolrServer.request(CommonsHttpSolrServer.java:113)
        at 
org.apache.solr.client.solrj.request.UpdateRequest.process(UpdateRequest.java:199)
        at 
org.apache.solr.client.solrj.impl.BaseSolrServer.commit(BaseSolrServer.java:79)
        at 
org.apache.solr.client.solrj.impl.BaseSolrServer.commit(BaseSolrServer.java:68)
        at _jsp._solrjCommit__jsp._jspService(solrjCommit.jsp:12)
        at com.caucho.jsp.JavaPage.service(JavaPage.java:60)
        at com.caucho.jsp.Page.pageservice(Page.java:570)
        at 
com.caucho.server.dispatch.PageFilterChain.doFilter(PageFilterChain.java:179)
        at 
com.caucho.server.cache.CacheFilterChain.doFilter(CacheFilterChain.java:209)
        at 
com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:173)
        at 
com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:229)
        at 
com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:274)
        at com.caucho.server.port.TcpConnection.run(TcpConnection.java:511)
        at com.caucho.util.ThreadPool.runTasks(ThreadPool.java:520)
        at com.caucho.util.ThreadPool.run(ThreadPool.java:442)
        at java.lang.Thread.run(Thread.java:595)

UpdateRequest is duplicating commit and optimize requests
---------------------------------------------------------

                Key: SOLR-352
                URL: https://issues.apache.org/jira/browse/SOLR-352
            Project: Solr
         Issue Type: Bug
         Components: clients - java
   Affects Versions: 1.3
           Reporter: Bill Au
           Assignee: Bill Au
           Priority: Minor
        Attachments: solr-352.patch, solr-352.patch


UpdateRequest current sets both query args and a update XML message in the POST 
body.  This causes Solr to do two commit/optimize for each commit/optimize 
request sent in by SolrJ.  I will be attaching a patch to remove the 
commit/optimize query args.


Reply via email to