Mubashir Kazia created NIFI-7294:
------------------------------------
Summary: Flows with SolrProcessor configured to use
SSLContextService is failing
Key: NIFI-7294
URL: https://issues.apache.org/jira/browse/NIFI-7294
Project: Apache NiFi
Issue Type: Bug
Components: Extensions
Affects Versions: 1.12.0
Reporter: Mubashir Kazia
After applying the fix in NIFI-7269, flows using SolrProcessors that are
configured to use SSLContextService are failing with exception:
{code}
java.lang.UnsupportedOperationException: null
at
org.apache.http.impl.client.InternalHttpClient$1.getSchemeRegistry(InternalHttpClient.java:239)
at
org.apache.nifi.processors.solr.SolrUtils.createSolrClient(SolrUtils.java:236)
at
org.apache.nifi.processors.solr.SolrProcessor.createSolrClient(SolrProcessor.java:147)
at
org.apache.nifi.processors.solr.SolrProcessor.onScheduled(SolrProcessor.java:77)
at sun.reflect.GeneratedMethodAccessor166.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:142)
at
org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:130)
at
org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotations(ReflectionUtils.java:75)
at
org.apache.nifi.util.ReflectionUtils.invokeMethodsWithAnnotation(ReflectionUtils.java:52)
at
org.apache.nifi.controller.StandardProcessorNode.lambda$initiateStart$4(StandardProcessorNode.java:1515)
at org.apache.nifi.engine.FlowEngine$3.call(FlowEngine.java:123)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745){code}
This is because of the new httpclient version that was pulled as a dependency
as part of the solrj upgrade in NIFI-7269. The getConnectionManager method in
HttpClient is deprecated and the way to set the schema registry has changed in
the new version of HttpClient. The problematic code is
{code}
httpClient.getConnectionManager().getSchemeRegistry().register(httpsScheme);
{code}
in function createSolrClient. There is no test coverage for this function which
is why it was not detected in the code changes for NIFI-7269.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)