[
https://issues.apache.org/jira/browse/CONNECTORS-1694?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17482923#comment-17482923
]
Markus Schuch commented on CONNECTORS-1694:
-------------------------------------------
I can reproduce this:
I set up Solr 8.11.1 with basic auth like described in
[https://solr.apache.org/guide/8_11/basic-authentication-plugin.html]
Then configured a single server solr output connection with basic auth
credentials and extracting request handler. The connection is reported to work
by the connection check. But when ingesting documents, the output connector
fails with
{code:java}
WARN 2022-01-27T08:17:34,675 (Worker thread '29') - Service interruption
reported for job 1643267680083 connection 'files': IO exception during indexing
file:/D:/tmp/AndEngine%20for%20Android%20Game%20Development%20Cookbook%20%5BeBook%5D.pdf:
null
WARN 2022-01-27T08:17:35,431 (Worker thread '27') - IO exception during
indexing
file:/D:/tmp/(eBook)%20-%20Programming%20-%20Handbook%20of%20applied%20Cryptography.pdf:
null
org.apache.http.client.ClientProtocolException: null
at
org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:187)
~[httpclient-4.5.8.jar:4.5.8]
at
org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
~[httpclient-4.5.8.jar:4.5.8]
at
org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:56)
~[httpclient-4.5.8.jar:4.5.8]
at
org.apache.solr.client.solrj.impl.HttpSolrClient.executeMethod(HttpSolrClient.java:564)
~[?:?]
at
org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:265)
~[?:?]
at
org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:248)
~[?:?]
at org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:211)
~[?:?]
at org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:228)
~[?:?]
at
org.apache.manifoldcf.agents.output.solr.HttpPoster$IngestThread.run(HttpPoster.java:1010)
~[?:?]
Caused by: org.apache.http.client.NonRepeatableRequestException: Cannot retry
request with a non-repeatable request entity.
at
org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:225)
~[httpclient-4.5.8.jar:4.5.8]
at
org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:186)
~[httpclient-4.5.8.jar:4.5.8]
at
org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
~[httpclient-4.5.8.jar:4.5.8]
at
org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
~[httpclient-4.5.8.jar:4.5.8]
... 8 more {code}
On solr side an ERROR is logged:
{code:java}
ERROR SolrRequestParsers Couldn't get multipart parts in order to delete
them{code}
> Basic auth for Solr output connector not working for POST/DELETE requests
> -------------------------------------------------------------------------
>
> Key: CONNECTORS-1694
> URL: https://issues.apache.org/jira/browse/CONNECTORS-1694
> Project: ManifoldCF
> Issue Type: Bug
> Reporter: Markus Schuch
> Priority: Major
> Attachments: 113.patch
>
>
> From https://github.com/apache/manifoldcf/pull/113
> {quote}The underlying Apache HTTP client uses universal basic auth for the
> first request, then caches the resp. auth-related data and switches to
> pre-emptive basic auth for subsequent requests that target the same host.
> This seems to cause problems requests that alter state at Solr (POST/DELETE).
> This situation can be easily remedied by enforcing pre-emptive basic auth for
> the first request.
> {quote}
--
This message was sent by Atlassian Jira
(v8.20.1#820001)