[
https://issues.apache.org/jira/browse/SOLR-11904?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Kyriacos Christoudias updated SOLR-11904:
-----------------------------------------
Description:
Whenever the IndexFetcher class is called for recovery or replication the HTTP
requests are unauthenticated resulting in 401 errors:
{code:java}
2018-01-25 13:16:22.538 WARN (indexFetcher-25-thread-1) [c:myCollection
s:shard1 r:core_node3 x:myCollection_shard1_replica_t1] o.a.s.h.IndexFetcher
Master at: http://server1:8983/solr/myCollection_shard1_replica_t4/ is not
available. Index fetch failed by exception:
org.apache.solr.client.solrj.impl.HttpSolrClient$RemoteSolrException: Error
from server at http://server1:8983/solr/myCollection_shard1_replica_t4:
Expected mime type application/octet-stream but got text/html. <html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
<title>Error 401 Unauthorized request, Response code: 401</title>
</head>
<body><h2>HTTP ERROR 401</h2>
<p>Problem accessing /solr/myCollection_shard1_replica_t4/replication. Reason:
<pre> Unauthorized request, Response code: 401</pre></p>
</body>
</html>
{code}
I checked the source code and before creating a new HTTP client in IndexFetcher
it tries to get http auth user/password from initArgs but those properties are
always null, event if I set them in the replication handler (under the slave
tag).
{code:java}
<lst name="slave">
<str name="masterUrl">http://remote_host:port/solr/core_name/replication</str>
<str name="httpBasicAuthUser">username</str>
<str name="httpBasicAuthPassword">password</str>
</lst>
{code}
I downloaded the solr source code and entered the username and password
hardcoded, compiled the jar and everything was working fine. Before this I used
the logger to check the httpBasicAuthUser/httpBasicAuthPassword and whenever
IndexFetcher was called for recovery or replication these fields were null.
was:
Whenever the IndexFetcher class is called for recovery or replication the HTTP
requests are unauthenticated resulting in 401 errors:
{code:java}
2018-01-25 13:16:22.538 WARN (indexFetcher-25-thread-1) [c:myCollection
s:shard1 r:core_node3 x:myCollection_shard1_replica_t1] o.a.s.h.IndexFetcher
Master at: http://server1:8983/solr/myCollection_shard1_replica_t4/ is not
available. Index fetch failed by exception:
org.apache.solr.client.solrj.impl.HttpSolrClient$RemoteSolrException: Error
from server at http://server1:8983/solr/myCollection_shard1_replica_t4:
Expected mime type application/octet-stream but got text/html. <html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
<title>Error 401 Unauthorized request, Response code: 401</title>
</head>
<body><h2>HTTP ERROR 401</h2>
<p>Problem accessing /solr/myCollection_shard1_replica_t4/replication. Reason:
<pre> Unauthorized request, Response code: 401</pre></p>
</body>
</html>
{code}
I checked the source code and before creating a new HTTP client in IndexFetcher
it tries to get http auth user/password from initArgs but those properties are
always null, event if I set them in the replication handler (under the slave
tag).
{color:#008000}<lst{color}
{color:#7d9029}name={color}{color:#ba2121}"slave"{color}{color:#008000}>{color}
{color:#008000}<str{color}
{color:#7d9029}name={color}{color:#ba2121}"masterUrl"{color}{color:#008000}>{color}http://remote_host:port/solr/core_name/replication{color:#008000}</str>{color}
<str
{color:#7d9029}name={color}{color:#ba2121}"httpBasicAuthUser"{color}{color:#008000}>{color}username{color:#008000}</str>{color}
{color:#008000}<str{color}
{color:#7d9029}name={color}{color:#ba2121}"httpBasicAuthPassword"{color}{color:#008000}>{color}password{color:#008000}</str>{color}
{{{color:#008000}</lst>{color}}}
I downloaded the solr source code and entered the username and password
hardcoded, compiled the jar and everything was working fine. Before this I used
the logger to check the httpBasicAuthUser/httpBasicAuthPassword and whenever
IndexFetcher was called for recovery or replication these fields were null.
> IndexFetcher Http client requests are unauthenticated
> -----------------------------------------------------
>
> Key: SOLR-11904
> URL: https://issues.apache.org/jira/browse/SOLR-11904
> Project: Solr
> Issue Type: Bug
> Security Level: Public(Default Security Level. Issues are Public)
> Components: Authentication, replication (java), SolrCloud
> Affects Versions: 7.2
> Environment: Three servers on solrcloud. One collection with 2 shards
> and 3 tlog replicas on each shard.
> Reporter: Kyriacos Christoudias
> Priority: Major
>
>
>
> Whenever the IndexFetcher class is called for recovery or replication the
> HTTP requests are unauthenticated resulting in 401 errors:
>
>
> {code:java}
> 2018-01-25 13:16:22.538 WARN (indexFetcher-25-thread-1) [c:myCollection
> s:shard1 r:core_node3 x:myCollection_shard1_replica_t1] o.a.s.h.IndexFetcher
> Master at: http://server1:8983/solr/myCollection_shard1_replica_t4/ is not
> available. Index fetch failed by exception:
> org.apache.solr.client.solrj.impl.HttpSolrClient$RemoteSolrException: Error
> from server at http://server1:8983/solr/myCollection_shard1_replica_t4:
> Expected mime type application/octet-stream but got text/html. <html>
> <head>
> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
> <title>Error 401 Unauthorized request, Response code: 401</title>
> </head>
> <body><h2>HTTP ERROR 401</h2>
> <p>Problem accessing /solr/myCollection_shard1_replica_t4/replication. Reason:
> <pre> Unauthorized request, Response code: 401</pre></p>
> </body>
> </html>
> {code}
>
>
> I checked the source code and before creating a new HTTP client in
> IndexFetcher it tries to get http auth user/password from initArgs but those
> properties are always null, event if I set them in the replication handler
> (under the slave tag).
>
> {code:java}
> <lst name="slave">
> <str name="masterUrl">http://remote_host:port/solr/core_name/replication</str>
> <str name="httpBasicAuthUser">username</str>
> <str name="httpBasicAuthPassword">password</str>
> </lst>
> {code}
>
>
> I downloaded the solr source code and entered the username and password
> hardcoded, compiled the jar and everything was working fine. Before this I
> used the logger to check the httpBasicAuthUser/httpBasicAuthPassword and
> whenever IndexFetcher was called for recovery or replication these fields
> were null.
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]