Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
-
With Solr 9
Description
On trying to use PutSolrRecord or PutSolrContentStream in NiFi with solr 9, the following error is received:
2022-06-28 14:04:36,410 ERROR [Timer-Driven Process Thread-7] o.a.n.p.solr.PutSolrContentStream PutSolrContentStream[id=591b95bf-e482-39f0-6986-7aa60395fa4a] Failed to send StandardFlowFileRecord[uuid=fcfa4ec9-fc39-469e-ac1f-17ad072ed827,claim=StandardContentClaim [resourceClaim=StandardResourceClaim[id=1656411625709-1, container=default, section=1], offset=10439, length=87],offset=29,name=Collection3.csv,size=29] to Solr due to org.apache.solr.common.SolrException: Cannot connect to cluster at localhost:9898/: cluster not found/not ready; routing to failure
org.apache.solr.common.SolrException: Cannot connect to cluster at localhost:9898/: cluster not found/not ready
at org.apache.solr.common.cloud.ZkStateReader.createClusterStateWatchersAndUpdate(ZkStateReader.java:505)
at org.apache.solr.client.solrj.impl.ZkClientClusterStateProvider.getZkStateReader(ZkClientClusterStateProvider.java:177)
at org.apache.solr.client.solrj.impl.ZkClientClusterStateProvider.connect(ZkClientClusterStateProvider.java:161)
at org.apache.solr.client.solrj.impl.BaseCloudSolrClient.connect(BaseCloudSolrClient.java:349)
at org.apache.solr.client.solrj.impl.BaseCloudSolrClient.requestWithRetryOnStaleState(BaseCloudSolrClient.java:876)
at org.apache.solr.client.solrj.impl.BaseCloudSolrClient.request(BaseCloudSolrClient.java:866)
at org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:214)
at org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:231)
at org.apache.nifi.processors.solr.PutSolrContentStream$1.process(PutSolrContentStream.java:244)
at org.apache.nifi.controller.repository.StandardProcessSession.read(StandardProcessSession.java:2675)
at org.apache.nifi.controller.repository.StandardProcessSession.read(StandardProcessSession.java:2643)
at org.apache.nifi.processors.solr.PutSolrContentStream.doOnTrigger(PutSolrContentStream.java:201)
at org.apache.nifi.processors.solr.SolrProcessor.onTrigger(SolrProcessor.java:132)
at org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcessor.java:27)
at org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardProcessorNode.java:1283)
at org.apache.nifi.controller.tasks.ConnectableTask.invoke(ConnectableTask.java:214)
at org.apache.nifi.controller.scheduling.AbstractTimeBasedSchedulingAgent.lambda$doScheduleOnce$0(AbstractTimeBasedSchedulingAgent.java:63)
at org.apache.nifi.engine.FlowEngine$2.run(FlowEngine.java:110)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:833)
It looks as if due to the dependency of these processors on SolrJ and the change in the clusterstate.json, the processors dont connect anymore. The same processor with a Solr 8 works perfectly fine.