Search code examples
solrsolrcloudsolr-operator

Solr Cloud in Kubernetes Indexing error - HttpSolrCall Unable to write response


I am trying to do an Indexing with Solr Cloud running in Kubernetes cluster. I defined a Data Import Handler and I can see the configuration in Solr UI.

The Data Import Handler will allow me to trigger a SQL query and fetch the Polygon data for building the index.

<dataSource
        type="JdbcDataSource" processor="XPathEntityProcessor"
        driver="oracle.jdbc.driver.OracleDriver" ...... />
  <document>

        <entity name="pcode" pk="PC" transformer="ClobTransformer"
                query="select PCA as PC, GEOM  as WPOLYGON,
                SBJ,PD,CD
                from SCPCA
                where SBC is not null>
                      <field column="PC" name="pCode" />
                      <field column="WPOLYGON" name="wpolygon" clob="true"/>
                      <field column="SBJ" name="sbjcode" clob="true"/>
                      <field column="PD" name="portid"/>
                      <field column="CD" name="cancid"/>
       </entity>
  </document>
  </dataConfig>

After triggering the index via UI.It runs for around 1 minute and fails with following errors in the console

qtp1046545660-14) [c:sba s:shard1 r:core_node6 x:sba_shard1_replica_n4] o.a.s.u.p.LogUpdateProcessorFactory [sba_shard1_replica_n4]  webapp=/solr path=/dataimport params={core=sba&debug=true&optimize=false&indent=on&commit=true&name=dataimport&clean=true&wt=json&command=full-import&_=164589234356779&verbose=true}{deleteByQuery=*:*,commit=} 0 70343
2022-02-26 16:30:38.092 INFO  (qtp10465423460-14) [c:sba s:shard1 r:core_node6 x:sba_shard1_replica_n4] o.a.s.s.HttpSolrCall Unable to write response, client closed connection or we are shutting down => org.eclipse.jetty.io.EofException: Reset cancel_stream_error
at org.eclipse.jetty.http2.server.HTTP2ServerConnectionFactory$HTTPServerSessionListener.onReset(HTTP2ServerConnectionFactory.java:159)
org.eclipse.jetty.io.EofException: Reset cancel_stream_error

I am using Solr Cloud 8.9 with Solr operator 0.5.0 and I checked jetty config and it have an idle timeout of 120000.

Any one faced similar issues and fixed it?


Solution

  • Jetty's EofException almost always means one specific thing. The client closed the connection before Solr could respond, so when Solr finally finished processing and tried to have Jetty send the response, there was nowhere to send it -- the connection was gone.

    In my case I was doing a full data import to Solr and it failed with this HttpSolrCall Unable to write response EofException . This was happening due to issues with my managedSchema / schema.xml . I forgot to add all columns correctly in the schema.xml which caused the Indexing to fail with EofException. After correcting my schema.xml it worked fine.

    It is bit confusing error as why there is an EofException for wrong schema. However, if it is Solr always check the schema.xml / managedSchema for any discrepancies.